こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

ショートカットをブラウザに表示させたい

ブラウザにhttp://www.yahoo.co.jp/を表示させて
ヤフーのアイコンをデスクトップにグイって持って行けば
デスクトップにヤフーのショートカットが出来ますが
このショートカットファイルをVBAで開くことは可能ですか?

ショートカット名は「Yahoo! JAPAN」となっています。

Sub sample()
Dim objIE As InternetExplorer
Set objIE = CreateObject("InternetExplorer.application")

objIE.Visible = True
objIE.Navigate "Yahoo! JAPAN"
Set objIE = Nothing
End Sub

と言うように立ち上げられたらと思うのですが
ショートカットのURLを読み取る方法はありますか?

Sub sample()
Dim ファイル名 As String
ファイル名 = "C:\Documents and Settings\◎◎\デスクトップ\Yahoo! JAPAN"
CreateObject("Shell.Application").ShellExecute ファイル名
End Sub

こっちの方法では、「見つかりません」
と言うエラーになってしまいました。

今回の例題はヤフーだからわかりやすいのですが
実はフォルダに色々なサイトのショートカットを貯めており、
それをVBAで開けたら便利だなと思っています。
お気に入りフォルダみたいな感じになっています。

投稿日時 - 2013-02-06 20:06:55

QNo.7931609

困ってます

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

> ファイル名 = "C:\Documents and Settings\◎◎\デスクトップ\Yahoo! JAPAN"

ファイル名が不完全です。
拡張子まで完全に書いてください。

 ファイル名 = "C:\Documents and Settings\◎◎\デスクトップ\Yahoo! JAPAN.url"

投稿日時 - 2013-02-06 22:26:44

お礼

ショートカットの拡張子はurlだったのですね。
気付きませんでした。うまく開けました。

投稿日時 - 2013-02-08 20:16:49

ANo.1

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(2)

ANo.2

Sub sample()
Dim ファイル名 As String
ファイル名 = "フルパス&ファイル名&拡張子まで"
CreateObject("Shell.Application").ShellExecute ファイル名
End Sub


で出来ますよ。
例えば
  ファイル名 = "C:\Users\ユーザー名\Desktop\フォルダ名\ファイル名.url"
など。

ただし、
> フォルダに色々なサイトのショートカットを貯めており、
> それをVBAで開けたら便利だな
ショートカットの数だけコレを書くのであれば、便利かどうかは疑問です。
そもそも、一々エクセルなりワードなりを開いて、そこからブラウザを立ち上げるなら
逆に手間だと思うのですが、どうなんでしょう?


例えば、起動時に動くように

Private Sub Workbook_Open()
Dim myPath As String
Dim mymyFile As String

Range("A:A").Delete
myPath = "フルパス"
myfile = Dir(myPath & "*.*")

i = 1
Do While myfile <> ""
Cells(i, 1) = myfile
i = i + 1
myfile = Dir
Loop
End Sub

などとワークブックのモジュールに仕込んでおき、
起動時にシートにフォルダ内のファイル一覧を書き出し、
(好きな手法ではないですが)セルをダブルクリックするとブラウザが起動するように

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Dim ファイル名 As String
ファイル名 = "フルパス" & Target.Value
CreateObject("Shell.Application").ShellExecute ファイル名
End Sub

をワークシートのモジュールに書いておく・・


と言うやり方は考えられなくはないですが。

どちらにしても、エクスプローラーでフォルダを開くか、
エクセルでブックを開くか、の違いですね。
多分、ですが、早いのは前者でしょう。

投稿日時 - 2013-02-07 18:54:54

お礼

ありがとうございました。

投稿日時 - 2013-02-17 13:00:04

あなたにオススメの質問