タイトル通りではありますが、
1.同じフォルダにあるファイルを開く
2.印刷する(保存の必要はありません)
3.閉じる
4.次のファイルを開く
5.1~4をフォルダ内のファイル全てに適用するまで繰り返す
上記のマクロを作りたいのですが、
初心者の為、なかなか進みません。
一つずつ分解して作成したりもしましたが、どうも
ゴールが見えてこない為、知識ある方に作成していただき
それをじっくりと習得したく思います。
どなたかマクロ作成お願いできますでしょうか。
No.2ベストアンサー
- 回答日時:
Sub aaa()
f = Dir("*.xlsx")
Do While f <> ""
Set book = Workbooks.Open(f)
↓ここは、マクロの記録でオプション指定などをいろいろした方が良いでしょう。
ActiveWindow.SelectedSheets.PrintOut
book.Close
f = Dir
Loop
End Sub
No.3
- 回答日時:
こんにちは! 教えます。
①新規excel 開いて、マクロコードウィンドウで標準モジュール追加し、
以下のコードを貼り付けてください。このウィンドウ閉じてください
②excelウィンドウのメニューから開発→挿入で ボタン(フォームコントロールを挿入してください。
ボタン範囲選んだらマクロの登録画面が表示されます。表示されたPrint_Click を選んでOKおしてください。(ボタンの名前を好きな名前で結構です)
これで 印刷マクロは完成です。
ボタン押したらファイル選択画面が表示されますので印刷したいファイルを選らんでOK 印刷が始まります。
デフォルトプリンターに設定しています。
DocuWorksプリンターなどデフォルトにしておけばファイルで保存されます。
'マクロコード
Sub Print_Click()
Dim myfileName As Variant
Dim myFile As Variant
Dim strFilePath As String
Dim strfileName As String
Dim ws As Worksheet
'ファイルを開くダイアログを開きます
myfileName = _
Application.GetOpenFilename( _
FileFilter:="Excel ファイル (*.xls; *.xlsx; *.xlsm),*.xls; *.xlsx; *.xlsm" & _
",CSVファイル(*.csv),*.csv" _
, FilterIndex:=1 _
, Title:="Excelファイル選択" _
, MultiSelect:=True _
)
' 単純なループカウンタ
Dim lp1 As Long, lp2 As Long
'ファイルが選択されているときは
'選択したファイルをWorkbooks.Openメソッドで開きます
Filename = Filename
If IsArray(myfileName) Then
For Each myGetFileName In myfileName
Workbooks.Open myGetFileName
UpdateLinks = 0
IgnoreReadOnlyRecommended = Ture
Application.ScreenUpdating = False
Set Workbook = ActiveWorkbook
Sheets(1).Activate
Worksheets.Select
ActiveWindow.SelectedSheets.PrintOut Copies:=1, ActivePrinter:= _
"Active Printer Series on Ne01:", Collate:=True
Application.DisplayAlerts = False
ActiveWindow.Close
Application.ScreenUpdating = True
' 集計処理を行う
' ***************
Next
MsgBox " 印刷終了しました。"
Else
MsgBox "キャンセルしました。"
End If
Exit Sub
End Sub
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) 2つのマクロを連続して動かしたい 3 2022/09/20 23:46
- Visual Basic(VBA) エクセルのマクロについて教えてください。 1 2023/08/08 11:02
- Visual Basic(VBA) エクセルのマクロについて教えてください。 2 2023/07/21 09:42
- Excel(エクセル) 【マクロ】webアドレスにて指定されたCSVファイル【excelソフト表示】を印刷する件 1 2023/02/15 01:52
- Visual Basic(VBA) エクセルのマクロについて教えてください。 2 2023/07/15 15:48
- Visual Basic(VBA) エクセルのマクロについて教えてください マクロを実行すると メッセージボックスが表示されて okをク 4 2023/07/05 19:32
- Visual Basic(VBA) エクセルのマクロについて教えてください 物件ごとのフォルダを作成してます そのフォルダ内にサブフォル 2 2023/07/02 17:58
- Visual Basic(VBA) Excelのマクロについて教えてください。 作業フォルダ内に2つのファイルがあります。 このファイル 2 2023/07/09 13:40
- Visual Basic(VBA) エクセルのマクロについて教えてください。 1 2023/02/21 11:19
- Visual Basic(VBA) DisplayAlertsブロパティで ”実行時エラー424オブジェクトが必要です” 5 2022/05/15 18:02
このQ&Aを見た人はこんなQ&Aも見ています
-
性格の違いは生まれた順番で決まる?長男長女・中間子・末っ子・一人っ子の性格の傾向
同じ環境で生まれ育っても、生まれ順で性格は違うものなのだろうか。家庭教育研究家の田宮由美さんに教えてもらった。
-
複数ファイルにある特定のシートを一度に印刷したい
Excel(エクセル)
-
フォルダ内のエクセル文書をすべて印刷したいデス
Excel(エクセル)
-
ファイルのパス指定での印刷方法
Visual Basic(VBA)
-
-
4
エクセルVBAでセルに入力したパスでブックを開く
Excel(エクセル)
-
5
VBAでホルダー内のPDFを一括印刷したい
Excel(エクセル)
-
6
Excelで複数のファイルを1度に印刷したいです。
Excel(エクセル)
-
7
VBAで保存しないで閉じると空のBookが残る
Excel(エクセル)
-
8
複数ブックの印刷マクロを作成したいと思っています。
Excel(エクセル)
-
9
フォルダ内にあるPDFファイルを一括で印刷する方法※右クリック→印刷はNG
PDF
-
10
エクセルvbaでdocuworksprinterの出力先を設定
Visual Basic(VBA)
-
11
ExcelVBAでPDFを閉じるソース
その他(Microsoft Office)
-
12
EXCELで特定のセルに表示された項目をヘッダーやフッターに出力するには
Excel(エクセル)
-
13
PDFファイルを開かずに印刷したい
Visual Basic(VBA)
-
14
エクセルで、特定のシートを印刷するVBA
Excel(エクセル)
-
15
PDFファイルを開き、印刷し、閉じるマクロ
Visual Basic(VBA)
-
16
VBA PDFファイル印刷後のAcrobatReaderDCの起動画面を閉じたい
Excel(エクセル)
-
17
フォルダ内のエクセルを開かずに印刷したいです。
Excel(エクセル)
-
18
VBAでファイルを開くときにファイル名でワイルドカードを使用したいです
その他(プログラミング・Web制作)
-
19
vbaでpdfを開いて1ページ目のみ印刷する。
PDF
-
20
Excel VBAで同じフォルダ内のファイルを開くには?
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルのシートの数を数えた...
-
EXCEL VBA 指定したファイルが...
-
エクセルマクロで不特定なファ...
-
エクセルのxls形式からxlsx形式...
-
vlookup関数の引数を変数で指定...
-
エクセルファイルをHTML化する...
-
ファイルの保存場所を変えたら...
-
【マクロ】読取専用のファイル...
-
VLookupで参照する範囲を変数で...
-
エクセル 複数ファイルの一括...
-
ファイル名を変更するマクロ
-
エクセル(マクロ)のファイル...
-
ファイルを開かずにマクロを実行
-
ACCESSのマクロを自動で実行さ...
-
vba dirにおけるフォルダ内にあ...
-
【Excel VBA】ファイル名が一...
-
ハイパーリンクの使用方法
-
Excelファイルがマクロを含むか...
-
vba初心者です。 質問です。 毎...
-
VBA EXCELファイル選択⇒指定セ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
EXCEL VBA 指定したファイルが...
-
エクセルマクロで不特定なファ...
-
VBAでワークブックの名前を変数...
-
フォルダ内のexcelファイルを順...
-
エクセルのxls形式からxlsx形式...
-
エクセル 複数ファイルの一括...
-
エクセルのシートの数を数えた...
-
accessフォルダを移動したらフ...
-
vlookup関数の引数を変数で指定...
-
Accessのaccdbファイルを起動で...
-
ファイルを開かずにマクロを実行
-
【Excel VBA】ファイル名が一...
-
EXCELマクロを無効にして開く方法
-
エクセル(マクロ)のファイル...
-
ACCESS VBAでファイルを開くダ...
-
Excel VBA でファイルが開かれ...
-
ファイルの保存場所を変えたら...
-
フォルダ内のブック全部にパス...
-
vba初心者です。 質問です。 毎...
-
エクセルマクロ 異なるファイ...
おすすめ情報
ぽち101さん
ご回答ありがとうございます。
実際のところ、印刷する前に特定の列を
非表示してから印刷するという手順があるのですが、
列の非表示は自分でやりかたが分かったたので、
教えていただいたものに組み合わせてみようと想定しておりました。
excel2010になります・・・
拡張子は.xlsxです。
artooさん
ありがとうございます。
教えていただいたものに、
以下のように開きたいフォルダのアドレスを入力しましたが、
なぜか別のフォルダ(どこかは現在調べております)の
エクセルが開いて印刷されてしまいました。
私のフォルダの入力場所が間違っておりますでしょうか。
Sub aaa()
f = Dir("*.xlsx")
Do While f <> "ここに開きたいフォルダのアドレスを入力しました"
Set book = Workbooks.Open(f)
皆様 ご回答ありがとうございます。
作成していただいたものを使用して、
もう少しで完成しそうです。