簡體   English   中英

每個單元格的 Excel 不起作用?

[英]Excel For Each Cell Not Working?

我試圖讓代碼循環遍歷范圍。 例如,它應該獲取單元格 M53 中的值,使用它,然后運行代碼,並對單元格 M54 中的值執行相同的操作。 第一次迭代有效,但隨后它似乎一直在單元格 M53 中繼續運行。

我正在努力解決這個問題。

Sub TestMacro1()

Dim n As Integer
Dim Strike As Range

Set Strike = Range("M53:M54")
n = 1
Application.ScreenUpdating = False

For Each cell In Strike
    cell.Select
    Selection.Copy
    Range("E19").PasteSpecial xlPasteValues

    If Checker = True Then
        Range("E26").Select
        Selection.Copy
        Range("N53").Offset(n).PasteSpecial xlPasteValues
        n = n + 1
    End If
Next cell
Application.ScreenUpdating = True

End Sub

Checker 函數定義為:

Function Checker() As Boolean

Dim tmp
Dim c As Object

tmp = False
ActiveSheet.Calculate
ActiveSheet.Calculate

With ActiveSheet.UsedRange
    Set c = .Find("request", LookIn:=xlValues)
    If Not c Is Nothing Then
        Application.OnTime Now + TimeValue("00:00:06"), "TestMacro1"
        tmp = False
    Else
        tmp = True
    End If
End With

Checker = tmp

End Function

請試試這個。

Sub TestMacro2()
    Sub TestMacro2()
Dim cell As Range
Dim Strike As Range
Set Strike = Range("M53:M54")

Application.ScreenUpdating = False
For Each cell In Strike
    cell.Copy
    Range("E19").PasteSpecial xlPasteValues 'fixed range

        If Checker = True Then
            ActiveSheet.Calculate
            Range("E26").Copy
            cell.Offset(0, 1).PasteSpecial xlPasteValues
        End If
Next cell
Application.ScreenUpdating = True

結束子

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM