みんなの「教えて(疑問・質問)」にみんなで「答える」Q&Aコミュニティ

こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

締切り済みの質問

エクセルVBAで指定場所にフォルダー作成

エクセルのVBAマクロ機能を使い、
自動フォルダー作成&リンクするマクロを作成したのですが、
現在のマクロですと「A(仮名)」の中にフォルダーに作ってしまいますので
下記の様に階層で指定出来る様にしたいのですが、教えて頂けないでしょうか?
出来れば、そのままマクロ貼り付けで使える様にしたいので、
下記に途中までのマクロを編集して頂ければ助かります。

「A(仮名)」と言うフォルダーの中にエクセルファイルの管理表を入れ
「A」のフォルダーの中に「B(仮名)」と言うフォルダーを作り、
その中に管理台帳で自動作成されるフォルダーがつくられる様にしたい。


現在のマクロ
Sub MakeHyLink()
Dim wkStr As String
If ActiveCell.Column <> 1 Then Exit Sub

If ActiveCell.Value = "" Then
MsgBox "アクティブセルは未入力、やり直し"
Exit Sub
End If

wkStr = ThisWorkbook.path & "\" & ActiveCell.Value

If Dir(wkStr, vbDirectory) = "" Then
MsgBox "フォルダー:" & wkStr & vbLf & " を、作成します。"
MkDir wkStr
Else
MsgBox "フォルダー:" & wkStr & vbLf & " は、存在します。"
End If

ActiveSheet.Hyperlinks.Add Anchor:=ActiveCell, Address:=wkStr

End Sub

投稿日時 - 2011-05-26 20:00:21

QNo.6765477

困ってます

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(1)

ANo.1

フォルダを作成はMkdir(DOSコマンド由来)やCreateFolder(VBScript)やその他がありますが、質問にそれらが出てこないのはどうしてですか・
Googleででも「VBA フォルダ作成」で沢山記事とコードが出るのに、WEB照会もしないで、他人にコードをつくってくれと言わんばかりの依頼では無いですか(質問ではない)。
ーー
フォルダやファイルを作る場所は文字列で指定する場合が多く(プログラムコードではこれしかない)
(ドライブコード):(Aフォルダ名)¥((フォルダの中の)Bフォルダ名)¥・・・と書いて位置を調節すれば思うところにフォルダが作成される。
質問者のいう「階層構造」の辿り方や、そのパスの書き方だけの問題でしょう。
ファイルはフォルダを指定して、エクセルファイルであれば実際の内容を作成して、保存するか、空(内容が余りない初期状態の)ブックを名前をつけて書き出せば良い。
ーー
ウインドウでマウスで選択指定して指定して行くやり方もある。
VBA フォルダ作成 ダイアロウグ VBAでWEB照会。
ーー
ハイパーリンクは操作をして、マクロの記録を採ればわかる。
初心者のやるべきことをしてないと思う。WEBや本で調べる。マクロの記録を採れないか調べるの2点です。

投稿日時 - 2011-05-26 21:46:20

あなたにオススメの質問