• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:再び質問。エクセルで集計。)

再び質問。エクセルで集計。

このQ&Aのポイント
  • エクセル初心者でわからない事だらけです。
  • 最近のエクセルでしかできない事なのでしょうか?
  • それともどこかを変更すると同じ事ができるのでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
  • KURUMITO
  • ベストアンサー率42% (1835/4283)
回答No.3

古いエクセルのバージョンではシート2のC1セルに入力する式は次のようにします。 =IF(ISERROR(INDEX(Sheet1!$A:$A,MATCH(INDEX($A:$A,ROUNDUP(ROW(A1)/3,0)*3-2)&$B1&COLUMN(A1),INDEX(Sheet1!$J:$P,1,ROUNDUP(ROW(A1)/3,0)):INDEX(Sheet1!$J:$P,10000,ROUNDUP(ROW(A1)/3,0)),0))),"",INDEX(Sheet1!$A:$A,MATCH(INDEX($A:$A,ROUNDUP(ROW(A1)/3,0)*3-2)&$B1&COLUMN(A1),INDEX(Sheet1!$J:$P,1,ROUNDUP(ROW(A1)/3,0)):INDEX(Sheet1!$J:$P,10000,ROUNDUP(ROW(A1)/3,0)),0)))

agorin
質問者

お礼

KURUMITOさん!!!昨日に引き続き、お世話になっております。 家の古いパソコン(バージョンの古いエクセル)を開いて、昨日作ったデータに 上記の式を入れてみました!出来ました!名前出てきました! これで、会社でも使えそうです。本当に助かりました。ありがとうございました。

その他の回答 (3)

  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.4

こんばんは! 横からお邪魔します。 ↓の画像のようにSheet1のデータをSheet2に表示するようにしてみました。 Sheet2のA・B列項目は入力済みだとします。 配列数式を使っていますので、極端にデータ量が多い場合はオススメできませんが、 データ量はあまり多くないというコトみたいですので・・・ とりあえずSheet1の100行目まで対応できる数式にしてみました。 Sheet2のC1セルに =IF(COUNTIF(OFFSET(Sheet1!$A$1:$A$100,,INT(ROW(A3)/3),,1),$B1)<COLUMN(A1),"",INDEX(Sheet1!$A$1:$A$100,SMALL(IF(INDEX(Sheet1!$B$1:$H$100,,INT(ROW(A3)/3))=$B1,ROW($A$1:$A$100)),COLUMN(A1)))) これは配列数式になってしまいますので、Shift+Ctrl+Enterで確定! この画面からコピー&ペーストする場合はC1セルに貼り付け後、数式バー内で一度クリック! 編集可能になりますので、そのまま Shift+Ctrlキーを押しながらEnterキーで確定! 数式の前後に{ }マークが入り配列数式になります。 これを列方向・行方向にオートフィルでコピーすると 画像のような感じになります。 他の方の配置と違っていたらごめんなさいね。m(_ _)m

agorin
質問者

お礼

画像つきでわかりやすく説明して頂き、ありがとうございました。 やりたかった配置と同じ形です。 このサイトで親切な方にお会いでき、わかりやすく教えて頂いて感動です。

回答No.2

あたり~、IFERROR、こいつはウチにもありまヘン、、、 =IFERROR(??,X) これは、 =IF(ISERROR(??),X,??)) に置き換え可能。

agorin
質問者

お礼

ありがとうございました。直感はズレてはなかったようです。 もっと勉強して使いこなせるようがんばります。

  • akiomyau
  • ベストアンサー率43% (555/1280)
回答No.1

上記の式で式の最初にある IFERROR関数はEXCEL2007から利用できるようになった関数です。 EXCEL2000では対応していません。

agorin
質問者

お礼

早々の回答をありがとうございます。 日々、進化ですね。

関連するQ&A