美好的一天優點 我有一堆宏,我一起運行,他們中的最後一個應該使用列B排序NO NO FILL,以便沒有背景顏色的數據來到列表的頂部。 (根據下面的代碼,數據包含大約10,000行和35列,當我使用藍色或紫色列在第一位時,它可以工作,但它不適用於無填充。我使用了0,我也使用了。16777215,但沒有運氣什麼我做錯了 PS:我無法找到任何其他VBA代碼沒有補xlNone或vbWhite也不管用 謝謝VBA代碼來排序列沒有填充
Sub ColByNofill()
'Sub Just(sht As Worksheet)
Dim rngSort As Range
Dim rngTable As Range
Dim sColor As Long
Dim sht As Worksheet
Set sht = Worksheets(1)
sColor = 0 'No Fill
'sColor = 16777215 ' white color
'sColor = 10498160 'purple
'sColor = 15790082 ' blue color
RowCount = sht.Range("B1").End(xlDown).Row
Set rngSort = sht.Range("B1:A" & RowCount)
Set rngTable = sht.Range("B1:" & sht.Cells(RowCount, sht.UsedRange.Columns.Count).Address(RowAbsolute:=False, ColumnAbsolute:=False))
sht.Sort.SortFields.Clear
sht.Sort.SortFields.Add(rngSort, _
xlSortOnCellColor, xlAscending, , _
xlSortNormal).SortOnValue.Color = sColor
With sht.Sort
.SetRange rngTable
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
End Sub
編輯這個......我錄一個宏這給了我下面UB sortfun這個代碼() ' ' sortfun宏 ' ' ActiveWorkbook.Worksheets( 「工作表Sheet1」)。AutoFilter.Sort .SortFields.Clear ActiveWorkbook.Worksheets( 「工作表Sheet」)AutoFilter.Sort.SortFields.Add鍵:=範圍_ ( 「B1」),SortOn:= xlSortOnCellColor,訂購:= xlAscending,DataOption:= _ xlSortNormal With ActiveWorkbook.Worksheets(「Sheet1」)。AutoFilter.Sort .Header = xlYes .MatchCase = Fa LSE .Orientation = xlTopToBottom .SortMethod = xlPinYin 。適用 隨着 結束子,但沒有工作結束 – John
所以我它編輯以下面子sortfun() 昏暗SHT將該代碼作爲工作表 集SHT =工作表(1) ' ' sortfun宏 ' ' sht.AutoFilter.Sort.SortFields.Clear sht.AutoFilter.Sort.SortFields.Add鍵:=範圍_ ( 「B1」),SortOn:= xlSortOnCellColor,訂單:= xlAscending,DataOption:= _ xlSortNormal 隨着sht.AutoFilter.Sort .Header = xlYes .MatchCase =假 .Orientation = xlTopToBottom .SortMethod = xlPinYin 。適用 隨着 結束分結束,我在sht.AutoFilter.Sort.SortFields得到錯誤91。清除當我結合所有的宏。 – John