#184 ドライブのボリューム名を設定するには? VBA、API

Windows APIの「SetVolumeLabel」関数を使うと、指定ドライブのボリューム名をVBAによって設定することができます。


まず標準モジュールのDeclarationsセクションに次のコードを記述します。"Declare"の前に"Private"を付けることによってフォームのモジュールにも記述できます。
Declare Function SetVolumeLabel Lib "kernel32" Alias _
  "SetVolumeLabelA" _
  (ByVal lpRootPathName As String, _
  ByVal lpVolumeName As String) As Long

以下は、「毎日、テーブルの内容を日別のフロッピーディスクにバックアップ(エクスポート)し、その月日をボリューム名に設定する」という処理を想定し、フロッピーディスクドライブのAドライブに対して、"BACKUP"+現在月日(例えば5月1日の場合は"BACKUP0501")というボリューム名を設定する例です。適当なプロシージャに組み込んで使ってください。
Dim strRootPath As String
Dim strVolName As String

'ボリューム名を設定したいドライブのルートディレクトリを指定します
strRootPath = "A:\"

'ボリューム名の内容を指定します
'(指定できる文字数は半角11文字までです)
strVolName = "BACKUP" & Format$(Date, "mmdd")

'実際にディスクに対してボリューム名を書き込みます
SetVolumeLabel strRootPath, strVolName
| Index | Prev | Next |



T'sFactory
Accessで動く生産管理DB
Ureru Express
Webで使う販売顧客管理
Access開発&アドバイス
DB開発やテクニカルアドバイス
Copyright © T'sWare All rights reserved