HOME技術ExcelExcel:ハイパーリンクで別ファイルを開く

Excel:ハイパーリンクで別ファイルを開く

Excelにおいて、別ファイルにハイパーリンクを付けて、リンクをクリックすると指定したファイルが開くようにします。
通常のハイパーリンクの作成の場合だと、セルの上で右クリック→「リンク」をクリックしてファイル名を指定しますが、この方法だと絶対パスが指定されてしまうため、メールでExcelファイルとリンク先として起動させたいファイルを添付して送ると動作しなくなります。
ここでは別のコンピュータでも動作するように、絶対パスをその都度取得します。

VBAを使わずにパスを指定する

今回はVBAを使わずに考えました。

まずセルA1に現在開いているExcelファイルまでの絶対パスを表示します。
A1セルに以下の式を入力します。

=LEFT(CELL(“filename”,A1),FIND(“[“,CELL(“filename”,A1))-1)

次にリンク先のファイル名を指定します。
A2セルに開きたいファイル名を入力します。

test.pdf

A3セルにハイパーリンクをつくります。

=HYPERLINK(TEXT(A1&A2,0),”ここをクリックするとファイルが開きます”)

これでA3セルの「ここをクリックするとファイルが開きます」をクリックすると、test.pdfが起動するようになります。

関連記事

Excelでセルに入力できる文字数制限を設定する

Excelで、セルに入力できる字数の制限を設定する方法です。 全角・半角問わず字数制限する メニューから「データ」を選択し「データの入力規則」をクリックします。 データの入力規則設定画面で、「設定」タ…続きを読む

Excel VBAでログイン管理をする

Excelを開いたときに「閲覧のみ」ユーザか「管理者」ユーザかを選び、「閲覧のみ」ユーザの場合にはExcelを閉じるときに保存できないようにして、「管理者」ユーザの場合には、Excelを閉じるときに変…続きを読む

Excelのフォームのタブオーダーを指定する

Excelでフォームを設定し、部品を複数配置していると、タブキーやEnterキーを押すと次の部品にフォーカスを飛ばすことができます。 この順序が意図したとおりでない場合に、自分で設定する方法を調べまし…続きを読む

Excel:保存先の場所を常にデスクトップにする

Microsoft Excel2019で新規に保存をしようとするとOne Driveなどが最初に候補にあがってきてしまい、コンピュータ上に保存したいときに、いちいちデスクトップを指定するのに手間取りま…続きを読む

Excel VBA:最終行番号を取得する

Excelでデータ管理をしていて、VBAでその全データに対して何らかの処理を行う場合、1行目から最終行までループさせて処理を1行ずつ行う場合には、最終行を取得する必要があります。 今回は、最終行を取得…続きを読む

Excelで起動時にフォームのみ表示する

Excelで起動時にフォームを表示し、Excelそのものの表画面は非表示にする方法です。 起動時にフォームを表示する 「開発」→「コードの表示」から「Microsoft Visual Basic fo…続きを読む

Excelで複数部印刷しようとしても指定部数印刷されない

Excelを開いて複数部印刷しようとしても、指定部数が印刷されない不具合への対処法です。 例えば、5部印刷しようとしても、1部ないしは2部しか印刷されません。 そして、エラーメッセージとして「【プリン…続きを読む

Excelで開発タブを表示する

ExcelでVBAをつくるときに「開発」メニューを使いますが、最初は表示されていません。 「開発」を表示するには、Excelを起動して、「ファイル」→「オプション」→「リボンのユーザー設定」から、「リ…続きを読む

Excel VBA:フィルタを操作して絞り込む

Excel VBAでフィルタ操作をして、行を絞り込みむ方法です。 コード Sub autoFilter(Retsu, Atai) Worksheets(“シート名”).Rang…続きを読む

Excel VBA:特定のシートをコピーして別ブックを生成する

Excel VBAで、特定のシートの値をすべてコピーして、新しい別のExcelブックを生成してそのシートに貼りつけます。 なお、ブックを生成した後は、各自で保存します。 コード Worksheets(…続きを読む