我有一個簡單的函數,陰影表示給定範圍內的所有其他行的工作表:VBA:使用工作表名稱和/或範圍的名稱作爲輸入的功能
Public Function ShadeEveryOtherRow()
Sheets("mySheet").Select
ShadedRows = Range("myRange").Rows.Count
' determines the number of rows to shade in the range
' Code that loops through and shades rows here
End Function
我想能夠調用此函數以給定的工作表名稱和範圍作爲輸入。如果我按如下所示編寫函數並嘗試使用test()子執行,則會出現「編譯錯誤:類型不匹配」錯誤。任何援助將不勝感激。謝謝。
Public Function ShadeEveryOtherRow(targetSheet As Worksheet, targetRange As Range)
Dim targetSheet As Worksheet
Dim targetRange As Range
Sheets(targetSheet).Select
shadeRows = Range(targetRange).Rows.Count
'Code that shades rows here
End Function
Sub test()
ShadeEveryOtherRow "mySheet", "myRange"
End Sub
謝謝sigil。這解決了問題 – 2013-05-02 17:18:19