我嘗試使用下面的SUMPRODUCT函數在我的宏:SUMPRODUCT Worksheetfunction生產 「運行時錯誤13」 類型不匹配
= SUMPRODUCT( - (LEN( '數據每週經典' B:B)> 1! )) - 1
數據表以及要搜索更改的列,所以我使用變量。
我的代碼:
Public commentsheet As Worksheet
Public commentcolumn As String
Public commentcell As String
Public rownumber As Integer
Private Sub Workbook_Open()
Set commentsheet = ThisWorkbook.Sheets("Data Weekly Classic")
commentcolumn = Application.WorksheetFunction.VLookup(Sheet4.Range("A2").Value, Sheet8.Range("P1:Q8"), 2, 0)
rownumber = 2
commentcell = commentcolumn & rownumber
End Sub
Sub broken()
Dim commentstotalrange As String
commentstotalrange = commentcolumn & ":" & commentcolumn
Sheet4.Range("D13").Value = Application.WorksheetFunction.SumProduct(--(WorksheetFunction.Len(commentsheet.Range(commentstotalrange) > 1)) - 1)
End Sub
任何想法,爲什麼我得到一個錯誤13:類型不匹配這一行?:
Sheet4.Range("D13").Value = Application.WorksheetFunction.SumProduct(--(WorksheetFunction.Len(commentsheet.Range(commentstotalrange) > 1)) - 1)
首先,我寫的是:
Sheet4.Range("D13").Value = Application.WorksheetFunction.SumProduct(--(Len(commentsheet.Range(commentstotalrange) > 1)) - 1)
沒有「LEN」之前的工作表功能。它產生了同樣的錯誤。我在「LEN」之前添加了工作表功能,因爲我想,也許我必須告訴VBA LEN也是excel的LEN功能。雖然錯誤沒有改變。
你可以嘗試使用'Evaluate'或'[...]'而不是'Application.WorksheetFunction'? –