VBA初心者なのでお手柔らかにお願いします.....
重複をチェックして列にカウントを挿入するスクリプトがありますが、これは正常に機能しますが、シートが異なることが多いため、重複をチェックする列とカウントを挿入する列をユーザーに尋ねる必要があります。スクリプトを修正しましたが、宛先列にゼロしか入力されません。何が問題なのかわかりません。どんな助けでも素晴らしいでしょう。前もって感謝します。
Sub LookForDuplicates()
Dim LastRow As Long
Dim column1 As String
'display an input box asking for column
column1 = InputBox( _
"Please enter column to ckeck")
'if no file name chosen, say so and stop
If Len(column1) = 0 Then
MsgBox "No column entered"
Exit Sub
End If
Dim column2 As String
'display an input box asking for column
column2 = InputBox( _
"Please enter column to insert results")
'if no file name chosen, say so and stop
If Len(column2) = 0 Then
MsgBox "No column entered"
Exit Sub
End If
'-------------------------------------------------------
'これは、設定された列を使用したスクリプトの元のバージョンであり、うまく機能します.....ただし、チェックする列と、結果が入力される列をユーザーが指定する必要があります。
'LastRow = Range("B" & Rows.Count).End(xlUp).Row
' With Range("E1")
' .FormulaR1C1 = "=COUNTIF(C2,RC[-3])"
' .AutoFill Destination:=Range("E1:E" & LastRow)
' Range("E1").Select
' ActiveCell.FormulaR1C1 = "Duplicates"
'-----------------------------------------------------
LastRow = Range(column1 & Rows.Count).End(xlUp).Row
With Range(column2 & "1")
.FormulaR1C1 = "=COUNTIF(C2,RC[-3])"
.AutoFill Destination:=Range(column2 & "1" & ":" & column2 & LastRow)
Range(column2 & "1").Select
ActiveCell.FormulaR1C1 = "Duplicates"
End With
End Sub
ユーザー入力変数でこれを機能させることができません。何か不足している場合は申し訳ありませんが、これに関するリソースが見つかりません....
式: =COUNTIF($B:$B,B2) は、マクロ内以外では機能します。
=COUNTIF($column1:$column1,column12) のようなユーザー入力からの変数に置き換えられたマクロにこの行を追加する必要がありますが、構文エラーが発生し続けます。
ありがとう。