※本ブログのページには広告主との提携による広告や宣伝、プロモーションが含まれます。当ブログを経由しての商品の購入や、サービス申し込みが発生すると、それらの提携企業からの成果報酬を受けとる場合があります。

VBA|GetAbsolutePathNameメソッド(ファイルシステムオブジェクト)

FileSystemObjectGetAbsolutePathNameメソッドは指定したパスの書きかたでカレントディレクトリの完全なパスを文字列で返します。

※ファイルシステムオブジェクト(FileSystemObject)についてはこちら

GetAbsolutePathNameメソッドの構文

ファイルシステムオブジェクト.GetAbsolutePathName (パス文字列(Pathspec))

GetAbsolutePathNameメソッドの構成要素と引数

要素/引数 必須/任意 説明
ファイルシステムオブジェクト
(FSO)
必須 ファイルシステムオブジェクトを指定します。
パス文字列
(Pathspec)
必須 完全なパスに変換したいパスを文字列で指定します。

GetAbsolutePathNameメソッドの構成要素と引数

以下のマクロは、GetAbsolutePathNameメソッドの引数に指定したパスの書きかたにしたがってイミディエイトウィンドウに完全なパス文字列を表示します。

  
Option Explicit

Sub ファイルシステムオブジェクト_GetAbsolutePathNameメソッド()
    'ファイルシステムオブジェクトを使うため準備
    '①事前バインディングの場合はVBEのツールより参照設定で「Microsoft Scripting Runtime」にチェックをしてください。
    Dim FSO As FileSystemObject
    Set FSO = New FileSystemObject

    'カレントディレクトリを変更する
    ChDir ("C:\Users\ユーザー名\Documents")

    'GetAbsolutePathNameメソッドの使用例
    Debug.Print "①"; FSO.GetAbsolutePathName("C:")

    'カレントディレクトリを変更する
    ChDir ("C:\Users\ユーザー名\Desktop\Test")
    
    'GetAbsolutePathNameメソッドの使用例(パスの書きかたごとの結果を出力する)
    Debug.Print "②"; FSO.GetAbsolutePathName("C:")
    Debug.Print "③"; FSO.GetAbsolutePathName("C:..")
    Debug.Print "④"; FSO.GetAbsolutePathName("C:\")
    Debug.Print "⑤"; FSO.GetAbsolutePathName("C:.\サンプル")
    Debug.Print "⑥"; FSO.GetAbsolutePathName("サンプル")
    Debug.Print "⑦"; FSO.GetAbsolutePathName("C:....\サンプル")

End Sub

10行目、16行目

ChDir(チェンジディレクトリ)関数をつかって作業中のディレクトリを変更しています。

19行目から24行目

GetAbsolutePathNameメソッドで完全なパスを返します。パスの仕様(Pathspec)の指定方法を変えています。

現在作業中のフォルダ(カレントディレクトリ)の完全なパスを返すんだね。

独学でプログラミングをはじめてみたけど、このままの学習方法に不安を感じているのなら、
オンラインスクールで現役エンジニアのサポートがあるテックアカデミーがおすすめ。
スキマ時間に学べて仕事も保証。必ず副業、始められます。まずは無料でプログラミング体験

コダマのもりブログはにほんブログ村に登録しています。
ブログの記事が役に立ったと感じて頂けたら、フォローお願いいたします。

コメント