• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:エクセル ○行ごとに縦横変換。)

エクセルで行列入れ替え!氏名と担当ごとの集計データを縦横変換!

このQ&Aのポイント
  • エクセルで氏名と担当ごとの集計データがありますが、縦横変換したい場合の方法について質問です。
  • 以下のようなデータがあり、氏名と担当ごとに集計したデータから縦横を入れ替えたいのですが、どのようにすればいいでしょうか?
  • 氏名と担当ごとのデータを4行ごとに変更し、縦横を入れ替えたい場合、具体的な方法を教えてください。

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

  • ベストアンサー
  • MackyNo1
  • ベストアンサー率53% (1521/2850)
回答No.4

No3の回答の訂正と補足です。  誤:D2セル以下に名前が入力されている場合、  正:E2セル以下に名前が入力されている場合、 今回は必要ないと思いますが、もし重複のない担当者の名前を自動的にE2セル以下に表示させたいなら以下のような関数で表示できます。 =INDEX(A:A,SMALL(INDEX((MATCH($A$2:$A$100&"",$A$2:$A$100&"",0)<>ROW($A$2:$A$100)-1)*1000+ROW($A$2:$A$100),),ROW(A1)))&"" >以下のようなデータから前述までに集計したのですが、 鈴木 東京 鈴木 東京 鈴木 千葉 おそらく、私の回答した2つ目のSUMPRODUCT関数(またはピボットテーブル)で集計する方法を用いれば、元データから一発で表示できるような気がします。

Haku46
質問者

お礼

たくさんのお返事じをいただきました。 ありがとうございます。 皆様の教えを全て試させていただき、無事に全て動作できました。 たくさんのお返事を頂戴してしまったので、評価は順番でつけさせて頂きます。 明日、早速仕事場で運用してみます。 本当にありがとうございました。

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (5)

回答No.6

添付した表から・・・ 1行目に見出し行とE列に名前を入力しておきまして・・・ 【F3】=SUMPRODUCT(($A$2:$A$1000=$E3)*($B$2:$B$1000=F$1)*$C$2:$C$1000)の式を入れます 【F3】~【I3】まで式のコピーをして、そのまま【I5】セルまで【F3】~【I3】の式をコピーします セル【A2】~【A1000】を範囲とした式になってますのでデータの範囲に合わせて数値を変更してください 宜しければお使い下さい <(_ _)>

Haku46
質問者

お礼

たくさんのお返事じをいただきました。 ありがとうございます。 皆様の教えを全て試させていただき、無事に全て動作できました。 たくさんのお返事を頂戴してしまったので、評価は順番でつけさせて頂きます。 明日、早速仕事場で運用してみます。 本当にありがとうございました。

全文を見る
すると、全ての回答が全文表示されます。
  • KURUMITO
  • ベストアンサー率42% (1835/4283)
回答No.5

A列からC列で1行目には項目名があり、2行目から下方にお示しのデータがあるとしたら、 例えばE1セルに氏名、F1セルに東京、G1セルに大阪、H1セルに千葉、I1セルに京都と入力してE2セルには次の式を入力し、I2セルまでオートフィルドラッグしたのちに下方にもオートフィルドラッグします。 =IF(INDEX($A:$A,ROW(A1)*4-2)="","",IF(COLUMN(A1)=1,INDEX($A:$A,ROW(A1)*4-2),IF(COLUMN(A1)<=5,INDEX($C:$C,ROW(A1)*4-4+COLUMN(A1)),"")))

Haku46
質問者

お礼

たくさんのお返事じをいただきました。 ありがとうございます。 皆様の教えを全て試させていただき、無事に全て動作できました。 たくさんのお返事を頂戴してしまったので、評価は順番でつけさせて頂きます。 明日、早速仕事場で運用してみます。 本当にありがとうございました。

全文を見る
すると、全ての回答が全文表示されます。
  • MackyNo1
  • ベストアンサー率53% (1521/2850)
回答No.3

関数で表を組み替えるなら、たとえば以下のような数式で表示できます。 たとえばF1セルから右に東京、大阪、・・・、D2セル以下に名前が入力されている場合、F2セルに以下の式を入力して右方向および下方向にオートフィルコピーします。 =INDEX($C:$C,MATCH($E2,$A:$A,0)+COLUMN(A1)-1) 同じ名前と地域が2つ以上出現してそれを集計したい場合は(もちろん1回しか出てこない場合もOKです)以下のような式になります。 =SUMPRODUCT(($A$2:$A$100=$E2)*($B$2:$B$100=F$1)*$C$2:$C$100)

Haku46
質問者

お礼

たくさんのお返事じをいただきました。 ありがとうございます。 皆様の教えを全て試させていただき、無事に全て動作できました。 たくさんのお返事を頂戴してしまったので、評価は順番でつけさせて頂きます。 明日、早速仕事場で運用してみます。 本当にありがとうございました。

全文を見る
すると、全ての回答が全文表示されます。
  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.2

こんにちは! 一例です。 ↓の画像で左側がSheet1でそれをSheet2に表示させています。 Sheet1に作業用の列を設けています。 作業列D2セルに =IF(COUNTIF($A$2:A2,A2)=1,ROW(A1),"") という数式を入れオートフィルで下へコピーします。 そして、Sheet2の「担当地域」はあらかじめ入っているものとします。 Sheet2のA2セルに =IF(COUNT(Sheet1!$D$2:$D$1000)<ROW(A1),"",INDEX(Sheet1!$A$2:$A$1000,SMALL(Sheet1!$D$2:$D$1000,ROW(A1)))) B2セルに =IF($A2="","",INDEX(Sheet1!$C$2:$C$1000,SUMPRODUCT((Sheet1!$A$2:$A$1000=$A2)*(Sheet1!$B$2:$B$1000=B$1)*(ROW($A$1:$A$999))))) として、B2セルを右へE2セルまでコピーします。 最後にA2~E2セルを範囲指定し、E2セルのフィルハンドルで下へコピーすると 画像のような感じになります。 以上、参考になれば良いのですが・・・m(__)m

Haku46
質問者

お礼

たくさんのお返事じをいただきました。 ありがとうございます。 皆様の教えを全て試させていただき、無事に全て動作できました。 たくさんのお返事を頂戴してしまったので、評価は順番でつけさせて頂きます。 明日、早速仕事場で運用してみます。 本当にありがとうございました。

全文を見る
すると、全ての回答が全文表示されます。
  • Cupper
  • ベストアンサー率32% (2123/6444)
回答No.1

ピボットテーブルと言う機能を使ってみてはいかがでしょう。 データをいじったり、関数やマクロを使わなくてもできますよ。 ピボットテーブルは使わなければマジで使わない機能ですけど、Excelで表計算を行う上では基本的な操作です。 簡単な解説本にも記述がありますから、自力で設定ができないのでしたら解説本を手元に置いておくなどして いつでも参照できるようにしておくと良いでしょう。 (Webにも解説サイトが多数あるので、一通り探してみてみると良いと思います。  http://www11.plala.or.jp/koma_Excel/pivot_menu.html  など)

Haku46
質問者

お礼

敷居の高かったピボットテーブルを触ってみました。 とても不思議な感じでした。 いろいろと触れば劇的なことが出来そうでした。 お返事ありがとうございました。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • エクセルでグループごとに縦横変換したい

    こんなデータが多数あります。 (変換前) 住所1 氏名1 年齢1 住所2 氏名2 年齢2 これを縦横変換し、1のグループは1行目、2のグループは2行目というようにしたいのです。 今は1のグループを選択して縦横変換、2のグループを選択して縦横変換という作業をしているのですが、データが多すぎて不便です。何かうまい方法はありませんか、教えてください。 (変換後) 住所1 氏名1 年齢1 住所2 氏名2 年齢2

  • エクセルのデータ整理で。

    2日続きで教えてもらいに来ました^^;よろしくお願いします。 エクセルのデータの整理をしております。 Sheet1,Sheet2のデータをSheet3へ反映したいと考えております。 Sheet1には、以下のようなデータがあります。   A   B   C  D   住所 氏名 年齢 家族数 1 東京 鈴木 30 3 2 埼玉 田中 33 5 3 千葉 高橋 40 2 4 東京 伊東 31 4 Sheet2には、以下のようなデータがあります。   A   B   C  D   住所 氏名 年齢 家族数 1 埼玉 林  22 1 2 千葉 森  29 2 3 東京 岡  25 3 4 東京 南  27 1 これらのうち、Aに「東京」とあれば、Sheet3に1行目から順に抽出したい。以下のようにしたいのです。   A   B   C  D 1 東京 鈴木 30 3 2 東京 伊東 31 4 3 東京 岡  25 3 4 東京 南  27 1 アドバイスお願いします。

  • エクセルVBAでの行削除

    エクセルで下記のようなデータがあり、最終行は2万くらいです。間に空白行はありません  A    B   C     D 年月日 営業所 担当者名 営業成績  0708  東京   ○山   60 0708  大阪   △川   55 0708  東京   ○山   20 0708  名古屋  □元   60 0708  大阪   ×谷   55 0708  大阪   ×谷   10 0708  九州   ▽尾   45 このデータでB列の値が「大阪」と「東京」以外を行削除 するマクロを作ろうとするのですがうまく行きません。 (実際の営業所は1000くらいあって、必要な営業所数は11だけなのですが) よい方法をご存知でしたら、お教えください。

  • エクセルで同じ数値の行を削除

    エクセルで以下のような1000行位のデータがあります。 A列 B列 大阪 1,001  東京 1,200 高知 1,300 大阪 1,200 なら 1,000 神戸 1,001 これらからB列が同じ数値の行を削除し、以下のように するにはどうしたら良いでしょうか? よろしくお願いします。 A列 B列 東京 1,200 高知 1,300 大阪 1,200 なら 1,000

  • エクセル キーとなる項目で判別し重複データ行を削除したい

    エクセル2002を使用しています。 差込印刷用のデータとして整える方法を教えていただきたいと存じます。 具体的には、子供ごとのレコードデータから、親宛の封筒宛名ラベルを作成したいと考えていて、2人兄弟や3人兄弟の場合でも封筒は1通なので、 キーとなる項目を目安に、不必要な行を削除すればできると考えましたが、具体的な方法がわからないでいます。 現在のデータは、以下のものです。(簡潔にするために列を部分的に省いています) 世帯コード   親の氏名   住所           子の氏名 0011223    鈴木 一郎  東京都千代田区一丁目   鈴木 次郎 0011223    鈴木 一郎  東京都千代田区一丁目   鈴木 三郎 0011223    鈴木 一郎  東京都千代田区一丁目   鈴木 四郎 0011556    山田 花子  埼玉県川口市中央     山田 洋子 0011556    山田 花子  埼玉県川口市中央     山田 和夫 0153355    佐藤 次郎  千葉県船橋市海浜     佐藤 みく 0002333    鈴木 一郎  神奈川県川崎区高津区   鈴木 空 0002333    鈴木 一郎  神奈川県川崎区高津区   鈴木 陸 これを、次のように「世帯コード」で判別して世帯ごとの最初の行だけを抜き出したり、2行目以降を削除したりできれば、差込印刷用のデータとして利用できると思います。 世帯コード   親の氏名   住所           子の氏名 0011223    鈴木 一郎  東京都千代田区一丁目   鈴木 次郎 0011556    山田 花子  埼玉県川口市中央     山田 洋子 0153355    佐藤 次郎  千葉県船橋市海浜     佐藤 みく 0002333    鈴木 一郎  神奈川県川崎区高津区   鈴木 空 (世帯ごとに一行ずつになっています。親の氏名のうち、鈴木 一郎 さんは、同姓同名の方です。世帯コードが違うので区分できます。) エクセルの機能でこのようにできる方法はあるでしょうか? もしくは別の方法でも、宛名ラベルを親宛に一枚印刷できる方法があるでしょうか? お願いいたします。 データ用のシートですので、行や列の挿入や別シートの利用などはすべてできますので、よろしくお願いいたします。

  • エクセルで質問です。

    エクセルで質問です。 sheet1に     A     B      C     D 1  No.   グループ    氏名   住所 2 3  1     C      佐藤    東京 4  2     B      鈴木    埼玉 5  3     A      加藤    千葉 6  4     B      本多    東京 このようなデータがたくさんあります。(左の数字は行番号、上のアルファベットは列番号) これを別シートにグループ順に   A     B      C     D 1  No.   グループ    氏名   住所 2 3  1     A      加藤    千葉 4  2     B      鈴木    埼玉 5  3     B      本多    東京 6  4     C      佐藤    東京 と表示させる方法はありますか。 エクセルに詳しくないのですが どなたか助けていただければと思います。

  • エクセルで質問です

    エクセルで質問です。 sheet1に     A     B      C     D 1  No.   グループ    氏名   住所 2 3  1     C      佐藤    東京 4  2     B      鈴木    埼玉 5  3     A      加藤    千葉 6  4     B      本多    東京 このようなデータがたくさんあります。(左の数字は行番号、上のアルファベットは列番号) これを別シートにグループ順に   A     B      C     D 1  No.   グループ    氏名   住所 2 3  1     A      加藤    千葉 4  2     B      鈴木    埼玉 5  3     B      本多    東京 6  4     C      佐藤    東京 と表示させる方法はありますか。 sheet1には都度入力されるので、並べ替えなどではなく vlooupとか関数の活用で何とかならないものでしょうか。 エクセルに詳しくないのですが どなたか助けていただければと思います。

  • エクセルで重複データ(行)を両方削除

    エクセルで重複データ(行)を両方削除    A         B       C 1  山田さん   090-111-   東京 2  鈴木さん   090-222-   埼玉 3  高橋さん   090-333-   茨城 4  山田さん   090-111-   東京 となっていた時、重複した行を削除して 以下のようにしたい場合はどうしたらいいでしょうか?   A         B       C 2  鈴木さん   090-222-   埼玉 3  高橋さん   090-333-   茨城

  • エクセル2007について

    ご教授お願いいたします。     A    B    C  1 No.  氏名   住所    2 1    一郎   東京  3 2    二郎   埼玉  4 2    二郎   埼玉    5 2    二郎   埼玉  6 3    三郎   千葉    7 3    三郎   千葉  8 4    四郎   京都  9 4    四郎   京都 10  4    四郎   京都  ↓↓     ↓    ↓ 上記のように、エクセルで氏名などが共通している場合のNo.は同数字にして、以下No.をふるためにはどのようにしたらいいでしょうか教えてください。よろしくお願いいたします。

  • エクセルの並び替えでアイコンを使うと2行目が並び替わらない。

    エクセルの並び替えでアイコンを使った場合、昇順・降順いずれも 2行目(タイトル行の一つ下の行)が固定されたまま、3行目以下で 並び替えがされてしまいます。 具体的には NO. 氏名    得点 1   山田太郎  75 2   鈴木和夫  63 3   佐藤正行  70 4   前田義彦  89 ↓ 並び替え実施 NO. 氏名    得点 1   山田太郎  75 4   前田義彦  89 3   佐藤正行  70 2   鈴木和夫  63 、となってしまい、本来3番目(4行目)になるはずの2行目の 山田太郎が、2行目に固定されて並び替えの範囲に入らないのです。 エクセルとは長くつき合っているんですが、どうしてもうまく いきません。どなたかお教えください。 ちなみに、書式は2~5行目は同じです。 よろしくお願い申し上げます。    

専門家に質問してみよう