41.フォルダを作成する


フォルダを作成するにはMkDirステートメントを使用します。

構文

MkDir(pathname)

pathname 作成するフォルダ名を文字列または式で指定します。

以下のコードでは、ボタン(Command1)を押した時に、"C:\vb_test"フォルダを作成します。その際、 既にフォルダが存在する場合や上位のフォルダが存在しなかった場合にメッセージを表示するようにしています。

Private Sub Command1_Click()
On Error GoTo Err_Mk
Dim strFolder As String

'作成するフォルダ名を指定します。必要に応じて変更してください。
strFolder = "C:\vb_test"

'フォルダを作成します
MkDir (strFolder)

'問題なければここでプロシージャを終了
Exit Sub

'フォルダを削除する際のエラー処理
Err_Mk:
Select Case Err.Number
    Case 75
    MsgBox "フォルダが既に存在するため作成できません"

    Case 76
    MsgBox "上位フォルダが存在しないため、作成できません"

    Case Else
    MsgBox "予期しないエラーが発生したため、削除できません"
End Select

End Sub

サンプルプログラムのダウンロード(5.08KB)
※No.41とNo.42は共通のサンプルプログラムです。


42.フォルダを削除する

フォルダを削除するにはRmDirステートメントを使用します。

構文

RmDir(pathname)

pathname 削除するフォルダ名を文字列または式で指定します。

以下のコードでは、ボタン(Command2)を押した時に、"C:\vb_test"フォルダを削除します。その際、フォルダが存在しなかった場合 あるいはフォルダが空で無い場合ににメッセージを表示するようにしています。

Private Sub Command2_Click()
On Error GoTo Err_Rm

Dim strFolder As String
Dim ret As Integer

'削除するフォルダ名を指定します。必要に応じて変更してください。
strFolder = "C:\vb_test"

'削除の確認
ret = MsgBox(strFolder & "を削除してもよろしいですか。", vbYesNo)

'「はい」を選択した場合(「いいえ」のときは何もしない)
If ret = vbYes Then
    'フォルダを削除します
    RmDir (strFolder)
End If

'問題なければここでプロシージャを終了
Exit Sub

'フォルダを削除する際のエラー処理
Err_Rm:
Select Case Err.Number
    Case 75
    MsgBox "フォルダが空で無い場合は削除できません"

    Case 76
    MsgBox "フォルダが存在しないため、削除できません"

    Case Else
    MsgBox "予期しないエラーが発生したため、削除できません"
End Select

End Sub

サンプルプログラムのダウンロード(5.08KB)
※No.41とNo.42は共通のサンプルプログラムです。


戻る