今年の干支 Silver - RightWay 今年の干支

有償ボランティア活動(愛知県瀬戸市・尾張旭市 域内限定)

☆☆ ExcelのVBAマクロでフォルダを作成する ☆☆

Excelで指定した名前のフォルダを作成する方法について、参考になるWebページを紹介しながら説明します。

1.フォルダの作成(CreateFolder メソッド)の使い方

FileSystemObject(FSO)を使用してフォルダを作成する方法について説明します
マクロでフォルダ作成

2.Excel VBA 新規フォルダの自動作成

フォルダを作成するサンプルプログラムを改修し指定のフォルダ配下に新規フォルダを作成するプログラムを一緒に作成し実行して動くことを確認します。
マクロでフォルダ作成

3.試作した新規フォルダの自動作成

「新規フォルダを自動作成」するVBAのサンプルプログラムを作成しました。
◇試作した、プログラム◇
フォルダ作成のサンプルExcelダウンロード
 

参考:指定のフォルダ配下に新規フォルダを作成する


======================================================================
'グローバル設定
 Dim fso As New FileSystemObject
 Dim FolderName As String
'----------------------------------------------------'
' Excelシートで指定したフォルダを作成する
'  ・環境設定: (Microsoft Scripting Runtime)
'  ・シート名: "フォルダ作成"
'----------------------------------------------------'

Sub CreateFolder_M()
'----------------------------------------------------'
'新規フォルダを作成  (複数)
'----------------------------------------------------'
 Sheets("フォルダ作成").Select
'親フォルダ内に新規フォルダを作成
 wk_gyo = 6
 wk_Rng = "B" & wk_gyo
 
 wk_FName = Sheets("フォルダ作成").Cells(wk_gyo, 2).Value
 Do While wk_FName <> ""
    Range(wk_Rng).Select
    Call CreateFolder_s
    wk_gyo = wk_gyo + 1
    wk_Rng = "B" & wk_gyo
    wk_FName = Sheets("フォルダ作成").Cells(wk_gyo, 2).Value
 Loop
 
End Sub

Sub CreateFolder_s()
'----------------------------------------------------'
'新規フォルダを作成 (単行)
'----------------------------------------------------'
'カーソルの位置を取得
 Sheets("フォルダ作成").Select
 wk_gyo = ActiveCell.Row
 wk_FName = Sheets("フォルダ作成").Cells(wk_gyo, 2).Value
 
 'フォルダ名組み立て
 wk_cnt = 3
  For wk_cnt = 3 To 20
     wk_FName = wk_FName & Sheets("フォルダ作成").Cells(wk_gyo, wk_cnt).Value
  Next wk_cnt
  
 '新規フォルダを作成
 Call CreateFolder(wk_FName)

End Sub

Sub CreateFolder(wk_FName)
'----------------------------------------------------'
'新規フォルダを作成
'----------------------------------------------------'
'親フォルダの有無を確認
 wk_Path = Sheets("フォルダ作成").Cells(2, 4).Value
 If fso.FolderExists(wk_Path) = False Then
    MsgBox wk_Path & " は存在していません。!"
    GoTo endstp
 End If

 FolderName = "" & wk_Path & wk_FName & ""
   
'新規フォルダを作成
 With fso
   If .FolderExists(FolderName) = False Then
      .CreateFolder (FolderName)
      Else
       MsgBox FolderName & " は既に存在しています。"
      End If
 End With
 
endstp:
     
End Sub

======================================================================



以上、「Silver - RightWay」をご利用いただき有難うございます。

シルバーライトウェイ
愛知県 瀬戸市 東松山町

inserted by FC2 system