簡體   English   中英

Visual Basic Excel For多個單元格中的循環如何使用范圍內的計數器(“”)

[英]Visual Basic Excel For Loop In Multiple Cells How To Use The Counter In The Range(“”)

這就是我所擁有的,因此H后面必須跟單元格的編號,我想在這里使用計數器i,但它不起作用。 我究竟做錯了什么? :)

For i = 60 To 63

    Range("Hi").AddComment
    Range("Hi").Comment.Visible = False
    Range("Hi").Comment.Text Text:=""
    i = i + 1
    Range("Hi").Select
    i = i - 1
    Next
End Sub

用這個:

Range("H" & i)

在您編寫時, "Hi"不使用變量i,因為您將其放在了引號中。

您需要這樣做:

For i = 60 To 63

    Range("H" & i).AddComment
    Range("H" & i).Comment.Visible = False
    Range("H" & i).Comment.Text Text:=""
    i = i + 1
    Range("H" & i).Select
    i = i - 1
    Next
End Sub

&運算符在VBA中進行串聯。

您應該這樣格式化:

    For i = 60 To 63

        Range("H" & i).AddComment
        Range("H" & i).Comment.Visible = False
        Range("H" & i).Comment.Text Text:=""
        i = i + 1
        Range("H" & i).Select
        i = i - 1
    Next i
End Sub

原因是字母H是一個字符,而i是一個變量。 像Excel這樣的雙引號"Hi"任何內容都將讀為一串文本。

當Excel讀取引號之外的單詞或字母i ,它將假定它是一個變量。 &字符將兩者作為文本連接在一起。

這意味着每次循環運行時,Excel都將其讀取為"H" and i ,並將其轉換為“ H1”,“ H2”,“ H3”,...。“ H60”,並將其輸入到Range()就像您正在尋找。

這樣對您會更好嗎? 當i的值開始進入循環代碼時,我總是遇到問題

For i = 60 To 63      
    With Range("H" & i)
        .Select 
        .AddComment     
        .Comment.Visible = False     
        .Comment.Text Text:=""  
    end with
Next 
End Sub 

暫無
暫無

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

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