![](/img/trans.png)
[英]Colour User Defined selected cells and add text to last cell in selection in Excel VBA
[英]EXCEL VBA change selected cells to colour
我正在嘗試編寫VB的代碼,該代碼將查看運行iff語句,然后如果為true,則更改為true的行的顏色。 目前,我只能更改一個單元格的顏色。
VB看起來像這樣。
Sub Blue()
Set A = Sheets("Analysis")
Dim d
Dim j
d = 1
j = 1
Do Until IsEmpty(A.Range("B" & j))
If (A.Range("F" & j) <> A.Range("G" & j)) Or (A.Range("H" & j) <> A.Range("I" & j)) Then
d = d + 1
A.Range("B" & j).Interior.ColorIndex = 28
End If
j = j + 1
Loop
End Sub
這樣可行。 當我嘗試更改此值以突出顯示表中的單元格選擇時。 我收到1004運行時錯誤Sub Blue()
Set A = Sheets("Analysis")
Dim d
Dim j
d = 1
j = 1
Do Until IsEmpty(A.Range("B" & j))
If (A.Range("F" & j) <> A.Range("G" & j)) Or (A.Range("H" & j) <> A.Range("I" & j)) Then
d = d + 1
A.Range("A:U" & j).Interior.ColorIndex = 28
End If
j = j + 1
Loop
End Sub
我花了很多時間在互聯網上尋找並找不到任何答案,為什么這不起作用。 任何幫助將不勝感激。
我正在使用VB,因為這將是VB很大一部分的一部分。
要將列A的顏色更改為U,請使用以下方法:
A.Range("A" & j & ":U" & j).Interior.ColorIndex = 28
您的行中缺少A列的行。
要更改整個行的顏色,請使用以下命令:
A.Range("B" & j).EntireRow.Interior.ColorIndex = 28
我沒有通過任何PC進行測試,但是您可以嘗試
A.Range("A:U").rows(j).Interior.ColorIndex = 28
一個以上單元格的范圍應采用“ A1:U1”格式,您的代碼等於“ A:U1”。
您可以這樣編寫:
A.Range("A" & j & ":U" & j).Interior.ColorIndex = 28
我喜歡下面的代碼:
A.Range(Cells(j, 1), Cells(j, 21)).Interior.ColorIndex = 28
祝好運
喬根·昂格(Jorgen Unger)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.