- ベストアンサー
VBAでプリンターの設定を変更してシート2のみ印刷する方法
nishi6の回答
http://www.okweb.ne.jp/kotaeru.php3?q=196084 に回答しておきました。 別の質問の回答を利用されているようですが、処理内容をみて、簡単にしてあります。 ご参考に。
関連するQ&A
- VBAの範囲印刷設定を修正したいのですが
VBAの初心者です。詳しく教えてください。 1.下記のVBAでシートを非表示にしたときに実行時エラー1004が出るのですが どうしたらよいのですか。 ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー Sub printappointedrange() Worksheets("シート1").Activate Range("A1:AB42").Select 'セル範囲の選択 With ActiveSheet .PageSetup.PrintArea = Selection.Address '印刷範囲の指定 .PrintOut '印刷 .PageSetup.PrintArea = False '印刷範囲のクリア End With End sub ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー 2.シートに印刷ボタン作成して、印刷はできるのですが、印刷する前にプリンターの設定を変更する方法は無いのですか。
- ベストアンサー
- オフィス系ソフト
- 印刷範囲を設定するvbaコード
エクセルシートの印刷範囲を設定するvbaコードで Sub Macro1() With ActiveSheet.PageSetup .PrintArea = "$A$1:$c$10" End With End Sub としてるのですが、 "$A$1:$c$10"の部分を Range(Cells(1, 1), Cells(10,3)) 形式でやりたいのですが、 うまくできません。 Sub Macro1() With ActiveSheet.PageSetup .PrintArea = Range(Cells(1, 1), Cells(10,3)) End With End Sub としても、全部が印刷範囲として選択されてしまいます。 というか、印刷範囲が設定されません。
- ベストアンサー
- Excel(エクセル)
- エクセルVBA印刷範囲指定とヘッダーフッター
1か月のうちの前期と後期のシートがそれぞれあり、前期シートを範囲指定して領収書の一部を印刷したいのですがなぜか、前に作ったヘッダーとフッターが前期だけ印刷されてしまいます。 どこに隠れているのか謎なのです。前に悩みながら作ったシートがどこかに隠れているのでしょうか? また、同じ様式のシートなのですが前期は80%にしなくてもなぜか一枚に収まります。 不思議でなりません・・・全部消したはずなのですが Sub 印刷範囲設定領収書前期() With Worksheets("領収前期") .PageSetup.PrintArea = "G1:BB91" .PrintPreview End With End Sub Sub 印刷範囲設定領収書後期() With Worksheets("領収後期") .PageSetup.Zoom = 80 .PageSetup.PrintArea = "G1:BB91" .PrintPreview End With End Sub
- 締切済み
- Excel(エクセル)
- 複数シートをVBAで印刷
エクセル2010VBAを使って仕事の効率化を勉強中です。 歳入日計表のシート31日分を作り、歳入月計表として合計をまとめていますが 日々印刷範囲を決めて一日分のシート印刷するのをVBA処理したいのですが できません。 1日分はこんな感じでできるのですが・・・ 31日分をどのように処理すれば日々印刷可能になるのでしょうか? お願いいたします! Sub 日計表印刷設定() With Worksheets("1") .PageSetup.PrintArea = "A2:G71" .PageSetup.LeftMargin = 55 .PageSetup.TopMargin = 40 .PageSetup.Zoom = 80 .PrintPreview End With End Sub
- 締切済み
- その他(プログラミング・開発)
- EXCELで複数のシートを同時に印刷範囲の設定する
質問No.4133551、boodori2000さん 2008-06-27 17:26:01のずいぶん以前のご質問の続きで、もしわ けありません。大変悩んでおりまして、何卒教えて頂きたくよろしくお願いいたします。 end-uさんの以下のご返答は理解させて頂きました、大変ありがとうございました。 Sub try2() Dim ws As Worksheet For Each ws In Worksheets ws.PageSetup.PrintArea = "$A$1:$B$2" Next End Sub 上記マクロを使用させて頂き、全てのシートの印刷範囲設定ができました。ありがとうございます! しかし、改ページ設定2ページ/シート(青い破線)をするため下記の文言を追加致しましたが、エラーが出てしまい ます。コンマの使い方がおかしいとのエラーがでます。、何がなんだか、、、1日かかっても解決できず悩んでおります。 何卒、どなたか、ご教授頂きたく Sub try2() Dim ws As Worksheet For Each ws In Worksheets ws.PageSetup.PrintArea = "$A$1:$G$35","$A$37:$G$70" Next End Sub 補足 "$A$1:$G$35"← 1ページ目の範囲 "$A$37:$G$70" ←2ページ目の範囲 どなたか、ご教授の程を何卒よろしくお願い致します。
- 締切済み
- SE・インフラ・Webエンジニア
- エクセル マクロで教えてください
下記のマクロがうまく働きません SUB印刷01は単独ではいくのですが、繰返しをするとプレビューの行で止まります。SHEETオブジェクトがおかしいというのですが私には分かりません宜しくお願いします Sub 印刷01() With ActiveSheet.PageSetup .PrintQuality = 600 .CenterHorizontally = True .CenterVertically = False .Orientation = xlLandscape .Draft = False .PaperSize = xlPaperA4 .FirstPageNumber = xlAutomatic .Order = xlDownThenOver .BlackAndWhite = False .Zoom = 47 .PrintErrors = xlPrintErrorsDisplayed End With ActiveWindow.SelectedSheets.PrintPreview ActiveWindow.SelectedSheets.PrintOut From:=1, To:=1, Copies:=1, Collate:=True End Sub Sub 印刷繰返し() Dim WS As Object For Each WS In Sheets WS.Activate Call 印刷01 Next End Sub
- ベストアンサー
- オフィス系ソフト
- シートのセルの数値がゼロ0のときは、印刷しない方法は
Windows7 Excel2007でマクロ作成の初心者です。 シート数が20枚のブックがあります。セルH3には数値が入っています。 このセルが空欄もしくは数値0のときは、そのシートの印刷をやめたいです。 現在、印刷は以下のコードで実行しています。印刷を省略するにはどうしたらよろしいでしょうか。 Sub シートの印刷() Application.ScreenUpdating = False Dim i As Integer For i = 1 To Worksheets.Count - 9 Worksheets(i).Activate ActiveSheet.PageSetup.PrintArea = "$B$46:$U$89" ActiveWindow.SelectedSheets.PrintOut Next i Worksheets(1).Activate Application.ScreenUpdating = True End Sub
- ベストアンサー
- Visual Basic
- ブックの中の1枚だけ選んで印刷したい
win7とExcel2007でマクロ作成中の初心者です。 以下、ファイルの中の複数シートを印刷できました。 Private Sub 請求書印刷_Click() Application.ScreenUpdating = False Unload Me 請求書の印刷100 '請求書印刷 Worksheets(1).Select ActiveWindow.DisplayHorizontalScrollBar = False End Sub Sub 請求書の印刷100() ' Dim i As Integer For i = 1 To Worksheets.Count - 8 With Worksheets(i) If .Range("F11").Value <> 0 Then .PageSetup.PrintArea = "$B$1:$U$44" .PrintOut End If End With Next i Worksheets(1).Activate End Sub ------------------------------------ 今度は、同一のファイルから、指定の単一のシートを印刷したいので 以下のコードを実行すると、 Private Sub 単数印刷_Click()' Application.ScreenUpdating = False Unload Me Unload G印刷 Dim i As Integer With 名簿リスト2 For i = 0 To .ListCount - 1 If .Selected(i) Then 請求書の印刷範囲200 ' Worksheets(.list(.ListIndex)).PrintPreview Worksheets(Split(.list(.ListIndex - 0), " ")(1)).PrintPreview ' End If Next i End With ActiveWindow.DisplayHorizontalScrollBar = False GH印刷.Show End Sub Sub 請求書の印刷範囲200() ' ActiveSheet.Unprotect Dim i As Integer For i = 1 To Worksheets.Count - 8 With Worksheets(i) .PageSetup.PrintArea = False '印刷範囲のクリア If .Range("F11").Value <> 0 Then .PageSetup.PrintArea = "$B$1:$T$44" End If End With Next i Worksheets(1).Activate End Sub 以下の行が黄色くなりマクロがエラーとなり停止します。 エラーは 実行時エラー9 インデックスが有効範囲にありません となります。 Worksheets(Split(.list(.ListIndex - 0), " ")(1)).PrintPreview ' これと同様のファイルで試すと何なく1枚だけ印刷できました。 このエラーの原因はなんでしょうか?解決方法を教えてください。
- 締切済み
- Visual Basic
- エクセル ボタン マクロ 修正
Sub 印刷() Dim a As Variant a = MsgBox("印刷しますか?", vbYesNo) If a = vbNo Then Exit Sub With Sheets("1") .Cells.FormatConditions.Delete .PageSetup.PrintArea = Range("A1:K73").Address .PrintOut End With End Sub として使用していたのですが シートをコピーして使用する事になり コピーした際印刷ができなくってしまうため修正したいのですが わからないため教えていただきたいです With Sheets("1")ここの部分を今現在ボタンを置いているシートを選択にしたいのです
- ベストアンサー
- Excel(エクセル)
- エクセル・マクロボタンの表示を変更したい
初歩的質問ですみません。 Excel2000で、VBAの修正を頼まれています。 シート上に印刷用ボタンが2個、既に作られているので、その表示タイトルを (例えば、「4月分印刷→5月分印刷」のように)変更したいのです。 しかし、 右クリックしてもタイトルにカーソルが点滅しませんし、マクロ名などの表示も出てきません。 ユーザーフォームもありませんでした。 コードは(標準モジュールではなく)Sheetに以下のように記述されています。 Private Sub Printout_Click() ActiveSheet.PageSetup.PrintArea ="$A$2:$G$20" End Sub Private Sub Printout2_Click() ActiveSheet.PageSetup.PrintArea ="$F$2:$L$20" End Sub どこにも、ボタンのタイトル表示が見つからないので、変更できず困っています。 (非表示のSheetなどもありません) どなたか、ご存知の方がいらしゃったら、教えて下さい。 よろしくお願いします。
- ベストアンサー
- オフィス系ソフト
お礼
・回答が帰って着ないので、新しく質問をさせてもらいましたが、覚えていてくれたので助かりました。 ・nishi6さんには、いろんな質問の回答を何回もいただきありがとうございました。 ・これからも、よろしくお願いします。