VBAを使いこなそう!!
Amebaでブログを始めよう!
1 | 2 | 3 | 4 | 5 | 最初次のページへ >>

アクティブなファイルのファイル名を取得する

できそうで、できない??

アクティブなファイルのファイル名を取得します。


アクティブっていうのは、今開いているファイル(ブック)のことですね。



Dir関数は、フルパスからファイル名を抜き出す関数です。

前はいちいち、フルパスの右から数えて「¥」が何番目にあるか、っていうのを数えさせ、右から何番目かの「¥」以降をファイル名として取得していたんですΣ(゚д゚lll)

めっちゃ手間かかりました(;・∀・)



この関数前からありましたっけ?





でも簡単にできるようになってヽ(・∀・)ノ ワチョーイ♪




Sub FileRename()
Dim strFullPath As String
Dim Filename As String


'変数にパスを格納します。
strFullPath = ActiveWorkbook.FullName
Filename = Dir(strFullPath)

End Sub



ドキドキ

【ファイル名】ファオルダ内にあるファイル一覧を取得する

フォルダの内のファイルの一覧を取得して、エクセルシートに出力するマクロですにひひ



Dir(pathname)   pathname:ファイル名


Dir関数は、引数に指定したファイルの存在を調べる関数です。


今、仮にドライブCにある、「エクセルファイル」を検索して変数「buf」に一旦代入して
Do Loopでエクセルシートに出力します。


ソースここから
↓↓↓↓↓


Sub sample16()
Dim buf As String, cnt As Long

buf = Dir("C:\*.xls")
Do While buf <> ""
cnt = cnt + 1
Cells(cnt, 1) = buf
buf = Dir()
Loop


End Sub


↑↑↑↑↑
ソースここまで


結果がこんな感じになります合格



$VBAを使いこなそう!!



ファイル名はひとつずつ、1行ごとに出力できますよ目



【フォルダの選択】ダイアログボックスを開く

エクセルよくやる「フォルダを選択する」をマクロでやってみましょうべーっだ!





Windowsアプリケーションで見かける[フォルダの選択]ダイアログボックスを表示するには、
Windows Scripting Host(WHS)のBrowserForFolderメソッドを利用します。




ソースここから


↓↓↓↓↓


Sub Select_Filelist()
Dim WHS As Object, myPath As Object,f As Variant



Set WSH = CreateObject("Shell.Application")
Set myPath = WSH.BrowseForFolder(0, "フォルダを選んでください", 0, "C:\")
If Not myPath Is Nothing Then
MsgBox myPath.items.Item.Path
f = myPath.items.Item.Path


End If

Set WSH = Nothing
Set myPath = Nothing



End Sub


↑↑↑↑↑
ここまで


ソースを実行するとこんな画面が出ます。
$VBAを使いこなそう!!-実行画面


その後、メッセージボックスで選択したフォルダ名を表示しますよ。



せっかくフォルダ名を取得したので

f = myPath.items.Item.Path

で変数「f」に取得したフォルダ名を代入します合格

1 | 2 | 3 | 4 | 5 | 最初次のページへ >>