エクセル2003で1つのシートのデータを、2つのシートへ振り分けるための関数はあるのでしょうか?例えば
seet1に次のようなデータガあるとして
A B C D
1 氏名 年齢 性別 住所
2 佐藤 30 男性 東京都
3 伊東 40 女性 大阪府
4 中村 50 男性 北海道
5 後藤 60 女性 京都府
C列「性別」に「男性」を入力すればseet2に、「女性」だったらseet3に。
氏名や年齢等を上から順番に表示(入力)させたいんですが…
(seet2・3ともに、データの列の順番はseet1とは異なりなす。)
次にseet1の「6列目」に男性を入力するとseet2の「4列目」に行くように
(表を作ると)
seet2には
A B C
1 住所 氏名 年齢
2 東京都 佐藤 30
3 北海道 中村 50
4 (seet1「6列目」の人)
seet3には
A B C
1 住所 氏名 年齢
2 大阪府 伊東 40
3 京都府 後藤 60
seet1に入力したデータを、性別で振り分けseet2に男性、seet3に女性を…
関数を使いできるでしょうか?
実際には同じようなデータを何度も「コピぺ」で入力していて非常に面倒くさいので、宜しくお願いします。ちょっと、分かりにくいですか?
No.2ベストアンサー
- 回答日時:
こんばんは!
色々方法はあるかと思いますが・・・
一例です。
↓の画像で説明させていただきます。
Sheet1のA列を作業用の列とさせていただいています。
Sheet1のA2セルに
=IF(B2="","",IF(D2="男性",1,2))
として、オートフィルで下へコピーします
(Sheet2・3の数式をそれぞれ1000行まで対応できるようにしていますので、1000行くらいまでコピーしても構いません)
これで男性には1 女性には2 が表示されるはずです。
(ハーフの方は判別できません)
Sheet2(男性)のA2セルに
=IF(COUNTIF(Sheet1!$A$2:$A$1000,1)>=ROW(A1),INDEX(Sheet1!$E$2:$E$1000,SMALL(IF(Sheet1!$A$2:$A$1000=1,ROW($A$1:$A$999)),ROW(A1))),"")
これは配列数式になってしまいますので
もしこの画面からコピー&ペーストされる場合は
単に貼り付けただけではエラーになると思いますので
セルに貼り付け後、F2キーを押すか、数式バー内で一度クリックします。
編集可能になりますので、
Shift+Ctrl+Enterキーで確定します。
数式の前後に{ }マークが入り配列数式になります。
そして、B2セルに
=IF($A2="","",INDEX(Sheet1!$B$2:$C$1000,SMALL(IF(Sheet1!$A$2:$A$1000=1,ROW($A$1:$A$999)),ROW(A1)),COLUMN(A1)))
(これも配列数式になってしまいます。)
B2セルのフィルハンドルでC2セルまでコピーします。
最後にA2~C2セルを範囲指定し、C2セルのフィルハンドルで下へコピーすると
画像のような感じになります。
女性も同様の操作ですが、
数式が少し違いますので
Sheet2の数式も書いておきます。
Sheet3のA2セルに(配列数式です)
=IF(COUNTIF(Sheet1!$A$2:$A$1000,2)>=ROW(A1),INDEX(Sheet1!$E$2:$E$1000,SMALL(IF(Sheet1!$A$2:$A$1000=2,ROW($A$1:$A$999)),ROW(A1))),"")
B2セルに(配列数式です)
=IF($A2="","",INDEX(Sheet1!$B$2:$C$1000,SMALL(IF(Sheet1!$A$2:$A$1000=2,ROW($A$1:$A$999)),ROW(A1)),COLUMN(A1)))
としてC2セルまでコピー
最後にA2~C2セルを範囲指定し、C2セルのフィルハンドルで下へコピー
尚、作業用の列をもう少し増やせば配列数式にしなくても良いような感じがします。
以上、参考になれば幸いですが、
他に良い方法があれば読み流してくださいね。
どうも長々と失礼しました。m(__)m
有り難うございます。びっくりしました。私が質問を入力するより、この長文、またこの数式でこんなに早いとは…恐れ入ります。「配列数式」ですかぁ。日頃エクセルを使っている者として、恥ずかしいですが聞いたこと無かったです。実際に仕事に使っているのが、もともと違うファイルで、seet1とseet2・3は一部だけが同じデータで、しかし重複している所もあるという何とも面倒くさいものなので、助かります。
作業用の列は確か、AU列くらいまではあったような気がします。月曜日に仕事場で試してみます。有り難うございました。「配列数式」についても、それまでに勉強しないといけないですね(^_^;)
No.3
- 回答日時:
配列数式といった方法でなくとも次のようにすればよいでしょう。
シート1のE列を作業列として次の式を下方にオートフィルドラッグします。
=IF(A2="","",IF(C2="男性","1/"&COUNTIF(C$2:C2,"男性"),"2/"&COUNTIF($C2:C2,"女性")))
この式は今後データが追加されると思われる行までドラッグすればよいでしょう。
この式では男性の場合には1で男性が入力されている最初の行では1/1というように表示されます。女性の場合には2で最初の行では2/1のように表示されます。
シート2では1行目に項目を希望する順序で列に並べて入力します。
A2セルには次の式を入力して右横方向にオートフィルドラッグしたのちに下方にもオートフィルドラッグします。
=IF(OR(A$1="",COUNTIF(Sheet1!$E:$E,"1/"&ROW(A1))=0),"",INDEX(Sheet1!$A:$D,MATCH("1/"&ROW(A1),Sheet1!$E:$E,0),MATCH(A$1,Sheet1!$1:$1,0)))
シート3でもシート2と同様に1行目に項目名を入力します。
A2セルには次の式を入力し右横方向にオートフィルドラッグしたのちに下方にもオートフィルドラッグします。
=IF(OR(A$1="",COUNTIF(Sheet1!$E:$E,"2/"&ROW(A1))=0),"",INDEX(Sheet1!$A:$D,MATCH("2/"&ROW(A1),Sheet1!$E:$E,0),MATCH(A$1,Sheet1!$1:$1,0)))
KURUMITO さん ありがとうございました。出来ました!一部ですが…
項目が多く微妙に違うので困っています。
報告する部署が違うのんですよねー…何とも…
もうちょっと頑張ってみます。
でも別のところでも使えそうでうすね。
ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) Excelマクロ 差分抽出の方法が知りたいです。 2 2023/03/07 13:25
- C言語・C++・C# c言語の問題です 2 2023/07/21 10:51
- Excel(エクセル) エクセルのマクロを教えてください。 2 2022/03/28 13:14
- その他(Microsoft Office) EXCELの1行を1枚の用紙にそれぞれ印刷したい。 3 2022/10/10 11:35
- Excel(エクセル) EXCEL 関数を教えてください。(A列の同じ値が複数ある場合vlookupで出来ますか) 4 2022/12/07 20:54
- PHP PHPでCSVを出力するさいに、ループの中で前の行の値を変更したい 1 2022/10/27 14:21
- Visual Basic(VBA) 検索のユーザーフォームの表示について 1 2023/03/27 23:31
- Excel(エクセル) マクロか関数で処理したいのですが、教えて頂けませんか。 8 2022/10/31 15:18
- Excel(エクセル) VLOOKUP が機能しない、その原因は何 ? 8 2022/10/19 12:06
- Excel(エクセル) 【Excel】住所に郵便番号を付記する方法 3 2022/05/07 17:15
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
【スプレドシート】IMPORTRANGE...
-
【Microsoft Forms】回答を削除...
-
【スプレッドシート】指定の日...
-
マイクロソフト 一時使用コード...
-
VLOOKUP関数について
-
Microsoft Formsの「個人情報や...
-
英数字のみ全角から半角に変換
-
Microsoft Formsで「応答」から...
-
1つのPCに「Excel 2010」「Exc...
-
vb.net オブジェクト指向につい...
-
会社におけるOfficeライセンス...
-
Office 2021 Professional Plus...
-
エクセルで英文字に入れた下線...
-
マクロ自動コピペ 貼り付ける場...
-
会社PCのメールが更新されない
-
Outlookでの時間指定送信機能に...
-
エクセルで串刺ししたシートの...
-
マイクロソフト オフィスについて
-
Excel テーブル内の空白行の削除
-
エクセルのシフト表を簡単にGoo...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
【スプレドシート】IMPORTRANGE...
-
マイクロソフト 一時使用コード...
-
英数字のみ全角から半角に変換
-
Office2021を別のPCにインスト...
-
Microsoft Formsの「個人情報や...
-
officeビジネス型のワードやエ...
-
会社PCのメールが更新されない
-
【スプレッドシート】指定の日...
-
Microsoft Officeを2台目のPCに...
-
何このステータスバー
-
2つのシートの一致する行のセ...
-
会社のTeamsのことで相談です。...
-
エクセルにリンクされるのをし...
-
Windows 11で、IME言語バー(IM...
-
office2010とoffice365の共存で...
-
Microsoftのパソコンです。 エ...
-
エクセルでXLOOKUP関数...
-
Excel関数について質問ですm(__)m
-
VBA
-
自分の専門分野の仕事。初見で...
おすすめ情報