Accessから他のファイルを開けたいときってありませんか?
こんな場合、Shell関数を使用して実行するサンプルをよく見かけます。
開けたいファイルがAccessならこんな感じ。
Sub Sample1() Call Shell("msaccess 「起動したいAccessファイルのパスを記述」", vbMaximizedFocus) End Sub
msaccess のところを excel に変えればエクセルファイルを開くこともできます。
職場で、AccessからPDFファイルを開けたい、という相談を持ち掛けられました。
こんな時、Shell関数を使用するときの構文は、
Shell(「アクロバットリーダーへのパス」 「開けたいPDFファイルのパス」、引数)
になります。
Dドライブにある「開けたいPDF.pdf」というファイルを開けるコードは、次のとおりです。
Sub Sample2() Call Shell("C:\Program Files\Adobe\Acrobat DC\Acrobat\Acrobat.exe D:\開けたいPDF.pdf", vbMaximizedFocus) End Sub
このコードには欠点があって、まれに、PDF閲覧ソフトであるアクロバットリーダーのインストール先が、パソコンの構成によっては違う場合があるのです。
そこで和休は、いちいちプログラムのパスを指定せずに、拡張子に関連付けられたアプリが開く方法として、ハイパーリンク(Application.FollowHyperlink)を使ってファイルを開けています。
では、先ほどと同じように、Dドライブにある「開けたいPDF.pdf」をハイパーリンクで開いてみましょう。
Sub Sample3() Application.FollowHyperlink "D:\開けたいPDF.pdf" End Sub
次回の記事では、ページを指定してPDFファイルを開く方法をご紹介します。
コメントをどうぞ!