
下記のマクロをご覧ください
Aフォルダにある複数のファイル【どんな種類でもOK】1回の実行で
1個つず、Bフォルダへ移動するマクロです。動きます。
このマクロにて、Aフォルダにファイルが1つも無い時に
【ファイルがありません】とメッセージが表示されるようにしたいです。
ご存じの方いましたら、宜しくお願いいたします
【AフォルダからBフォルダへファイルを1つずつ移動するマクロ】
Sub フォルダAから時系列で1つずつフォルダBへ移動する()
Dim f, fo, dt As Date, i As Long
Dim fn As String, ex As String, tmp As String
Dim pathB As String
'PDFfaxを最初に受信するフォルダを設定
Const pathA = "C:\Users\2020\Desktop\フォルダA"
'太田個人作業フォルダを設定
pathB = "C:\Users\2020\Desktop\" & ChrW(12886) & " あいうえお\フォルダA"
With CreateObject("Scripting.FileSystemObject")
If Not (.FolderExists(pathA) And .FolderExists(pathB)) Then
MsgBox "指定フォルダが存在しません"
Exit Sub
End If
dt = Now + 1
For Each f In .getfolder(pathA).Files
If f.DateLastModified < dt Then
dt = f.DateLastModified
Set fo = f
End If
Next f
If Not fo Is Nothing Then
ex = "." & .GetExtensionName(fo.Name)
fn = Left(fo.Name, Len(fo.Name) - Len(ex))
tmp = .BuildPath(pathB, fn & ex)
i = 1
While .FileExists(tmp)
i = i + 1
tmp = .BuildPath(pathB, fn & "(" & i & ")" & ex)
Wend
.MoveFile fo.Path, tmp
End If
End With
End Sub
No.3
- 回答日時:
連投すみません
ファイルが無い場合に無駄な処理をさせるべきでないかもしれませんね
(取得設定段階で確認するべきかな)
メイン処理前に dir 関数で調べるのが良いか・・
If Not Dir(pathA & "\*") <> "" Then MsgBox "【ファイルがありません】", , "Aフォルダ": Exit Sub
No.2
- 回答日時:
ご質問に回答していませんでした
>【ファイルがありません】とメッセージが表示されるようにしたいです。
Next fの後で確認すれば良いですが・・#1の様に変更するのでしたら
If Not fo Is Nothing Thenの否定で
.MoveFile fo.Path, tmp
Else
MsgBox "【ファイルがありません】", , "Aフォルダ"
End If
No.1
- 回答日時:
こんにちは
>1つも無い時に
正しく処理をしたいと言う事だと解釈しました
Dim f, fo, dt As Date, i As Long
変数 foはvariantになっていますので 無い場合 Emptyです
これを If Not fo Is Nothing Then で弾く為には
fo As Objectとすれば、そのままNot fo Is Nothingで分岐する事が出来ると思いますよ
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
EXCEL VBA 指定したファイルが存在しない場合メッセージボックスを表示させる
Access(アクセス)
-
ファイルが見つからない時、スルーしたい。
Visual Basic(VBA)
-
エクセルVBAで5行目からオートフィルタモードに設定したいたい
Excel(エクセル)
-
-
4
EXCEL VBA セルに既に入力されている文字に文字を追加する
Excel(エクセル)
-
5
「Columns(A:C")」の列文字を数字にして表記したい"
Excel(エクセル)
-
6
excelのマクロで該当処理できなければ飛ばして進むにはどうすればよいのでしょうか
Visual Basic(VBA)
-
7
VBA データ(特定値)のある最終行を取得したい
Excel(エクセル)
-
8
別ファイルを開かず、INDIRECT関数を使用せずに、別ファイルのデータを求めたい
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Windows10でコマンドプロンプト...
-
VBA 最新のフォルダ取得
-
デスクトップの画像をhtmlに表...
-
API関数(DLL)の呼び出しにお...
-
バッチファイル フォルダを...
-
VBS サブフォルダの再帰処理に...
-
フォルダを開いて、閉じるのプ...
-
フォルダにリンクを貼りたい
-
Downloaded Program Filesはど...
-
ディレクトリ名変更してコピー...
-
ツリービューを使って、エクス...
-
Let’s Encryptでwebroot設定な...
-
C ファイル出力で、フォルダが...
-
excelマクロ 冒頭3文字が一致す...
-
【コマンドプロンプト】名前順...
-
クラウドにあるフォルダを共有...
-
exclude xcopy 除外フォルダ指...
-
Excelで指定したフォルダに保存...
-
MinGWで正規表現(regex.h)がし...
-
ファイル名と同名のフォルダを...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Windows10でコマンドプロンプト...
-
VBA 最新のフォルダ取得
-
デスクトップの画像をhtmlに表...
-
ファイル名と同名のフォルダを...
-
会社のネットワーク上のファイ...
-
ExcelのVBAでフォルダ指定がで...
-
Excelで指定したフォルダに保存...
-
VBA フォルダの複数選択ができない
-
【マクロ】ファイル名の日付に...
-
VB.NRT FolderBrowserDialogを...
-
【マクロ】フォルダにファイル...
-
ThisWorkbookがあるフォルダ更...
-
ディレクトリ名変更してコピー...
-
(C#)フォルダを指定するダイ...
-
VB6で7-ZIPのAPIを使用した圧縮...
-
VBプロジェクトでのフォルダ構...
-
パス名に2バイト文字(マルチバ...
-
Debug フォルダは消していいの?
-
フォルダにリンクを貼りたい
-
フォルダAから1つのファイルだ...
おすすめ情報