Excel (VBA)

Excel VBAに関するフォーラムです。
  • 解決済みのトピックにはコメントできません。
このトピックは解決済みです。
質問

 
(Windows 10 Home : Excel 2013)
一致したセル値の数を行ごとに表示させたい
投稿日時: 21/01/06 14:59:13
投稿者: mk2021

よろしくお願いします。
セルの値が一致した数をカウントしたいのですが、VBAではどのように考えたらよいのでしょうか。
以下の例ですと、1行目のセル値と2行目以下のセル値とが一致した数を行ごと(X2〜X50)
に表示させたいと考えています。
よろしくお願いいたします。
    A B C D ・・・・・W X
1行目 4 2 3 1 ・・・・ 4
2行目 4 1 3 2 ・・・・ 2
3行目 ・・・・・・・・・




50行目 ・・・・・・・・

回答
投稿日時: 21/01/06 15:54:09
投稿者: WinArrow
投稿者のウェブサイトに移動

質問です。
>1行目のセル値と2行目以下のセル値とが一致した数を行ごと(X2〜X50
この説明では、よくわかりません。
1列目の値が、B〜W列の存在する数をX列セルに行ごとに表示したい
ならば、理解できるが、・・・・
 
もう少し具体的に説明してください。

投稿日時: 21/01/06 15:56:56
投稿者: mk2021

説明不足で申し訳ありません。
下の例
AからDにデータがあり、E2以下に一致したカウント数を表示させるという例です。
 
    A B C D E(カウント数)
1行目 4 2 3 1
2行目 4 1 3 2 2 (1行と2行を調べる、一致したセル数を表示する)
3行目 2 3 3 4 1(1行と3行を調べる、一致したセル数を表示する)
・・・・     (1行と4行を調べる、一致したセル数を表示する)
・・・・
これでどうでしょうか。
よろしくお願いいたします。

回答
投稿日時: 21/01/06 16:26:11
投稿者: WinArrow
投稿者のウェブサイトに移動

なんとなく、分かりました。
 
参考コードです。

Sub test()
Dim RX As Long, CX As Long, KENSU As Long

    For RX = 2 To 50
        KENSU = 0
        For CX = 1 To 4
            KENSU = KENSU + Abs((Cells(1, CX).Value = Cells(RX, CX).Value))
        Next
        Cells(RX, "G").Value = KENSU
    Next
End Sub

投稿日時: 21/01/06 17:04:46
投稿者: mk2021

 WinArrow様
ありがとうございます。考えていたことが
できました。感謝です。
今後ともよろしくお願いいたします。