[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『表の中の個数をまとめる』(ゆんぼ)
このような表があります。
日 東京 神奈川 千葉 埼玉 4月1日 トラック0.5 軽自動車 バン0.5 バン 4月2日 乗用車 軽自動車 バン 乗用車 4月3日 乗用車0.5 軽自動車 トラック 乗用車 4月4日 乗用車0.5 乗用車 トラック 軽自動車0.5 4月5日 乗用車 乗用車 トラック0.5 軽自動車0.5
重複のないリストを作成して、COUNTIFで個数を出すと以下のような結果になりました。
トラック0.5 2
軽自動車0.5 2
乗用車 6
トラック 2
乗用車0.5 2
軽自動車 3
バン 2
バン0.5 1
この0.5は半日を表しております。
出来ればトラックを3、軽自動車を4と言うようにまとめる関数などありますでしょうか。
< 使用 Excel:Excel2013、使用 OS:Windows8 >
G H 1 トラック0.5 2 軽自動車0.5 3 乗用車 7 4 トラック 3 5 乗用車0.5 6 軽自動車 4 7 バン 2.5 8 バン0.5 9
H1 =IF(RIGHT(G1,3)="0.5","",COUNTIF(B:E,SUBSTITUTE(G1,0.5,)&"*")-COUNTIF(B:E,G1&0.5)/2) 下へコピー。 (GobGob) 2017/05/10(水) 17:17
H1 =IF(OR(G1="",RIGHT(G1,3)="0.5"),"",COUNTIF(B:E,G1&"*")-COUNTIF(B:E,G1&0.5)/2)
間違い訂正。 (GobGob) 2017/05/10(水) 17:22
Dim dic, k, c As Range, r As Range Set dic = CreateObject("Scripting.dictionary") Range("H:I").Clear Set r = Range("A1").CurrentRegion For Each c In r.Resize(r.Rows.Count - 1, r.Columns.Count - 1).Offset(1, 1) dic(Replace(c.Value, "0.5", "")) = dic(Replace(c.Value, "0.5", "")) + IIf(c.Value Like "*0.5*", 0.5, 1) Next c Set c = Range("H1") For Each k In dic c.Resize(, 2).Value = Array(k, dic(k)) Set c = c.Offset(1) Next k End Sub (mm) 2017/05/10(水) 18:08
ご報告が遅くなり申し訳ありません。
希望通りの結果になりました。
本当にありがとうございます。
(ゆんぼ) 2017/05/11(木) 10:23
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.