• ベストアンサー

Excel内の1つ1つの項目を拾い目次化するには?

n-junの回答

  • ベストアンサー
  • n-jun
  • ベストアンサー率33% (959/2873)
回答No.5

ANo.4です。 今一つ自信はありませんが。 まずファイルをコピーしておいて下さい。 次にテストするファイルに”目次”という名前でワークシートを作成して下さい。 目次したいセルデータは ・"1."と言うように数字+"."で始まるデータである。 ・または"1-"と言うように数字+"-"で始まるデータである。 ・上記は必ず半角である。 事が条件です。 Sub Test()  Dim RegExp As Object  Dim ws As Worksheet, M_ws As Worksheet  Dim rs As Range  Dim i As Long  Set M_ws = Worksheets("目次")  Set RegExp = CreateObject("VBScript.RegEXp")  RegExp.Pattern = "^\d+[.-][^()]"  For Each ws In Worksheets      If ws.CodeName <> M_ws.CodeName Then         With ws              For Each rs In .Range(.Range("B1"), .Cells(Rows.Count, 4).End(xlUp))                  If RegExp.Test(rs.Value) Then                     i = i + 1                     M_ws.Cells(i, rs.Column).Value = rs.Value                  End If              Next         End With      End If  Next  Set M_ws = Nothing  Set RegExp = Nothing End Sub 試してみて下さい。

nao-k
質問者

お礼

アドバイスありがとうございます。 見事に、目次ができました。 非常に助かりました。本当にありがとうございます。

関連するQ&A

  • エクセル マクロで印刷

    こんにちは、いつもお世話になっております。 毎月作業していて何とかならないかと思い立った作業が2つあるのですが当方では全く歯が立たたない要求ですのでHELPです。 1.1つのBookの複数のシートの印刷 エクセルBookの複数のシート名の一覧表を「Sheet1」に目次のように作って、そのシート名を選択(☑や「印刷」等入力)すると指定したシートが印刷されるようにしたいのですが。 選択するシートは任意の複数枚。 シートを選択しての印刷は出来るのですが、できれば一覧表からの選択で印刷できるようにしたい。 2.エクセルBookのSheet 1に、他の複数のBookのフルパスが入っている目次にチェックを入れると任意の複数枚のシートが印刷される。 複数のBookの複数シート名指定で印刷出来れば最高です 1.2どちらか1つでもHELP頂けたらありがたいですので宜しくお願い致します。 尚、この作業は月報用、つまり月一回の作業なので当方にとってあまりハードルが高いようならすぐに諦めますのでご回答者様に失礼になるかもしれませんのでご了承下さい。 最近眼が著しくしょぼくなってきておりまして、出来るだけ頑張りますのでご容赦ください。

  • エクセルでこんなことできますか?

    エクセルでこんなことできますか? できるなら、作り方教えて下さい。 (マクロを使っても可) シート「目次」 シート1 シート2 シート3 シートの1、2、3に文章を入力もしくは貼り付けます。 すると、シート「目次」に見出し(文章の頭15文字とか・・・)が、 自動で挿入される。 これによって、シート「目次」をみれば、 シート1、2、3に今どんな文章が入っているかがわかるようにしたい。

  • EXCEL:目次からワークシートを選択

    エクセルのワークシートに「1」「2」「3」・・・といった名前をつけておいて 目次を作ったワークシートから「3」を選択したら3のワークシートへ飛ぶ といった操作がしたいのですが、どうやればいいんでしょうか? マクロを作成すればいいんでしょうか・・・作り方わかんないです。 簡単にできることであるなら教えてください。 よろしくお願いします。

  • Excel97でTOPPAGEを開くマクロ

    Excel97を使っています。 ある価格表を作成しました。 Sheet1に目次を作り、ハイパーリンクで 各価格表のSheetに移動するようにしています。 そこで、どこのSheetを開いている状態で閉じても 必ず開いた時にはSheet1の目次が開くようにしたい のですが、何か良い方法はあるでしょうか。 マクロになるかと思いますが、 その場合、どういったマクロをどのように登録すれば いいのかも教えて頂けたら、と思います。 簡単なマクロをボタンに登録、しかしたことないです。 宜しくお願い致します。

  • エクセル 複数シート同項目をひとつのシートに

    お世話になります。 今仕事で使っているエクセルで、ひとつのブック内の複数あるシートにゴマドレッシングとういう共通の項目があります。 このゴマドレッシングという項目だけを集めてひとつのシートにまとめたいと思います。 ちなみに、現在シート名には規則性の無い店番(11、12、15、23というような)が入っています。 お分かりなる方、よろしくお願いいたします。

  • EXCELのシートのマクロ操作について

    EXCELについて質問がありまして、よろしくお願いします。 複数のシートがあるブックがあり、それを、それぞれシートごとに別のブックにしたいと思っています。 マクロやVBAなどを使って簡単に出来るものでしょうか? マクロ集などのサイトを探してみましたが、上手く見つけることができませんでした。 シート名をブック名として引き継いで保存できればベターだと思っております。それが出来なくてもブックとして起こせれば大丈夫です。 何かわかられましたらお教えいただけますと幸いです。 どうぞよろしくお願いします。

  • EXCELでのシートの再表示(マクロ)

    あるエクセルのブックで、マクロを使い、複数のシートを非表示にしていました。 うっかり、そのマクロを削除してしまいました。 非表示にしたシートを、再表示する方法をお教えください。 なお、非表示にしたシートは、複数あり、シート名も不確かです。 よろしくお願いします。

  • EXCELのシート名を指定してそのシートを開くマクロ、VBA?

    いつもお世話になります。 次々とシートを追加していくブックがあります。 Sheet1にマクロボタンを作成して、例えばSheet1のA1に「5」と入力すればSheet5が、「8」と入力すればSheet8が、開くようにしたいのですがそのようなマクロは可能でしょうか? (シートのハイパーリンクを利用した目次ではありません。) 初心者ですがよろしくお願いします。

  • エクセルVBAについて

    今、エクセルVBAでマクロの作成を行っています マクロの中で、作業用に別なエクセルとシートを作成したのですが マクロの最後でその作業用のエクセルとシートを削除する用にしました。 その際に、エクセルがメッセージボックスが開き 『このエクセルブックを閉じますか』や『このシートを削除してよろしいですか』などと聞いてきます。 このボックスを出さないように強制的に消すことは出来ないのでしょうか? 出来るのであれば、やり方を教えてください。

  • フォルダ内にある複数エクセルブックを一つにまとめたい

    マクロを使って複数ブックを一つにマージしたいです。 どなたか宜しくお願いします。 フォルダに16個のエクセルブックがあります。ブックは4つのシートでできています。シートの列数は共通なのですが、行数が異なります。 これを新しいブックにコピペでつなげていきたいのです。 すみませんがどなたか宜しくお願いします。