如何讓Excel根據行號突出顯示行。例如,假設我想突出顯示第6,10,150,201行。謝謝。使用VBA選擇並突出顯示Excel行
回答
下面是根據莫特的.EntireRow.Interior.ColorIndex
這不限制你輸入行號,但給用戶在運行時選擇行的靈活性。
Option Explicit
Sub Sample()
Dim Ret As Range
On Error Resume Next
Set Ret = Application.InputBox("Please select the rows that you would like to color", "Color Rows", Type:=8)
On Error GoTo 0
If Not Ret Is Nothing Then Ret.EntireRow.Interior.ColorIndex = 6
End Sub
隨訪
有沒有寫宏來讀取從列表中的行號和突出行的方法嗎?
是的,有一種方法。比方說,在單元格A1至A10列表中,那麼你可以使用此代碼
Option Explicit
Sub Sample()
Dim i As Long, sh As Worksheet
On Error GoTo Whoa
Application.ScreenUpdating = False
'~~> Set this to the sheet where the rows need to be colored
Set sh = Sheets("Sheet2")
'~~> Change Sheet1 to the sheet which has the list
With Sheets("Sheet1")
For i = 1 To 10
If Not Len(Trim(.Range("A" & i).Value)) = 0 And _
IsNumeric(.Range("A" & i).Value) Then _
sh.Rows(.Range("A" & i).Value).Interior.ColorIndex = 3 '<~~ Red
Next i
End With
LetsContinue:
Application.ScreenUpdating = True
Exit Sub
Whoa:
MsgBox Err.Description
Resume LetsContinue
End Sub
objWB.Cells(rowNum,201).EntireRow.Interior.ColorIndex = 6
等
+ 1另一個好:) –
對於基本的VBA代碼,你可以隨時開始錄製宏,執行動作,停止錄像,看看生成什麼樣的代碼,然後再清理一下做你想要什麼。例如,記錄突出顯示行(設置Interior.Color的值)的動作給你:
Rows("13:13").Select
Range("C13").Activate
With Selection.Interior
.Pattern = xlSolid
.PatternColorIndex = xlAutomatic
.Color = 65535
.TintAndShade = 0
.PatternTintAndShade = 0
End With
選擇命令和外來內部特性可以被移除給你:
Rows("13:13").Interior.Color = 65535
添加該行中多選擇:
Rows("6:6,10:10,150:150,201:201").Interior.Color = 65535
摘要:
- 錄製宏
- 查看Excel的版本
- 使用/編輯你需要
+ 1的詳細的解答:) –
什麼樣的代碼作爲替代微塵的回答,您可以使用條件格式。
例如:選擇A1:J500,條件格式>>新規則>>使用公式...
輸入公式:=OR(ROW()=6, ROW()=10, ROW()=150, ROW()=201)
1用於非VBA溶液:) –
1最簡單的方法。 – brettdj
更新:沒有意識到在這個日期,但認爲我想補充這一點,因爲它是有關選擇的答案。
除了Siddharth Rout的回答,因爲我沒有足夠的代表評論,所以您可以動態地找出工作表中有多少行與這兩行。 xlCellTypeConstants
可以更改爲您需要的另一個XlCellType常量,並且可以隨時更改該範圍以適應您的電子表格。
Dim numRows As Integer
numRows = Range("A2", Range("A1048576").End(xlUp)).SpecialCells(xlCellTypeConstants).Cells.Count
對不起,如果它不像其他答案一樣簡潔或優雅,但它可以完成工作。當我爲自己的應用程序編寫代碼時,我需要循環訪問我的代碼。另外,我只需要突出顯示一部分行,而不是突出顯示整行。
Sub Highlight()
Dim ThisWB As Workbook
Dim ThisWS As Worksheet
Dim rows(0 To 3) As Integer
Dim test As String
Set ThisWB = ActiveWorkbook
Set ThisWS = ThisWB.Sheets("Sheet1")
rows(0) = 6
rows(1) = 10
rows(2) = 150
rows(3) = 201
For i = 0 To 3
test = "A" & rows(i) & ":H" & rows(i)
ThisWS.Range(test).Interior.ColorIndex = 15
Next i
End Sub
您可能能夠使用條件格式
- 值看跌名單在列(我用一個單獨的標籤,給列表中的名稱)
- 下有條件實現同樣的事情格式化 - 新規則 - 「使用公式來確定單元格格式」
- 閱讀本文http://www.howtogeek.com/howto/45670/how-to-highlight-a-row-in-excel-using-conditional-formatting/
- 該規則在公式中使用vlookup = $ A2 = VLOOKUP($ A2,list,1,FALSE)
- 1. VBA突出顯示所選行導致選擇整行
- 2. VBA突出顯示行
- 3. 使用Richfaces突出顯示選擇JQuery
- 4. 突出顯示ListView選擇
- 5. 在excel中選擇非突出顯示的行
- 6. ASP.NET ListView通過複選框選擇並突出顯示行
- 7. 使用箭頭鍵選擇並突出顯示元素
- 8. 使用Excel VBA比較列和突出顯示匹配數據
- 9. Excel VBA - 在突出顯示範圍內選擇一個單元格
- 10. Excel VBA - 有條件的突出顯示 - 突出顯示下一個最高值
- 11. 如何選擇並突出顯示DataTable中的一行
- 12. 使用TextPointers選擇時不要突出顯示換行符
- 13. 如何以粗體突出顯示重複行excel vba
- 14. 選擇/突出顯示行並更改同一行中突出顯示的文本字段的值(續)
- 15. 選擇/突出顯示行並更改同一行中突出顯示的文本字段的值
- 16. 使用VBA在Excel中選擇多行
- 17. Excel VBA:在每行中查找最大值並突出顯示它
- 18. 使用VBA比較兩列並突出顯示差異
- 19. Powershell創建Excel與選擇突出顯示
- 20. 根據地址選擇/突出顯示Excel 2010中的列
- 21. 用突出顯示/取消突出顯示浮動條形圖選擇
- 22. 突出顯示word excel
- 23. 選中時突出顯示TextView,並在選中後保持突出顯示
- 24. JTree TreeCellRenderer不突出顯示選擇
- 25. 文本選擇突出顯示太多
- 26. 突出顯示是否選擇鏈接
- 27. 突出顯示UITableView沒有選擇
- 28. 刪除UIWebView選擇突出顯示?
- 29. Java突出顯示和選擇輸入
- 30. JQuery DatePicker突出顯示日期選擇
嗨,只是一個快速澄清,我應該在之前包括它。電子表格有幾千條記錄(行)。有沒有辦法編寫宏來讀取列表中的行號並突出顯示行?這是我看到的每日報告。我想盡可能地自動化。然後,我可以按顏色過濾,只需看看我需要的。 – Dan
是的,你可以做到這一點。更新帖子。 –
謝謝,我會給它一個。 – Dan