• ベストアンサー

【エクセル】リストを複数シートのA1セルに記述

色々と調べてみたのですが、どうしても自分の やりたいことと違ってしまうので、知恵をお貸しください。 ・シート数が100ある ・最初のシートに目次をつける(100行) ・最初のシート100行を参照して、複数シートのA1セルに順番に記述 1シート目 A B C D E ・ ・ ・ ↓↓↓ 2シートA1セル A 3シートA1セル B 4シートA1セル C ・ ・ ・ このようなことは可能でしょうか? 参照するのは1つのシートからにしたいです。 どうか、お知恵をお貸しください。

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

  • ベストアンサー
  • keithin
  • ベストアンサー率66% (5278/7941)
回答No.1

簡単な方法: 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の式だけで組み立てて構いません。

harukanasanon
質問者

お礼

ご丁寧にありがとうございます。 お礼が遅くなりまして申し訳ありません。

その他の回答 (2)

  • mu2011
  • ベストアンサー率38% (1910/4994)
回答No.3

マクロ(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

harukanasanon
質問者

お礼

ご丁寧にありがとうございます。 お礼が遅くなりまして申し訳ありません。 VBA、勉強しないといけないなと思いました。

  • mt2008
  • ベストアンサー率52% (885/1701)
回答No.2

マクロで良いなら 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 グラフシートなどが無い事が条件です。

harukanasanon
質問者

お礼

シンプルで良いですね。 ありがとうございます。 お礼が遅くなりまして申し訳ありません。

関連するQ&A