No.1ベストアンサー
- 回答日時:
元リストのシートを開く
ALT+F11を押す
現れた画面で挿入メニューから標準モジュールを挿入する
現れたシートに下記をコピー貼り付ける
sub macro1()
dim h as range
on error goto errhandle
for each h in range("A1:A" & range("a65536").end(xlup).row)
h.entirerow.copy destination:=worksheets(h.value).range("A65536").end(xlup).offset(1)
next
exit sub
errhandle:
worksheets.add after:=worksheets(worksheets.count)
worksheets(worksheets.count).name = h
activesheet.range("A1:C1") = array("社名", "データ1", "データ2")
resume
end sub
F5キーを押す
今登録したmacro1を選んで実行する
ファイルメニューから終了してエクセルに戻ると既に完成しています。
No.2
- 回答日時:
関数で出来るのでは、と質問しているのではないですか。
しかしエクセルは条件(例A社)を付けた抜き出しは苦手です。一発でA者の行を抜き出すのも複雑な式です。しかもその会社名の重複の無いリストと連動しないと、A社、B社、・・と
手作業で打ち込まないとならない。
ですからVBAを勉強しないとスムーズに行かないでしょう。仕事などにエクセルを使うならVBAが直ぐ必要になる1例です。
フィルタの操作とコピー貼り付けのマクロの記録を採って考えるのが、その入り口です。
こういう表の組み換えになると、エクセル関数は非力です。
ーー
係数のカウントや、計算なら1シートに各社を混在しておいても、可能な場合があるかもしれない。
またフィルタで洋画たる場合もあるかもしれない。だから
各社にシートで分けて、その後どうするの、も質問に書いておくべきなんです。
No.3
- 回答日時:
方法は、関数、VBA(マクロ)、エクセルのフィルタ機能などがありますが、関数やVBAは簡単ではありませんので、エクセルのフィルタ機能を使う方法を紹介します。
(1)先ず元データシート(仮にSheet1)に見出し行を挿入します。
(2)Sheet1のA列を選択⇒データ→フィルタ→フィルタオプションの設定→重複するレコードは無視するを選択→OK
会社名一覧を別シートにコピペし、再度(2)の操作で重複するレコードは無視するは選択なし→OK
(3)Sheet2のA1にSheet1のA1をコピペ、A2に=MID(CELL("filename",$A$1),FIND("]",CELL("filename",$A$1))+1,31)を入力、シート名を手動にて変更(先ほどの会社名一覧)
(4)Sheet2のA3を選択→データ→フィルタ→フィルタオプションの設定→指定した範囲を選択、リスト範囲欄にSheet1A:C、検索条件範囲欄にA1:A2、抽出範囲欄にA3→OK
尚、(3)で会社名一覧分を事前に作成しておけば、(4)の操作をマクロ記録で後はシートを選択してマクロ実行(ショートカットキー押下)するだけで抽出できますが如何でしょうか。
No.4
- 回答日時:
今仮に、元データーが入力されているシートのシート名がSheet1であるものとします。
又、Sheet2のA列を作業列として使用するものとします。
まず、Sheet2のA1セルに次の数式を入力して下さい。
=INDEX(Sheet1!$A:$A,ROW())&COUNTIF(Sheet1!$A:$A,INDEX(Sheet1!$A:$A,ROW()))
次に、Sheet2のA1セルをコピーして、、Sheet2のA2以下に(Sheet1のリストの行数を上回るのに充分な行数となるまで)貼り付けて下さい。
次に、例えば
A社
という名前のシートを作成し、そのA2セルに、次の数式を入力して下さい。
=MID(CELL("filename",A2),FIND("]",CELL("filename",A2))+1,999)
次に、A社シートのA3セルに、次の数式を入力して下さい。
=IF(ROWS($2:3)>COUNTIF(Sheet1!$A:$A,A$2),"",A$2)
次に、A社シートのB2セルに、次の数式を入力して下さい。
=IF(ROWS($2:2)>COUNTIF(Sheet1!$A:$A,$A$2),"",INDEX(Sheet1!B:B,MATCH($A$2&ROWS($2:2),Sheet2!$A:$A,0)))
次に、A社シートのB2セルをコピーして、A社シートのB2~C3の範囲に貼り付けて下さい。
次に、A社シートのA3~C3の範囲をコピーして、同じ列の4行目以下に貼り付けて下さい。
以上でA社シートは完成で、後はA社シートをコピーしたシートを作成して、そのコピーシートのシート名を、別の会社名に変更する事で、別の会社用のシートを作成して下さい。(シート名と、Sheet1のA列に記載されている会社名が一致していれば、全て自動的に表示されます)
No.5
- 回答日時:
一般機能で一度にシートをたくさん作るにはピボットテーブルが便利です。
A列に会社名、B列に項目1、C列に項目2と項目名をつけておいて、
表内にカーソルを置き、データ→ピボットテーブルとピボットグラフレポート→次へ→次へ→作成先を適当に決め完了
ページのフィールドに会社名(ここが重要)、データのフィールドに項目名(一つでいいです)をドラッグ
ピボットテーブルツールバーの左端にある「ピボットテーブル」をクリック→ページの表示→OK
で会社名ごとのシートができます。
その後最初のシートを選択し、Shiftを押しながら最後のシートを選択してから、どこか未入力のセルをコピーしピボットテーブル全体に貼り付け
これでシート名だけ入ったシートが完成します。
以上は2003までの操作です。
中のデータに関しては他の方の回答を参考にして下さい。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) 複数シートの複数列に入力されているデータを重複なしで抽出するVBAを作りたいです。 9 2022/06/17 10:33
- Excel(エクセル) Excelで質問です! 現在マクロを勉強中の初心者です。 以下のような表から、会社名が空白のもの以外 2 2022/06/14 12:16
- Visual Basic(VBA) Changeイベントで複数セルへの貼り付けおよび値削除時に1個目のセルのみエラーになる 3 2022/12/21 09:07
- Excel(エクセル) エクセルシートのデータを1列飛ばしで別ブックのシートに貼り付けるマクロが知りたい 2 2023/06/05 22:37
- Excel(エクセル) エクセル関数教えてください 2 2023/04/25 16:15
- Visual Basic(VBA) 【VBA】特定の文字で改行(次の行)に行きたい。 3 2022/04/11 17:20
- Visual Basic(VBA) VBA 最終行まで数式をコピーする 3 2023/01/03 15:44
- その他(Microsoft Office) エクセルマクロ オートフィルターでで選択コピー 2 2022/04/18 11:05
- Excel(エクセル) VBA セルの値と同じ名前のシートにデータを貼り付けするやり方を教えてください 2 2022/05/17 16:26
- Excel(エクセル) vba シート名の一覧を2列に分けるには 5 2023/04/24 08:56
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセル初心者です 関数の入れ...
-
Microsoft1Officeの互換ソフト...
-
Excel ピボットテーブルで日付...
-
エクセル関数を教えてください
-
【マクロ】その時、その時で変...
-
【マクロ】読取専用のファイル...
-
LOOKUP関数を使えばいいのでし...
-
エクセル 白黒印刷で白線を印刷...
-
【関数】先頭だけにある、半角...
-
【関数】適切な文字数の数字を...
-
Excelのチェックボックスの使い...
-
エクセルでの作業計算方法について
-
Excelのpivotについて質問です
-
WPS OFFICEでの縦書きについて
-
時間によってファイル名が変わ...
-
エクセルのセルに同じ大きさの...
-
Aというブックの1というシート...
-
エクセルの順位別一覧表の自動...
-
西暦や和暦の表示をyyyymmdd表...
-
【マクロ】エクセルにかいてあ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Excel 2019 のピボットテーブル...
-
[関数得意な方]教えて下さい・...
-
Excelにてある膨大なデータを管...
-
[関数について]わかる方教えて...
-
Excel初心者です。 詳しい方、...
-
excelの不要な行の削除ができな...
-
エクセル関数に詳しい方教えて...
-
INDIRECTを使わず excelで複数...
-
[オートフィルタ]で抽出された...
-
エクセルの神よ、ご回答を! エ...
-
エクセル関数に詳しい方、教え...
-
各ページの1番上の表示について
-
Excelで写真のような表を作った...
-
エクセルで不等号記号(≠)が上に...
-
数学 Tan(θ)-1/Cos(θ)について...
-
Excel 2019 は、SPILL機能があ...
-
Excelで全角を半角にしたいので...
-
条件付き書式を教えてください
-
Excel フィルターを掛けた状態...
-
[オートフィルタ]の適用範囲の...
おすすめ情報