ExcelのVBAについてです。 画像のE列にCountIF関数を入れたいのですが、「引数の数が一致していません。または不正なプロパティを指定しています。」というメッセージが出てきます。

画像

Visual Basic | Excel175閲覧xmlns="http://www.w3.org/2000/svg">25

ベストアンサー

0

Cells(i, 3).End(xlDown) これは $C5 の時 バグる可能性があるのでは? 範囲がなぜと意味が少し分からないのですが Dim i As Long, r As Range Set r = Cells(3, 3).End(xlDown) For i = 3 To 5 If WorksheetFunction.CountIf(Range(Cells(i, 3), r), Cells(i, 3)) = 1 Then Cells(i, 5) = Cells(i, 3) Else Cells(i, 5) = "" End If Next

その他の回答(1件)

0

こんにちは。 For i = 3 To Cells(i, 3).End(xlDown).Row v1 = WorksheetFunction.CountIf(Range(Cells(i, 3), Cells(i, 3).End(xlDown)), Cells(i, 3)) If v1 = 1 Then Cells(i, 5).Value = Cells(i, 3).Value Else Cells(i, 5).Value = "" End If Next さて、worksheetfunction.if がないのに、あるような雰囲気のコード だから、エラーということです。 でも、worksheetfunction.ifは、コードとしては存在しないので、 2段階で計算が必要ということです。 あとは、1行ごとに、関数の文字列そのものを埋め込むというもの