- 締切済み
エクセル関数の使い方
シート1のデータをシート2、シート3のように自動的に振り分けるには、どんな関数を使用すればよいですか。 シート1 2 伊 藤 男 A 3 内 川 男 B 4 太 田 男 B 5 太 田 女 B 6 太 田 女 B 7 大 西 男 A 8 川 上 女 A 9 小林 男 A シート2 2 伊 藤 男 A 7 大 西 男 A 9 小林 男 A 8 川 上 女 A シート3 3 内 川 男 B 4 太 田 男 B 5 太 田 女 B 6 太 田 女 B
- みんなの回答 (6)
- 専門家の回答
みんなの回答
- imogasi
- ベストアンサー率27% (4737/17069)
#4です。 #4で言った、imogasi方式というのをやってみる。 例データ Sheet1 A1:D10 番号 氏名 性別 組 2 伊藤 男 A 3 内川 男 B 4 太田 男 B 5 太田 女 B 6 太田 女 B 7 大西 男 A 8 川上 女 A 9 小林 男 A 10 木下 男 B F2に式 =D2&COUNTIF($D$2:D2,D2) 下方向に式を複写 F1:F10 作業列 A1 B1 B2 B3 B4 A2 A3 A4 B5 ーーー Sheet2に行って A1セルに Aを入れておく A2セルに式 =INDEX(Sheet1!$A$2:$D$12,MATCH($A$1&ROW()-1,Sheet1!$F$2:$F$10,0),COLUMN()) D2で右方向に式を複写。 2 伊藤 男 A このA2:D2をの式を下方向に式複写。 結果 A1:D6 A 2 伊藤 男 A 7 大西 男 A 8 川上 女 A 9 小林 男 A #N/A #N/A #N/A #N/A 第6行目の#N/Aを出さない(空白セルにする)式は、式が長くなり、本質を見失うので、ここでは略。 例えば、IF関数式を先頭に被せて、行番号が、AのSheet1での件数+1(見出し分修正)を越えたら、空白にするなどのやり方がある。 ーーー Bの分は Sheet3において、A1にBと入れて、Sheet2の式と同じ式を入れて 複写すればよい。 A,B,C・・の数だけ、別シートで繰り返す。
- msMike
- ベストアンサー率20% (364/1804)
1.Sheet1 において、  ̄ ̄範囲A1:D9 を選択して、Alt+MC ⇒“上端行”だけにチェック入れ ⇒  ̄ ̄[OK] ⇒ [性別]を“最優先されるキー”にして“降順”に[並べ替え](その  ̄ ̄結果が添付図上段右、次のステップからは此れを参照する) 2.Sheet2 において、  ̄ ̄次式を入力したセル A2 を右に3列、および下方にズズーッと  ̄ ̄オートフィル  ̄ ̄=IFERROR(INDEX(INDIRECT(A$1),SMALL(IF(コース="A",ROW(コース)),ROW(A1))-1),"")  ̄ ̄【お断り】上式は必ず配列数式として入力のこと 3.ステップ2に同じ。ただし、式中の記述「コース="A"」を  ̄ ̄「コース="B"」に変更するだけェ~
- imogasi
- ベストアンサー率27% (4737/17069)
A,B、Cを条件にして、それに合う行を、別シートに抜き出したい、という「条件で抜出し」問題だろう。 しょっちゅう質問が出る。しかしエクセルを使うが、関数しか知らない、質問者が、そのことも自覚なしに、この質問をする。 ーー 関数では、式が複雑になる課題だ。 配列数式などを使った回答も出るが、配列数式の何たるかも知らない質問者が、回答をコピペしてやってみて、出来ました、有難う、で意味があるのかな。 使う関数式も長いものになり、なぜ・どういう仕組みになっているか、初心者には判らないだろう。 ーー ワーク列を使うと少し式が、理解しやすいかな、と思うが、作業列を使う方法は 人気がないようだ。 さらにA,B、C・・と分別が入るとさらに複雑になる。 この方式は、imogasi方式と自称している。WEBで照会すると、でてくるだろう。 ーー VBAでもできて、フィルター機能を駆使するか、SQLのSELECT機能を使ってやれるようになってからの課題だ。 ーー それ以外なら、A,B,・・の列でソートして、人間の認識で、区切り位置を知り、手操作でコピー貼り付けするのが早い。
- Chiquilin
- ベストアンサー率30% (94/306)
Excelの「関数」に抽出やソート機能はありません。 というかそもそもこれを数式でやる意味がどこにあるのでしょう。 外部データの取り込み機能を使えばいいでしょう。抽出もソート もそれでできます。
- gen-1
- ベストアンサー率0% (0/0)
他の回答者の方がお答えになっている通り、自動で振り分けるにしても、どういう条件でシート2とシート3に振り分けるのか、条件がわからないと何とも言えません。 一番いいのはプログラミングのできる方にExcelVBAで組んでもらうのがいいかと思いますが、関数でやるのであれば、IFとCOUNTIF(もしくはCOUNTIFS)を組み合わせるのがいいのではないでしょうか。 例えば、単純に男かどうかで振り分ける場合、仮にA列にデータが入っているとして、B1セルに以下の関数を組んで下に引き伸ばします。 =IF(COUNTIF(A1,"*男*")>0,"男","女") すると、男か女かで識別されるかと思いますので、フィルターをかけて、それぞれシート2とシート3にコピペするだけです。 自動で別シートに振り分けることで、結局何がしたいのかわからないので、こういった回答しか出来かねますが、なにか参考になればと思います。
- f272
- ベストアンサー率46% (8469/18131)
「シート1のデータをシート2、シート3のように」と簡単に言うが, 1.もとのシートのどのセルにデータがあるのかわからない 2.シート2がAでシート3がBということはわかるが,その順番の決め方がわからない。なぜ「9小林男A」が「8川 上女A」よりも先なのか?
補足
言葉足らずでした。 A番号B名前c性別Dコースです。 男から先に並べたいからです。