簡體   English   中英

VBA Excel-通過工作表和范圍作為參數

[英]VBA Excel - Pass Worksheet and Range as Parameters

誰能幫助我將Sub轉換為函數,以便可以將其用於其他表單控件? 我是VBA excel的新手,並且我一直在嘗試將其轉換幾個小時而沒有運氣。 如果有人可以幫助,請多加贊賞。

Private Sub ComboBox1_Change()
    Dim v, e
    With Sheets("DATABASE").Range("minRange").SpecialCells(2)
        v = .Value
    End With

    With CreateObject("scripting.dictionary")
        .comparemode = 1
        For Each e In v
        If Not .exists(e) Then .Add e, Nothing
        Next
        If .Count Then Me.ComboBox1.List = Application.Transpose(.keys)
    End With
End Sub

謝謝。

范圍變量應該已經對工作表進行了限定,因此無需單獨傳遞它。 只需編寫您的sub即可接受范圍參數:

Sub MySub(ByVal rng As Excel.Range)

    MsgBox rng.Address

End Sub

暫無
暫無

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

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