- 締切済み
重複しないセルのカウント 条件付
下記のようなデータがエクセルシートに入力されている場合、どのように重複しないセルをカウントすれば良いでしょうか?例えば、SBの数を数えたいのですが、3行目・4行目にあるCC SBは重複しています。この重複を数えないように、かつ表全体にSBがいくつあるのかということです。宜しくお願いします。 AA SB BB RH CC SB CC SB DD HC EE RH FF HC
- みんなの回答 (4)
- 専門家の回答
みんなの回答
- gyouda1114
- ベストアンサー率37% (499/1320)
>3行目・4行目にあるCC SBは重複しています。この重複を数えないように A列とB列が同じ場合の重複を除くということですね >かつ表全体にSBがいくつあるのかということです。宜しくお願いします。 A列にもSBがあるのですか 作業列としてC列に =A1+B1 下方にオートフィル 1.A2:C8を選択 2.[データ]-[フィルタ]-[フィルタオプションの設定] 3.[フィルタオプションの設定]ダイアログで [抽出先]欄で[指定した範囲]オプションボタンをONに [リスト範囲] → [A2:A8] [検索条件範囲] → [C2:C8] [抽出範囲]欄で「E2」を選択 (Sheet1!$E$2と表示される) [重複するレコードは無視する]チェックボックスをON OK 4. 抽出された表でCOUNTIF関数によりSBを数える =COUNTIF(E2:F7,"SB")
お示しの「データがエクセルシート」の範囲 A1:A7 の1列「に入力されている場合」は、次の配列数式でOKかと。 {=SUM(IF(LEN(A1:A7)-LEN(SUBSTITUTE(A1:A7,"SB","")),1/COUNTIF(A1:A7,A1:A7),""))}
- sykt1217
- ベストアンサー率34% (277/798)
#1です。 すみません、ソースのコメント覧に「SG」であることを想定・・と書かれていますが、正しくはA1の値であることを想定です。 失礼しました。
- sykt1217
- ベストアンサー率34% (277/798)
セル1つに対し、AA/SB/BB・・・と書かれていて、その書かれているセルの中から「SB」と書かれているものをカウントしたいと。 Sub KENSAKU() Dim MOZIRETSU As String Dim HIKAKU As String Dim i As Integer Dim j As Integer Dim ValueCount As Integer '以下はA1:B10での検索を想定 'A1に「SB」というVALUEが入っている想定で、「SB」の数を数えるロジックです。 ValueCount = 0 'カウント数初期化 Worksheets("Sheet1").Activate With Worksheets("Sheet1") MOZIRETU = .Range("A1") For i = 1 To 2 '列 For j = 1 To 10 '行 HIKAKU = .Cells(j, i).Value If MOZIRETU = HIKAKU Then '変数HIKAKUの値が変数MOZIRETUの値と同じ時 ValueCount = ValueCount + 1 'カウントを+1 End If Next j Next i If ValueCount <> 0 Then 'カウント数が0でなかった場合 MsgBox "このブックの中に" & MOZIRETU & "は" & ValueCount & "個入っています。" End If End With End Sub こんな感じでいかがでしょう?(テストしてません^^;)
お礼
有難うございました。早速試してみたいと思います 。