見出し画像

Excelのアクションを使って目次作成

読了時間:4~5分 

前回はExcelのアクションで普段、私が使わないものについて紹介しました。そして前回の記事の文末に

『紹介したもの以外に「Excel ワークシートの選択したセルの範囲を取得する」など私自身使い道が分からないアクションがあります。ただ「すべてのExcelワークシートの取得」であればExcel内に目次を作成したいときであれば使い道があるのかなと思います。』

と綴った箇所があるので、この目次の作成をPADだけでやってみようと思います。というのも、たまたまExcelのシートに目次を作成する機会があったのですが意外と面倒くさかったのでこういう機会があったときに簡単に作成できるものがあればいいなと思ったのでフローを組んでみました。

※前回の記事


サンプル Excel内に目次を自動作成

まずは全体のフローです。

全体のフロー図

次に実行結果です。

フローの実行結果


フローの詳細

  1. Excelのファイルパスを入力

  2. Excelが開く

  3. Excel内にあるすべてのシート名を取得する

  4. 「目次」という名前で新たにシートを追加する

  5. B1セルに「目次」と書き込む

  6. A2セルに取得したシート名を書き込む

  7. B2セルに「=HYPERLINK("#"&A2&"!A1",A2)」と書き込む

順に詳細を確認していきます。
1.Excelのファイルパスを入力
ここはファイルパスを入力するための入力ダイアログを作成します。編集画面では既定値を空欄にしてください。入力ダイアログのタイトルとメッセージはお好きなものを入力してください。

入力ダイアログの表示アクションの編集画面

実行すると入力ダイアログが下図のように開きます。ここで目次を作成したいExcelファイルのパスを入力します。

入力ダイアログの表示アクションの実行結果

2.Excelが開く
ここで入力ダイアログで入力したファイルパスを受け取ります。編集画面で受け取ったファイルパスが%UserInput%変数に格納されているのでそれを設定します。(%UserInput%変数は画面右側中央にある{×}から選択)
これでExcelが開きます。

Excel を起動するアクションの編集画面

3.Excel内にあるすべてのシート名を取得する
こちらは実行結果がありませんので下図のフロー変数の取得結果でExcel内のすべてのシート名が取得できているか確認します。

すべての Excel ワークシートを取得するアクションの実行結果

4.「目次」という名前で新たにシートを追加する
ここでExcel内に新たにシートを追加します。その際にシート名も設定します。設定方法は下図の編集画面を参考ください。

新しいワークシートの追加アクションの編集画面

これでExcel内の一番左に「目次」という名前でシートが追加されます。

新しいワークシートの追加アクションの実行結果

5.B1セルに「目次」と書き込む
追加された「目次」シートのB1セルに「目次」と書き込みます。設定方法は下図の編集画面を参考ください。書き込む値には「目次」と入力。B1セルに書き込むので列には2、行には1と入力します。

Excel ワークシートに書き込むアクションの編集画面(目次という文字を入力)

6.A2セルに取得したシート名を書き込む
ここで3で取得したExcel内のすべてのシート名を書き込みます。設定方法は下図の編集画面を参考ください。書き込む値は3で取得した%SheetNames%変数を設定します。

Excel ワークシートに書き込むアクションの編集画面(すべてのシート名を入力)

7.B2セルに「=HYPERLINK("#"&A2&"!A1",A2)」と書き込む
ここで目次をハイパーリンクにしたいのでHYPERLINK関数を設定します。書き込む値には「=HYPERLINK("#"&A2&"!A1",A2)」を入力します。

Excel ワークシートに書き込むアクションの編集画面(ハイパーリンク設定)

5~7の実行結果が下図のようになります。

Excel ワークシートに書き込むアクションの実行結果

フローはこれで終了なのであとはフィルハンドルでB6セルまでハイパーリンクを設定し、A列を非表示にすれば下図のように完成します。

フロー終了後の補正結果

とっさにExcel内に目次を作りたいと思ったときにExcelのファイルパスを入力すればすぐに目次が作成できるので、よければお試しください。

※ファイルパスの取得方法
該当のファイルでshift+右クリックまたはshift+F10でメニューが表示されますので、そこでパスのコピーを選択すればパスを取得することができます。
入力ダイアログに入力する際、ファイルパスの両端に「""」(ダブルクォーテーション)が付いているので、それを削除してからOKボタンを押してください。

パスのコピーの取得画面

今回もご覧くださいましてありがとうございます。


この記事が気に入ったらサポートをしてみませんか?