• ベストアンサー

Excel98でワークシート名の一覧を表示、印刷できますか?

ハイパーリンクをはって、たくさんのシート(70~100近いシート数)を作ってあるExcelデータがあるのですが、これを整理したいと思っています。 しかし、シート数がありすぎて整理しきれず困っています。 簡単にシート名の一覧を表示、印刷させる方法はありませんか? また、ハイパーリンク先のアドレスなんかもわかる方法があればよいのですが・・・。 ご存知の方、よろしくお願い致します。

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

  • ベストアンサー
  • hallo-2007
  • ベストアンサー率41% (888/2115)
回答No.1

マクロの力が必要かと思います。 Excel98で、作動するかはわかりませんが、以下のマクロ試してみてください。 A列に、順にシート名を記述します。 Sub Macro1() Dim Sh As Object Dim Shno As Integer For Each Sh In ActiveWorkbook.Sheets Shno = Shno + 1 Cells(Shno, 1).Value = Sh.Name Next Sh End Sub マクロの記述に仕方ですが、以下に説明しておきます。ご存知でしたら失礼します。 ツールー>マクロー>VBエディターを開く 初めてであれば、挿入で標準モジュール作成して、上記をコピペします。 実行には、マクロでMacro1()選択して実行です。

kyonmimi2006
質問者

お礼

hallo-2007さん、アドバイスありがとうございました。 試してみます。

その他の回答 (1)

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

関数や操作ではできない。VBAを組める必要がある。経験はないようなので、本当は質問者にはできない。丸投げだが親切な回答者によって 得たコードを実行するよりほかない。 ーー シート名のリストの方はコードは簡単で 標準モジュールに Sub test02() Dim sh As Worksheet i = 1 For Each sh In ActiveWorkbook.Worksheets Cells(i, 1) = sh.Name i = i + 1 Next End Sub しかしここにもVBAで習得すべき事項が沢山詰まっているのですよ。 ーー ハイパーリンク先のアドレスなんかもわかる方法・・ これは少しレベルが高いので色々勉強してから疑問を煮詰めて質問のこと。 1シート(アクチブシートのリンク一覧をSheet2に出す)での例で (Range("A1:D20")は適宜変えること) Sub test03() Dim sh2 As Worksheet Set sh2 = Worksheets("Sheet2") Dim c As Range k = 1 For Each c In ActiveSheet.Range("A1:D20") If c.Hyperlinks.Count >= 1 Then 'MsgBox c.Hyperlinks.Count 'MsgBox c.Address sh2.Cells(k, "A").Value = c.Address sh2.Cells(k, "B").Value = c.Hyperlinks(1).Name k = k + 1 End If Next End Sub をやってみると、うまくいくようなのだが、小生自信なし。

kyonmimi2006
質問者

お礼

imogasiさん、ありがとうございました。 もっと勉強させていただきます。

関連するQ&A

  • エクセルの全てのシート名を一覧にしたい。

    シート数の多いファイルの全てのシート名を一覧にする方法はありますか?出来ればそれを印刷する方法出来る手順があれば教えて下さい。 一つ一つの確認が面倒なので宜しくお願いします。

  • Excelのハイパーリンクで,別Excelのシート

    Excelのハイパーリンクについて, リンク先をこのドキュメント内だとsheetまで指定できますが, 別のExcelをリンク先にする場合,ファイルweb別ページだと sheetまで指定できません。 Excel一覧表Aと,それそれsheetでまとめたExcel Bと2つ作り, 一覧表のリンクをクリックすると,詳細はExcel Bのsheet1・sheet2・・・が 表示されるようにしたいです。 可能であれば,教えてください。よろしくお願いします。

  • エクセル2007シート名一覧を出したい

    エクセルファイルのすべてのシート名の一覧を1枚目に新しく作成したい。 マクロ自体使った事がないので 出来れば簡単な方法が有れば 表紙としてシート名一覧を作成する。簡単な手順をお願いします。 枚数は約10枚程度です。

  • Excelのシートから 1000個ほどのフォルダに ハイパーリンクをつけたい

    Excelのシートから 1000個ほどのフォルダに ハイパーリンクをつけたいのですが、効率の良い方法はないでしょうか 現在の手順は、以下の通りです 1.)対象フォルダ名をコピー 2.)セルを右クリック⇒ハイパーリンクの編集 3.)最近使ったファイルのアドレス履歴から>c:\データ\一覧.xls を選択 [一覧.xls]部分の替りにコピーしたフォルダ名を貼付け⇒[OK] 実際にクリックして、リンクの確認するまで約1分かかっています (1)セルの表示を変えずに、ハイパーリンクだけを一括で編集⇒シートに結合(貼付け)する方法はありますか (2)マクロを含め、何か効率の良い解決策があれば教えて下さい (3)似たシートを作成した経験のある方は、時間短縮のできそうなアドバイスをお願いします

  • エクセルのハイパーリンク 一覧から詳細へ飛ぶ式を効率的に入れるには?

    エクセルの「一覧」のsheetに商品の一覧表があります。「詳細」のsheetに写真やその他の情報があります。1つの商品は1行におさまっています。 「一覧」のC5~C100~に商品名が入力されており、ここをクリックすると、「詳細」のsheetのD2~D100~に飛ぶようにさせたいのですが。 現在は、「一覧」のC5~C100~を1つずつ 右クリック・ハイパーリンク・ハイパーリンクの挿入でやっています。 困ったことに、後から、商品を追加したい時、行挿入をしても、リンク先がずれないので、「一覧」のC5~C100~をまた一つ一つハイパーリンクの編集でアドレスを修正している状況です。 良い方法を教えて下さい。

  • Excel2013シートのリストを一覧表示させ選択

    Excel2013 シートが数十あります。 このシートのリストを一覧表示させ、その中から選択したシートを表示させる方法があれば教えて下さい。

  • エクセルのシート名をリスト化したい

    エクセルで一つのファイルを作成しました。 ファイル内には複数のシートが存在しています。 最後のページに印刷用のシートを作成させ、各シートからデータを抽出させて印刷できるようにしました。 方法としてはA1にシート名を入力して、各セルに=INDIRECT($A$1&"!L8")のようなリンクを張りました。 今度はA1に打ち込むシート名をリストで選べないかと思いましたが、方法はありますか? シートの数は30ほどあり、シート名は変更がでます。そのたびにリストを変更するのは手間なので、何かいい方法はありますか?よろしくお願いします。

  • EXCELで、複数シートの項目を一覧にして表示する方法

    EXCELで、複数シートの同じセルに同じ項目(たとえば、すべてのシートのB5に商品名)が入っているとき、この項目を1枚のシートに一覧に表示する(1枚のシートに商品名の一覧を表示する)方法を教えてください。ピボットテーブルを使うのかな?と思うのですが、そのやり方がわかりません。

  • エクセル・マクロ・・・シート名の取得等

    エクセル・マクロ・・・シート名の取得等 エクセルのマクロで質問です。 ほぼ初心者です。 社内データの処理をしたいと考えています。 マクロを組みたいエクセルブックの構成としては・・・ シート名一覧 集計シート 操作 という3つのシートがあり、 その後ろに各社員のデータシートがあります。 山田太郎 田中花子 ・ ・ ・ 部署により社員数が異なるためシートの4枚目以降は そのエクセルファイルによりシート数が異なります。 やりたいことは以下の2点です。 (1)シート名(社員名)の取得 シート名一覧に各シート名を一行ずつ入れて 一覧を作りたいです。 シート名取得&リスト化のマクロは大体わかりますが、 「シート名一覧」、「集計シート」、「操作」の3つのシート名は 一覧から外したく、どうしたらいいのかわかりません。 また、各シート名を取得した列の横の列に 各社員のシートにあるデータの一部(セルC5:C8)を 貼り付けたいです。 (2)集計シートに各社員のシートのD列の情報(D6:D43)を順に貼り付けていく。 シート名や数が固定されたものであれば何とかできそうなのですが、 不特定になるとどうしたらよいかさっぱりわかりません。 どなたかご教授お願いいたします。

  • エクセルのシート名を印刷したくない

    シート名を印刷する方法はよく乗っているのですが、逆に印刷したくない場合はどうやればいいかがなかなか見つかりません。 自動でシート名を挿入する設定になっているみたいですが、どうやって変えたらいいでしょうか。

専門家に質問してみよう