Excel の VBA で、たとえばコードの一部を文字列内に格納する可能性があるかどうかを尋ねたいと思います。つまり、以下の例に示されています (このコードは機能しません)。
Sub newMacro()
Dim wb As Workbook
Dim ws As Worksheet
Dim sAdditional As String
Dim rngWhereCount_1 As Range
Dim rngWhereCount_2 As Range
Dim iCellValue As Integer
Dim i as integer
Set wb = ThisWorkbook
Set ws = wb.Worksheets(1)
Set rngWhereCount_1 = ws.Columns(1)
Set rngWhereCount_2 = ws.Columns(2)
For i = 1 To 10
If (i = 1) Or (i = 2) Then
sAdditional = ", rngWhereCount_2, i"
Else
sAdditional = ""
End If
iCellValue = Application.WorksheetFunction.CountIfs(rngWhereCount_1, 1 & sAdditional)
Next i
End Sub
したがって、問題は、sAdditional を (おそらく文字列としてではなく) 宣言する簡単で賢い方法があるかどうかですが、ループ内でオプションにすると同時に、sAdditional に範囲と文字列が含まれているかどうかです...
前もって感謝します!P.