- ベストアンサー
【エクセル】リストを複数シートのA1セルに記述
色々と調べてみたのですが、どうしても自分の やりたいことと違ってしまうので、知恵をお貸しください。 ・シート数が100ある ・最初のシートに目次をつける(100行) ・最初のシート100行を参照して、複数シートのA1セルに順番に記述 1シート目 A B C D E ・ ・ ・ ↓↓↓ 2シートA1セル A 3シートA1セル B 4シートA1セル C ・ ・ ・ このようなことは可能でしょうか? 参照するのは1つのシートからにしたいです。 どうか、お知恵をお貸しください。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
簡単な方法: ALT+F11を押す 現れた画面でCtrl+Gを押す 現れたウィンドウに for i = 2 to worksheets.count : worksheets(i).range("A1").formula = "=" & worksheets(1).name & "!A" & i-1 : next i と記入しEnterキーを押す ファイルメニューから終了してエクセルに戻る 以上です。 エクセルの一般機能だけで行う方法: 2枚目から101枚目まで100枚ある各シートが,「自分はいったいどこを取りに行けばいいのか」を知らしめるヒントが必要です。 先に言っておくと,エクセルの関数では「自分が何枚目のシートなのか」を知る方法はありませんので,別に仕込みをしなければできません。 簡単な作成例 1枚目のシートのシート名を「Sheet0」とする 2枚目のシート名を「Sheet1」とする 3枚目のシート名を「Sheet2」とし,以下101枚目のシート名を「Sheet100」とする 手順: ブックを保存する(必須) 2枚目から101枚目までのシートを「作業グループ」にする B1セルに =MID(CELL("filename",A1),FIND("]",CELL("filename",A1))+1,9) と式を入れ, A1セルに =INDEX(Sheet0!A:A,SUBSTITUTE(B1,"Sheet","")) と記入し,作業グループを解除する #もちろん計算のリクツが判った後は,B1を使わずに直接A1の式だけで組み立てて構いません。
その他の回答 (2)
- mu2011
- ベストアンサー率38% (1910/4994)
マクロ(VBA)で一気に埋め込む方法ですが如何でしょうか。 Sheet1のA1以下に目次の文字列が入力されている事としています。 ■Sheet1(目次シート)タブ名上で右クリック→コードの表示(新たにVBE画面が表示)→ 以下のコードを貼り付け→F5キー押下 因みにマクロが用済みの場合、VBE画面の貼り付けたコードを全て削除して、VBEを 終了させて下さい。 ■サンプルコード Sub sample() For i = 2 To Worksheets.Count Sheets(i).Range("A1") = Range("A" & i - 1) Next End Sub
お礼
ご丁寧にありがとうございます。 お礼が遅くなりまして申し訳ありません。 VBA、勉強しないといけないなと思いました。
- mt2008
- ベストアンサー率52% (885/1701)
マクロで良いなら Sub Sample() Dim i For i = 2 To ThisWorkbook.Worksheets.Count Worksheets(i).Range("A1") = Worksheets(1).Range("A" & i - 1) Next i End Sub グラフシートなどが無い事が条件です。
お礼
シンプルで良いですね。 ありがとうございます。 お礼が遅くなりまして申し訳ありません。
お礼
ご丁寧にありがとうございます。 お礼が遅くなりまして申し訳ありません。