作成したAccessのファイル(accdbファイル)のショートカットをデスクトップ上に作成して、さらにアイコンも変更したいといったことがあると思います。そういった場合、たいていは手動で作成すると思うのですが、accdbファイルのファイル名が変更になってしまったりするとその都度ショートカットを作り直さなければいけません。
そこで、デスクトップへのショートカット作成とアイコンの設定をVBAで自動で行うようにしてみます。
例
たとえば、「見積書.accdb」というファイルがあったとします。このファイルを開いたときに自動でデスクトップ上にショートカットを作成してみたいと思います。また、ショートカットのアイコンも下記のアイコンに変更してみます。
見積書のイラスト | かわいいフリー素材集 いらすとや
Public Function Main() As Boolean
Dim shell As Object
Dim shortCut As Object
Dim linkFile As String
Dim desktopPath As String
'WshShellオブジェクトを作成
Set shell = CreateObject("WScript.Shell")
'デスクトップフォルダのパスを取得
desktopPath = shell.SpecialFolders("Desktop")
'ショートカット名
linkFile = desktopPath & "\見積書.lnk"
'ショートカットへのオブジェクトを作成
Set shortCut = shell.CreateShortcut(linkFile)
'リンク先パス設定
shortCut.TargetPath = CurrentProject.FullName
'アイコンファイルパス設定
shortCut.IconLocation = CurrentProject.Path & "\" & "document_mitsumorisyo.ico"
'ショートカットを保存
shortCut.Save
Set shortCut = Nothing
Set shell = Nothing
Main = False
End Function
WshShellオブジェクトのCreateShortcutメソッドを使ってショートカットの作成を行っています。アイコンは、IconLocationプロパティで設定することが出来ます。
このMain()プロシージャをAccessファイルを開いたときに実行するようにAutoExecマクロで設定します。
AutoExecマクロの詳しい設定方法はこちらをご覧ください。
では、ファイルを開いてみます。
このように自動でショートカットが作成されます。
スポンサーリンク