No.4ベストアンサー
- 回答日時:
分かり易くデータが多くても計算に負担とならない方法は作業列を作って対応することです。
例えばA列とB列の2行目から下方にデータがあるとして、また、B列では作業グループには5名までが記載されるとします。
初めにB列を選択してからエクセル2010の場合ですが「データ」タブから「区切り位置」を選択し「カンマやタブなど・・・」で「次へ」、区切り文字には「その他」で「・」を入力して「次へ」「完了」と操作します。この操作によって作業グループについては名前がB列からF列にわたって表示されるようになります。
G2セルには次の式を入力してK2セルまでオートフィルドラッグコピーしたのち下方にもオートフィルドラッグします。
=IF($A2="","",IF(B2="","",$A2&B2))
その後にL2セルには次の式を入力してP2セルまでオートフィルドラッグしたのちに下方にもオートフィルドラッグします。
=IF(G2="","",IF(COUNTIF($G$2:G2,G2)=1,1,""))
最後に答えをC1セルに表示させるのでしたらC1セルに次の式を入力します。
=SUM(L:P)
作業グループが5名以上になる場合でも同じように対応することができますね。
回答ありがとうございました。
区切り位置指定ウィザードで、セルを分割し、名前の列の横にそれぞれ日付用の列を挿入して、A列からコピペして、
A列日付、B列名前、C列日付、D列名前、E列日付・・・
CD列を名前の昇順で並べ替える。
EF列を名前の昇順で並べ替える。・・・
として、日付と名前が両方入っているセルが上に集まっているので、それらのセルをAB列にコピペ。
AB列をデータツールの「重複の削除」をクリックで数えられるような気がしてきました。
なるべく長い式は使いたくないので、せっかく教えていただいた関数を使わずスマートではないですが。
会社のパソコンで、本来のデータを使っても出来るか、明日試してみようと思います。
ありがとうございました。
No.5
- 回答日時:
一日2回まででA列昇順なら
「・」中点の区切り位置でセルを分割させる
F2セルに
=IF(B2="",0,IF($A1=$A2,ISNA(MATCH(B2,$B1:$D1,0))*1,1))
右へ下へオートフィル
その範囲をSUMで合計 =SUM(F2:H5)
根本的な入力の方法(フォーマット)を変えたほうがよいと思います。
回答ありがとうございました。
確かにカウントするためには、入力の方法が良くないですが、もともとある別のために作っているデータを転用したかったので、入力方法を変えるのは難しいのです。
質問の仕方が下手でした。すみません。
No.3
- 回答日時:
>何か良い方法があったら、教えてください。
⇒これはマクロ(VBA)以外で計数する事は困難です。
仮に日付と出勤者が対になるように設定されていたら「フィルタオプションの設定」→「重複レコードを無視する」の抽出で可能ですのでご検討下さい。
マクロ例です。
対象シートタブ上で右クリック→コードの表示→以下のコードを右画面上段に貼り付け→F5キーを押下して見て下さい。
Sub sample()
Set d = CreateObject("Scripting.Dictionary")
For i = 1 To Cells(Rows.Count, "A").End(xlUp).Row
wk = Split(Cells(i, "B"), "・")
For j = 0 To UBound(wk)
d(Cells(i, "A") & wk(j)) = 1
Next
Next
MsgBox "総延べ人数=" & d.Count
End Sub
No.2
- 回答日時:
ちょっと修正
セルA2は
=NOT(SUMPRODUCT((Sheet1!$A$1:$A1=Sheet1!A2)*(Sheet1!$B$1:$D1=Sheet1!B2)))*(Sheet1!B2<>"")
でした
No.1
- 回答日時:
一度の計算式のみで数えるのは無理と思われます
[山田・田中・高橋]
のように一つのセル内に・区切りで複数の人名入力されている部分も計算式での処理上で非常に厄介です
出勤の細かなルールによっても計算式は変化しますが、例にあげられている表の集計だけであれば
1.B列のデータを[ツール]⇒[区切り位置]から・を区切り記号として1名前1セルとしてデータを分ける
2.元データ範囲と同じサイズの作業領域を利用
上記2点の条件付ですが、方法が無いわけではない
作業領域を別シートに置き
A1セル=COUNTA(Sheet1!B1:D1)
A2セル=NOT(SUMPRODUCT((Sheet1!$A1:$A1=Sheet1!A2)*(Sheet1!$B$1:$D1=Sheet1!B2)))*(Sheet1!B2<>"")
と入力
A2セルの計算式をA2:C4範囲までドラッグしてコピー
後はSUM(A1:C4)で合計を出せば集計可能です
計算式の範囲は元のデータにあわせて変更する必要が有ります
迅速な回答ありがとうございました。
SUMPRODUCTという関数を初めて見たので、数日間クラクラしていてお礼も出来ませんでした。
すみません。
今度、ゆっくり勉強します。
ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) EXCEL 関数を教えてください。(A列の同じ値が複数ある場合vlookupで出来ますか) 4 2022/12/07 20:54
- Excel(エクセル) Excelマクロの差分抽出のコードを教えていただきたいです。 2 2023/03/14 11:40
- Visual Basic(VBA) エクセルについて教えてください。 3 2023/06/28 09:11
- 飛行機・空港 三流ビジネスマンのために羽田増便はやめてもらいたいですね? 6 2023/05/26 00:22
- 数学 登録番号と年月日と時間から作成した数字列を出来る限り小さくする方法 7 2022/06/03 16:10
- Excel(エクセル) Excelの1つのセルにそれぞれ文字+数字が入力されていて、 数字のみ抽出して合計したいです。(合計 4 2023/03/16 23:44
- 政治 今回の改造内閣では入閣した3人の議員に世界平和統一家庭連合旧統一教会側との接点が確認され 4 2022/08/10 21:21
- Excel(エクセル) Excelでの複数条件のカウントについて 1 2022/09/25 07:40
- Excel(エクセル) エクセルの条件付き書式 個人シートを参照して集計シートに色付けしたい 1 2023/06/22 00:39
- アニメ ドラえもんで 初代 富田耕生(1936年2月4日生まれ) 1973年4月1日〜1973年6月24日 2 2023/02/21 18:36
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Excelについて質問です。 ・デ...
-
Excel2010で、今の、Ex...
-
UNIQUE関数が使えないバージョ...
-
Excelについて質問です。
-
エクセルに詳しい方教えて下さ...
-
Excelで「時間の足し算」はどう...
-
Excelについて質問です。 表の...
-
オートフィルのショートカット...
-
Excel表の文字の幅を狭くしたい
-
勤務表をエクセルで作る際、 最...
-
Excelのフォントについて
-
Excel 2019 のピボットテーブル...
-
エクセルのパスワードの一括解...
-
エクセルのソートについて
-
Excel 連番を入力する方法
-
Excel 漢字二文字の先頭と最後 ...
-
列を増やさずに、月だけの件数...
-
Excelで、10000,20000,30000と...
-
エクセルの検索関数でシート内...
-
Excel 2019 での上書き保存につ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセル詳しい方教えて下さい
-
ExcelでA列をコピーしたいので...
-
エクセルのセル統合について
-
Excelの関数で起きた現象の原因...
-
Excelファイルが閉じられい!
-
Excelのシート背景に不明な文字...
-
エクセルの枠線
-
Excel 領収書発行
-
エクセル関数の使い方を教えて...
-
C列にF列の担当者(A〜)を順番...
-
ピポットテーブルの参照元を別...
-
EXCEl VBA
-
Excelでの判別方法
-
VBAで、サブフォルダにある複数...
-
"りんご"と"みかん"というシー...
-
マクロについて教えてください。
-
EXCELファイルが読み取り専用で...
-
同一セルに入力規則のリストと...
-
100行50列の表で、1~40列でフ...
-
なぜか「Nextに対応するForがあ...
おすすめ情報