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

Excelで計算式を入れたセルに計算結果が反映されない

Excelで計算式を予め設定していたにもかかわらず、数値を入力してもそのセルに計算結果が反映されない時があります。 通常、自動計算する設定になっていますが、これが手動計算に変わっていることが原因です。…続きを読む

Excel:改行を含むテキストを置換する

Microsoft Excelで、セルの中で改行しているテキストを置換する方法です。 以下のように、 あああ いいい という改行を含むテキストを「おおお」というテキストに置換します。 改行を含めたテキ…続きを読む

Excel VBAでコマンドプロンプトを起動しコマンドを実行する

Excel VBAでコマンドプロンプトを起動し、かつコマンドを実行する方法です。 コマンドプロンプトの実行 コマンドプロンプトを実行するには以下のように書きます。 CreateObject (&#82…続きを読む

Excel VBA:指定した列を非表示にする

Excel VBAで、予め指定した列を非表示にします。 コード hiddenColumn = Array(3, 4, 5, 6) For i = 0 To UBound(hiddenColumn) W…続きを読む

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

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

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

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

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

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

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

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

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

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