プロが教える店舗&オフィスのセキュリティ対策術

環境:Excel2002です

エクセルブック【×××】で作業後
VBAで
フォルダ<aaa>を作りフォルダ<aaa>の中に
ブック【bbb】という名前をつけて保存します

この時
フォルダ<aaa>のショートカットをマイドキュメントに作りたいのです

マイドキュメントの場所が使用するPCによって異なるので
マイドキュメントの場所を取得して
フォルダ<aaa>のショートカットをマイドキュメントに作る
この一連の作業をVBAでやりたいのです
お手数をおかけしますがよろしくお願いします

A 回答 (3件)

フォルダのショートカットの場合は、以下の様な感じになります。


フォルダ<aaa>はVBAで作成しているのですよね。
そのパスに適宜変更して下さい。

Sub macro()
Dim O As Object
Dim S As Object
Set O = CreateObject("WScript.Shell")
Set S = O.CreateShortcut(O.SpecialFolders("MyDocuments") & "\aaa.lnk")
S.Description = "aaa"
S.TargetPath = "C:\aaa\"
S.Save
End Sub

この回答への補足

パスの変更にチョットつまづきましたが
どうにか動きました。ありがとうございました

プロシージャーは下記にしました

'◆マイドキュメントにフォルダのショートカットを作る
Dim O As Object
Dim S As Object
Set O = CreateObject("WScript.Shell")
Set S = O.CreateShortcut(O.SpecialFolders("MyDocuments") & "\" & DepoF & ".lnk")
’S.Description = DepoF
S.TargetPath = SaveDir
    S.Save

質問の例題の "C:\aaa\"がSaveDir、aaaがDepoFです
S.Description = DepoFを殺しました
S.Description = DepoFを生かすと
マイドキュメントにショートカット(名前:DepoF)はできるのですが
フォルダの色のショートカットにならず、案の定ショートカットでフォルダを開くことはできませんでした

試行錯誤ですがS.Description = DepoFを殺すと通常のフォルダの色のショートカットができあがり
ショートカットでフォルダを開くことができました

質問の例題通り、Cドライブにフォルダ<aaa>、ブック【bbb】をセットして
回答いただいたプロシージャーを実行してもエラーは発生しませんでした

S.Description = DepoFの意味と、エラーが発生する原因を教えていただけれと思います
このままでは、なんか安心できないので……

補足日時:2013/01/16 12:58
    • good
    • 0

>S.Description = DepoFの意味と、エラーが発生する原因を教えていただけれと思います



ショートカットで右クリック→プロパティ→ショートカットのタブの「コメント」欄に記載のものです。

作成されたショートカット上にマウスをポイントしてみて下さい。
そうすれば、コメントが表示されますよね。それの設定ですので、特になくても問題ありません。

私のWindowsXP環境では問題なく作成されますが、OSの種類などで、エラーになるのかもしれませんので、消しても問題ないかと思います。
    • good
    • 0
この回答へのお礼

ご丁寧にありがとうございました

お礼日時:2013/01/16 15:59

さっきの応用ですよ。



S.TargetPath = "C:\aaa\bbb.xls"
の部分は、aaaのフォルダがどこに作成されているのか不明なので、パスは適宜変更して下さい。


Sub macro()
Dim O As Object
Dim S As Object
Set O = CreateObject("WScript.Shell")
Set S = O.CreateShortcut(O.SpecialFolders("MyDocuments") & "\bbb.lnk")
S.Description = "bbb"
S.TargetPath = "C:\aaa\bbb.xls"
S.Save
End Sub
    • good
    • 1

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!