• ベストアンサー

ExcelVBAでフォルダの新規作成をしたい

ExcelVBAでフォルダを新規作成するにはどのように書けばよいのでしょうか。 例えば、「C:」の下に「Test」というフォルダを新規に作成するなどしたいのです。 よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • bin-chan
  • ベストアンサー率33% (1403/4213)
回答No.1

MKDIRを使用します。(MaKe DIRectory) MKDIR "C:\Test"

takaandhiro
質問者

お礼

ありがとうございました。 うまくいきました。

その他の回答 (1)

回答No.2

他にも方法はいろいろありますが、Windowsスクリプティングテクノロジーに含まれるFileSystemObjectを使うのが一般的かと思います。 dim fso,f set fso=createObject("Scripting.FileSystemObject") set f=fso.CreateFolder("C:\Test") といったような形でメソッドを使います。これはVBScriptのコードですが、VBAでも使えたはずです。

takaandhiro
質問者

お礼

ありがとうございます。 この方法でもうまくいきました。 申し訳ありませんが、点数は早い順とさせていただきました。 またよろしくお願いいたします。

関連するQ&A

  • 新しくフォルダを作成したい

    新しくフォルダを作成したいのですが、yymmddのところまではうまくいくのですが、その下に name というフォルダが作れません。 C:/test/yymmdd/name (yymmddは日付) var tempFolder = new Folder ("c:/test/"+yymmdd+"/"+"name"+"/")tempFolder.create(); どうしてでしょうか。すみませんがわかる方教えてください。

  • ExcelVBAマクロでファイル検索してコピー方

    ExcelVBAマクロについて確認させてください。 C:\test\フォルダ内で指定のファイル名(例えばAAA.xlsx)を検索して それをC:\test2\フォルダ下にコピーする方法をご教授くださいm(_ _)m

  • ExcelVBA一つ上までのフォルダ作成

    ExcelVBA2007以上で質問です。 現在のファイルのあるフォルダは例えば「11月分」という名前になっています。 もうひとつ上は「2014年」というフォルダになっています。 コードを実行すると、翌月のフォルダとファイルを作成するようになっています。 現在11月なので、実行すると「12月分」というフォルダを作成して、「AAA2014-12」というファイルを作成します。さらにこれを実行して、例えば "D:\YM\Desktop\AAA\2015年\1月分"\AAA2015-1.xlsm のように2015年のフォルダを作成してさらにその中に1月分のフォルダを作成したいのですが、2014年フォルダの中に1月分フォルダが作成されるだけで、どうすればいいのか分かりません。 今の所、月のフォルダと、ファイル名は翌月取得が下記のコードで実現できています。 最後のコードに手を加える必要があると思いますが、どうすればよいでしょうか? Sub AAA翌月ファイル作成() Dim myDir_path As String, myNew_path As String '現在ファイルがあるフォルダパスを取得 myDir_path = Left(ThisWorkbook.FullName, InStrRev(ThisWorkbook.FullName, "\") - 1) '翌月分のファイル名を取得 myNew_path = "在庫数" & Format(DateAdd("m", 1, Replace(Replace(ThisWorkbook.Name, "AAA", ""), ".xlsm", "")), "yyyy-m") & ".xlsm" '翌月のファイルを保存するフォルダ名を取得   あとは、年が変わったら1年繰り上げたものを取得したい myDir_path = Left(myDir_path, InStrRev(myDir_path, "\")) & Format(DateAdd("m", 1, Replace(Replace(ThisWorkbook.Name, "AAA", ""), ".xlsm", "")), "m") & "月分\"

  • ExcelVBAでサブフォルダ名などを取得したい

     ExcelVBAで、Dドライブ内の特定のフォルダ(D:\My Documents等)の中にある全てのフォルダ名やファイル名を取得したいのですが、方法が分かりません。  Dドライブのすぐ下にあるフォルダはDirで取得できるようなのですが、サブフォルダ名が取得できないのです。  具体的にどのように書いたらよいかお教えいただけるとうれしいです。  よろしくお願いします。

  • フォルダ作成について

     こんにちは。  新規のフォルダ作成の時、フォルダをの名前を"ABC"とすると、"C:\ABC"となるようにフォルダを作成したいと思っています。  普通のように、マイドキュメントに作成すると、"C:\"の直下に"ABC"とはならないので、どのような手順で作成したらよいのか教えてください。  よろしくお願いいたします。

  • ExcelVBA

    すいません。簡単なことなのかもしれませんが、困っています。 普段C++を使用して仕事をしているのですが、急遽ExcelVBAを使用してExcelのマクロを作成しなければならなくなりました。 VisualBasicはまったく触ったことないので質問させていただきます。 Excelファイルの保護されていないセルの行数と列数を数えたいのです。 ExcelVBAで記述するとどういったコードになるのでしょうか? ちなみにExcel2007を使用しています。 皆さんの知恵をお貸しください。

  • ExcelVBAの学び方について

    ExcelVBAの学び方について ExcelVBAを独学で勉強中です。かなりの初心者です。 会社から期限を決められてExcelVBAでデータベースを作成しています。まるっきりゼロの知識で始めていますが、どうにも時間が足りなくて基本をろくに学ばずインターネット等で構文を検索して貼り付けながら作成しています。"わからない事があればインターネットで質問をしろ"と、上司から言われますがわからない事がわからない状態です。こんなやり方では作成できるとは思いません。やはり、基本から学ばないとダメでしょうか。学び方のアドバイスを頂けると幸いです。

  • フォルダ(ディレクトリ)を一括して作成する方法

    WINDOWS XPを利用していますが、あるフォルダの下にフォルダを一括して 作成したいのですがどのようにすればよいのでしょうか? 何か方法ありますでしょうか? 例えば、TESTというフォルダの下に SAMPLE 1 ,SAMPLE 2,・・・,SAMPLE 50 といった具合に連番でフォルダを多く作ろうと考えています。 一個一個フォルダを作らずに済む方法はありますか? 宜しくお願いします。

  • EXCELVBAでフォルダを指定するダイアログ

    EXCELVBAでフォルダを指定する(ファイルではなく)ダイアログを表示させたいの ですが、VBで存在するコントロールがVBAにないので、どのようにすればいいのか わかりません。どなたか、具体的に教えていただけませんでしょうか? EXCEL97を使っています。

  • バッチファイルでフォルダをコピー

    robocopyを使用してC:\test1\20090601フォルダをC:\test3の下にコピーしたいのですが、 実際はC:\test1\20090601の下のファイル・フォルダがコピーされてしまいます robocopy C:\test1\20090601 C:\test3 20090601フォルダごとコピーするにはどうしたらよいのでしょうか? ご存知の方いらっしゃいましたら教えてください よろしくお願いいたします

専門家に質問してみよう