簡體   English   中英

如何根據單元格內部顏色過濾Excel單元格?

[英]How to filter Excel cells based on cell interior color?

我想過濾大Excel工作表中的行-我只想顯示具有特定內部顏色(例如黃色)的單元格。 有什么簡單的方法嗎? 我的想法是編寫VBA函數(類似的東西在這里

*public function kolory(komorka as range)
kolory-komorka.interior.color
end function*

使用此功能后,我可以為每種顏色生成特定的代碼,然后使用它進行過濾(我甚至可以通過添加選擇案例結構來擴展它,以將該代碼轉換為人類可讀的信息)。 不幸的是,Excel沒有看到我的功能(盡管啟用了宏),並且在許多情況下,我無法使用VB編寫的代碼。

您是說它沒有出現在“宏”窗口中嗎? 您是否希望將其顯示為工作表功能/用戶定義功能? 如果要將其用作UDF,則需要具有返回類型並將代碼放置在常規模塊中。 代碼看起來像

public function kolory(komorka as range) as integer
    dim cellColor as integer
    cellColor = komorka.interior.color
    kolory = cellColor
end function

如果您嘗試將其作為獨立的例程使用,則不能這樣做,因為您需要非可選的輸入( komorka as range )。 需要從某些包含其可以傳遞komorka值的函數/子程序中調用它。 一旦有了可以調用kolory函數的東西,就可以在代碼中使用它。 該代碼將與上面相同。

這是函數的正確語法:

Public Function kolory(komorka As Range) As Long
    kolory = komorka.Interior.Color
End Function

即擺脫那些*並用=替換-

在Excel工作表中,要返回單元格A1的顏色,請在其他某個單元格中鍵入=kolory(A1)

當然,如果您只是編寫VBA代碼,則不需要功能kolory因為它只是komorka.Interior.Color的包裝。

暫無
暫無

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

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