• 締切済み

Excel シートを追加したら別ブックへ自動的に反映したい

具体的には、追加したシート名を別ブックの一覧表の特定セルへ自動反映させたのです。シートが追加される度に、一覧表へ反映されていく・・・というのが希望です。 関数で可能でしょうか?マクロはよく分からないのですが・・・。お知恵をお貸し下さい!よろしくお願い致します。

みんなの回答

  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.1

関数はセルの値を捉えて加工するものです。 シート名(自分やINDEX番号で指定したシートのシート名)を捉えることはできません。 VBAなら1行でできます。しかしシートを追加した削除したということをイベントで知らせてもらえないので、 コマンドボタンを1つ貼り付け、下記コードを作り Private Sub CommandButton1_Click() Worksheets("Sheet1").Range("D1:D10").Clear Dim sh As Worksheet For Each sh In ActiveWorkbook.Worksheets Worksheets("Sheet1").Cells(i + 1, "C") = sh.Name i = i + 1 Next End Sub シート数を増減、名前を変える都度ボタンをクリックすると言う 操作者責任およびその実行によって、正しくなるということでしかない。 上記はSheet1シート上のセルD1から出しているが、他のブックならなおさら手が込む。

frufru
質問者

お礼

回答ありがとうございます。 なかなか難しいですね。勉強になりました。

関連するQ&A

  • Excel シートを追加したら別ブックへ自動的に反映したい

    具体的には、追加するシート名が、別ブックの一覧表の特定のセルに自動反映されるというのが希望です。 マクロとか、ほどんど分かりません。関数で可能でしょうか?よろしくお願い致します。

  • シートの自動追加を新規ブックで実行したい

    こんばんは。 いつもお世話になっています。 営業月報を作成したいと思い、色々お知恵を借りながら試しています。 Sheet1:チームのメンバー表 Sheet2~3:名簿と目標値 Sheet4:月報の原版 このような構成のブックで、毎月Sheet1のメンバー表を書き換え(名簿ファイルから直接コピペでA1セルから下に向かってメンバーの名前)、 下記のマクロを実行してSheet4を複製しています。 今はこの追加を同じブック内で最後尾へどんどん追加しているのですが、複数のチームで共有する都合を考え、Sheet1にコピペしたメンバーの月報は新規ブックを自動で起こしてシートを追加したいと思っています。 ******************************* Sub シート追加() Dim 追加シート名 As String Dim i As Integer For i = 1 To Sheets("Sheet1").Range("a1").End(xlDown).Row 追加シート名 = Sheets("Sheet1").Cells(i, 1).Value Sheets("Sheet4").Copy After:=Sheets(Sheets.Count) Sheets("Sheet4" & " (2)").Name = 追加シート名 Next End Sub ******************************* 現在使用しているマクロはこのような内容なのですが、新規ブックでシートの追加をするには、どのようにすればよいのでしょうか? よろしく御教示をお願いします。

  • エクセル・特定のセルの入力をシート名に反映する

    題名のとおりですが、特定のセルの入力内容をシート名に反映することはできませんか? マクロでできることは知っています。 社内文書にマクロをつけると嫌がる人がいます(理由は不明……) できれば、関数でなんとかならないでしょうか? 逆にシート名をセルに反映する関数&マクロは分かるのですが セルの内容をシート名に反映する関数、というのが見つかりません どなたか教えてください。

  • Excelのブック内のシート名を順番に表示させる

    類似の質問を探していろいろ試してみたのですがどうしてもうまくいかなくて・・・教えてください。 ブック内にシートが複数枚あるとします。 最初の1枚目のシートは一覧表となっておりそのシートのセルA1から順にA2、A3…と下に表が続いています。 セルA1には2枚目のシート名が自動的に入力される セルA2には3枚目のシート名が自動的に入力される というようにブック内にあるシート名を順番に セルに表示入力できる方法はありますか? ちなみにVBAはほとんど触ったことはありません。 よろしくお願いします。

  • エクセルのシートの反映について質問します。

    たとえば、下のような(シート1)の表を元に、別のシート(シート2)(シート3)へ自動で、反映させることは可能でしょうか? また”=”を使わずに(シート1)の元データを、全く同じ表として、別のブックへ反映させ 元のデータを変える事によって、すべてのシート、指定されたブックが自動で変わるような、方法はあるのでしょうか。 こういった場合、良い知恵がありましたらよろしくお願い致します。 m(_ _)m (シート1)       A     B    C 1  コードNo  日付   名 2    1     10/1   aaaaaa 3    2     10/2  bbbbbb 4    1     10/3   cccccc 5    2     10/4   ddddddd (シート2)       A     B    C 1  コードNo  日付   名 2    1     10/1   aaaaaa 3    1     10/3   cccccc (シート3)       A     B    C 1  コードNo  日付   名 2    2     10/2  bbbbbb 3    2     10/4   ddddddd

  • 同じブック内で別シートへ抽出データを自動入力させたい

    エクセルについて教えてください。 案件情報を1件ずつ1行でまとめた案件一覧表を作成しました。ある列には県名も入力してあります。その総括一覧表と同じブック内に、県別のシートを作成したいと考えています。総括一覧表に入力することで、自動的に「香川」「徳島」「愛媛」「高知」の各シートにデータが入力されるようなブックを作りたいのですが、どうすればいいのでしょう?関数についての知識がほとんどない初心者で困っています。できるだけ簡単な方法をお教えいただけるとうれしいです。どうぞよろしくお願いします。

  • 別のブックから、特定のシートを指定して他のブックを開くには

    マクロ初心者です。 A.xlsと、B.xlsという2つのブックがあります。 B.xlsはこの時、閉じた状態です。 Aには1つのシートのみがあって、Bには日毎に追加されていく不特定数のシートがあります。 Aのブックのシート内のセル番地A1に、「aaa」と入力した場合、B内の「aaa」という名前のシート名を指定してB.xlsを開くマクロはどう書いたら良いのでしょうか。 頼りきりの質問になってしまって申しわけございません。 何卒宜しくお願い申し上げます。

  • エクセル マクロ 別シートへ自動転記

    お世話になります。 エクセルで元データシート(一覧表シート)からアルファベット毎に自動で別シートに転記したいのでですがマクロをどうやって作ればいいでしょうか?(出来ればファイルを開けた時に自動更新してほしいのですが。。) 基準になるのはローマ字でかかれている部品名で、それをアルファベットごとのシートに自動に転記されるようにしたいです。データはどんどん追加されていきます。 元データは以下のとおりです。 *データはB5セルから始まっています。  部品名  詳細  金額  ・・・  A56785 ねじ  ¥30   高田(株)  B13575 棒   \500 安田 C59975 柵 \200 鈴木(株)   以上よろしくお願いします。

  • 別ブックのシート名称一覧を作成したい

    excel2016 自ブックの中でシート名一覧作成というマクロはwebにあったのですが、 他ブックのシート名一覧を自ブックへ作成というのを どの様に対応したらよいのかがわかりません。 やりたい内容は、 ①自ブックを開く(シート収集するファイル) ②file_openマクロ実行  c:\workにあるfile.xlsmのブックを開く(file.xlsmが他ブック) ③file.xlsmの全シート名称一覧を  自ブックのsheet1シートのA1セルから下へシート名称記載させる。  file.xlsmに登録されているシート名称は日付と時刻と時刻  202110070830 202110071700  … みたいな12桁のシート名称になっている ③自ブックsheet1のB1からB列最終行(A列にデータがある最終行)  まで必要なセルに1を設定 ④自ブックB列でセルに1があれば、他ブックの対象シートを自ブック  へコピー 以上①~④をマクロで対応したいのですが ③の内容がわからないのでベタでマクロ教えていただきたく、よろしくお願いします。

  • Excel VBA 複数ブックのシート結合方法

    複数ブックの特定のシート(都度指定)のみを結合するマクロを組みたいです。 例えば、「ファイルマージ前」というフォルダがあって、その中には数値のみ違う同フォーマットのアンケート集計結果が保存されています。 このフォルダ内には50ほどのブックが保存されていて、そのブック内の「N表」というシート(50あるブック内全てに存在するシート)を新規ブック(マクロを組み込むブック)の1シートに上から順に値コピーしていきたいです。 今後、別の機会でファイルマージが必要になった際にも使用出来る様に、シート名を都度指定(セルにシート名を入力して、そのシート名を参照する等)出来るようにしたいのですが、自分の知識とネット等で調べた情報のみではうまく作成出来ませんでした。 詳しい方のお知恵をお借りしたいです。 宜しくお願い致します。

専門家に質問してみよう