
お詳しい方、ご教授願います。
フォルダ内のすべてのブックの特定シートを一括印刷するマクロを作成しているのですが、Do While~からのループ処理が反映されず(F8キーで確認したところ、この部分の処理が丸々スルーされていました)、困っています。
2段目のIf~ではエラーが出ないので、ファイル自体は存在していることになっているかと思います。
初めて作ったものなのでおかしな部分が多々あるかもしれませんが、ご確認いただければ幸いです。
Option Explicit
Sub 一括印刷()
'ファイルを変数指定
Dim fPath As String
Dim fName As String
fPath = "C:\Users\NNN\Desktop\TestFolder1"
fName = Dir(fPath & "帳票*.xlsx")
'ファイルがあることを確認
If Dir(fName) = "" Then
MsgBox "ファイルが存在しません"
End If
'印刷ループ処理
Do While fName <> ""
Workbooks.Open fPath & fName
With ActiveWorkbook
Sheets(Array("取引A", "取引B", "取引C")).PrintOut. ActivePrinter"XXX"
.Close SaveChanges:=False
End With
Loop
End Sub
A 回答 (3件)
- 最新から表示
- 回答順に表示
No.3
- 回答日時:
以下のようにしてください。
Option Explicit
Sub 一括印刷()
'ファイルを変数指定
Dim fPath As String
Dim fName As String
fPath = "C:\Users\NNN\Desktop\TestFolder1\"
fName = Dir(fPath & "帳票*.xlsx")
'ファイルがあることを確認
If fName = "" Then
MsgBox "ファイルが存在しません"
End If
'印刷ループ処理
Do While fName <> ""
Workbooks.Open fPath & fName
With ActiveWorkbook
.Sheets(Array("取引A", "取引B", "取引C")).PrintOut ActivePrinter:="XXX"
.Close SaveChanges:=False
End With
fName = Dir()
Loop
End Sub
No.2
- 回答日時:
おはようございます
>fName = Dir(fPath & "帳票*.xlsx")
\ お忘れでは無いでしょうか?
& "\帳票*.xlsx")
If Dir(fName) = "" Then ここは Dir不要では?
No.1
- 回答日時:
>fPath = "C:\Users\NNN\Desktop\TestFolder1"
>fName = Dir(fPath & "帳票*.xlsx")
寝ぼけてるからミスるかもだけど、パスとファイル名の境がない。
fPath = "C:\Users\NNN\Desktop\TestFolder1\" ' パスの最後に \ をつけるか
fName = Dir(fPath & "帳票*.xlsx") ' \帳票*~ ファイル名の頭に \ をつける。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) 【VBA】複数ブックから特定のシートを抽出して一つのブックに集約するマクロについて 3 2022/09/04 15:05
- Visual Basic(VBA) エクセルのマクロについて教えてください。 7 2023/07/04 09:18
- Visual Basic(VBA) エクセルのマクロについて教えてください。 4 2023/07/03 09:11
- Excel(エクセル) エクセル2019でPDFファイル名に枝番号をつけたい。 アクティブワークシートを印刷した後の処理とし 4 2023/06/06 21:00
- Visual Basic(VBA) VBAのユーザーフォームのテキストボックスに入力制限をしたい 6 2022/11/15 08:28
- Access(アクセス) エクセルのマクロについて教えてください。 2 2023/02/03 16:07
- Visual Basic(VBA) Excel VBA でデータ転記について 1 2023/03/07 19:11
- Excel(エクセル) エクセルVBA、ファイル名をセルの値で保存の方法を教えてください。 おそれいります。こちらで数々のエ 6 2023/06/30 22:17
- Excel(エクセル) エクセルVBA、間違っているコード内容を正して頂けませんか? エクセルワークシートに納品書を作ったの 2 2023/08/02 21:13
- Excel(エクセル) Excel VBAどこが間違ってますか? 4 2023/07/17 10:04
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Eclipseで検索ができなくなった
-
VBAで、JPG写真の撮影日時を読...
-
0バイトのテキストファイル
-
【Excel VBA】取り込んだファイ...
-
開いているXLSファイルが読み取...
-
HTMLテキストリンクでExcelファ...
-
msgget()で指定するkey値について
-
ファイル内容を比較する方法
-
Perlで2GBを超える大きいファイ...
-
[C#]FTPでの複数のファイル...
-
main関数のコマンドライン引数...
-
ファイル作成日時と更新日時を...
-
ActiveXとそれに代わるもの
-
2GB以上のファイルを扱う方法
-
ネットワーク上のファイル
-
URIでローカルのファイルを指定...
-
CSVファイルの時刻の形式について
-
accessでクエリをExcelにエクス...
-
ATTファイルってどうやって開け...
-
ショートカットで起動した場合...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
【Excel VBA】取り込んだファイ...
-
Eclipseで検索ができなくなった
-
0バイトのテキストファイル
-
VBAで、JPG写真の撮影日時を読...
-
HTMLテキストリンクでExcelファ...
-
ファイル作成日時と更新日時を...
-
main関数のコマンドライン引数...
-
2GB以上のファイルを扱う方法
-
C++によるファイル送受信プログ...
-
【VBA】複数CSVの特定範囲を1つ...
-
BASP21のファイルアップロード...
-
HTMLまたはJavaScriptでフ...
-
サイトマップにサブドメインを...
-
VB6.0のメモリリークについて
-
ファイルの排他について
-
File.Create で作成に失敗した場合
-
ファイル更新日取得
-
VSSでチェックアウトの取消をし...
-
VBS ファイルマージ処理
-
ディレクトリのサイズの取得
おすすめ情報