自分方位研究所

日々の活動記録

(Excel VBA) ダイアログボックスを表示してファイルフルパスを取得(少し改良)

以前のExcel VBA記事で、ダイアログボックスを表示してファイルパスを取得するコードを紹介しましたが、デフォルトで表示されるディレクトリは、選べませんでした。

www.mypath-as-variant.com

 

今回、カレントディレクトリを変更するコードを追加してみました。 

Private Sub カレントディレクトリの変更() で、

(1)  または (2) のどちらかをコメントアウトしておきます。

Sub ダイアログボックスを表示してファイルパスを取得()
'2023/8/28(月) 投稿記事用

    Call カレントディレクトリの変更
    
    Dim filePas As String
    filePas = ファイルパスを取得
    If filePas = "False" Then End

End Sub


'◆===================================================
'2023/8/28(月)18:11
' カレントフォルダの変更

Private Sub カレントディレクトリの変更()

'ファイル選択ダイアログで、最初に表示されるディレクトリを指定する。

'カレントディレクトリを表示
    Debug.Print "現在のカレントディレクトリ→ "; CurDir
  
'(1)カレントディレクトリを変更
'    ChDir "C:\KEMUdoc\13_BLOG\00_TOOL\02_記事一覧export"
'(2)または、このマクロが記述されているブック
    ChDir ThisWorkbook.Path

'変更後のカレントディレクトリを表示
    Debug.Print "変更後のカレントディレクトリ→ "; CurDir

End Sub

'◆===================================================

Function ファイルパスを取得() As String

'ダイアログボックスを開いてファイルを選択する。
    
    ファイルパスを取得 = Application.GetOpenFilename( _
        FileFilter:="Text(*.txt),*.txt,CSV,*.csv,全部(*.*),*.*", _
        Title:="MovableType形式の記事エクスポートファイルを選択")
        
    Debug.Print ファイルパスを取得
    
    'ファイル選択でフルパスファイル名。キャンセルすると「False」を返す。

End Function

'◆===================================================

 

以前作成した、はてなブログのエクスポートファイルから、記事一覧表を作成するマクロを今後、手直ししていきます。