■ファイルが存在するか調査
If Dir("C:\Test.txt") = "" Then ・・・
※ファイルはフルパスで記述。存在しない場合は、長さ0の文字列が返る。
■フォルダが存在するか調査
If Dir("C:\CORE", vbDirectory + vbHidden)) = "" Then ・・・
※フォルダはフルパスで記述。存在しない場合は、長さ0の文字列が返る。 例はCドライブルートに「CORE」フォルダが存在するかどうか。
■ファイル名、フォルダ一覧を取得
ファイル名 = Dir(, vbNormal + vbHidden)
※Dir関数の第一パラメータ省略で、一度実行するごとに、カレントに存在するファイル名やフォルダ名を取得。値が長さ0の文字列になるまで繰り返すことで、そのカレントに存在する全てのファイル名やフォルダ名を取得できる。例では、カレントのファイル名を1つ取得(隠し属性のファイルも含む)
■オブジェクトをテキストファイルでエクスポート、インポート
SaveAsText acForm, "フォーム名", "C:\Foo.txt"
フォーム「フォーム名」をテキストファイル「C:\Foo.txt」としてエクスポートします。
LoadFromText acReport, "レポート名", "C:\Bar.txt"
テキストファイル化した「C:\Bar.txt」からレポート「レポート名」としてインポートします。
■実行ファイルが存在するカレントパスの取得
文字列 = Application.CurrentProject.Path & "\"
■システムテンポラリフォルダの絶対アドレス取得
MsgBox Environ("temp")
■特殊フォルダの絶対アドレス取得A
Dim f as Object
Set f = CreateObject("Scripting.FileSystemObject")
MsgBox f.GetSpecialFolder(0) 'Windowsフォルダ
MsgBox f.GetSpecialFolder(1) 'Systemフォルダ
MsgBox f.GetSpecialFolder(2) 'Tempフォルダ
■特殊フォルダの絶対アドレス取得B
Dim f as Object
Set f = CreateObject("WScript.Shell")
MsgBox f.SpecialFolders("Desktop") 'Desktopフォルダ
MsgBox f.SpecialFolders("MyDocuments") 'MyDocumentsフォルダ
MsgBox f.SpecialFolders("Recent") 'Recentフォルダ
MsgBox f.SpecialFolders("Startup") 'スタートアップフォルダ
■フォルダを作成
MkDir (C:\フォルダ名)
■フォルダを削除
RmDir (C:\フォルダ名)
■フォルダをコピー/移動
Dim fs as Object
Set fs = CreateObject("Scripting.FileSystemObject")
fs.CopyFolder "C:\コピー元フォルダ名","C:\コピー先フォルダ名"
fs.MoveFolder "C:\移動前フォルダ名","C:\移動先フォルダ名"
■フォルダ を開く
Call Shell("Explorer.exe C:\", vbNormalFocus)
■ファイルをコピー
FileCopy C:\変更前ファイル名 , C:\変更後ファイル名
■ファイルを削除
Kill (C:\ファイル名)
■ファイル名を変更
Name C:\変更前ファイル名 as C:\変更後ファイル名
■ファイルの情報取得
FileLen(C:\ファイル名) 'ファイルのサイズ
FileDateCreated(C:\ファイル名) 'ファイルの作成日時
FileDateLastAccessed(C:\ファイル名) 'ファイルの最終アクセス日時
FileDateTime(C:\ファイル名) 'ファイルの更新日時
GetAttr(C:\ファイル名)'ファイルの属性取得(下記値参照)GetAttr (C:\ファイル名) = vbDirectory then … フォルダなら…
■ファイルの属性変更
SetAttr "C:\ファイル名" , vbNormal '通常ファイルへ
SetAttr "C:\ファイル名" , vbReadOnly '読み取り専用ファイルへ
SetAttr "C:\ファイル名" , vbHidden '隠しファイルへ
SetAttr "C:\ファイル名" , vbSystem 'システムファイルへ
SetAttr "C:\ファイル名" , vbArchive 'アーカイブ
■ディスクトップにショートカットを作成
Dim W As Object
Dim L As Object
Dim D As String
Set W = CreateObject("WScript.Shell")
D = W.SpecialFolders("Desktop")
Set L = W.CreateShortcut(D & "\ABC.lnk")
With L
.TargetPath = CurrentProject.FullName
'リンク先を自分のアプリへ設定
.HotKey = "CTRL+SHIFT+B"
'ショートカットキーを設定
.WindowStyle = 1 '実行時のWindowの大きさを設定
.Description = "コメント" 'コメントを設定
.WorkingDirectory = D
'作業フォルダをディスクトップへ設定
.Save '保存
End With
Set L = Nothing
Set W = Nothing