簡體   English   中英

Pass Criteria 從 Excel 到 VBA function call

[英]Pass Criteria from Excel to VBA function call

背景

我有一個 VBA function 它接受一系列單元格並對它進行一些操作並返回一個要填充到單元格中的值。

Function ProcessCells(sheetName As String, ParamArray MyParams() As Variant) As String

.. 

End Function

這將 sheetName 和 MyParams 作為輸入。 MyParams 是一個成對的參數列表,其中包含 columnIndex 和 filtertoApply。

我的 excel 表中的示例用法:

=ProcessCells("my-sheet-1", "CarModel", "Honda", "City", "Vancouver")


這個 function 調用查看表 1 中 CarModel=Honda 和 City=Vancouver 的過濾行中的數據,然后對這些行進行一些處理

問題

我不想傳遞像“本田”或“溫哥華”這樣的值來執行過濾,而是希望讓用戶能夠從 excel 公式中傳遞一個過濾器 function,我可以在我的 VBA function 中運行它,以便在處理之前過濾掉。

就像是:

=ProcessCells("my-sheet-1", "CarModel", Val <> "Honda", "City", Value_in_List("Vancouver", "Vicotria"))

類似於采用范圍和標准的內置 CountIf function:

=COUNTIF(Where do you want to look?, What do you want to look for?)

https://support.microsoft.com/en-us/office/countif-function-e0de10c6-f885-4e71-abb4-1f464816df34

請嘗試將其稱為:

=ProcessCells("my-sheet-1", "CarModel", "<>Honda", "City", {"Vancouver", "Vicotria"})

並使用第二個ParamArray元素作為第一列(“CarModel”)的過濾條件和第四個類似條件數組用於按第三(“City”)列過濾...

暫無
暫無

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

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