タイトル欄のアドレスは、エクセルファンクラブの該当する頁へのリンク先です。
詳しい事は、こちらのお願いをご覧になってください。
1
印刷範囲を設定するには?
2
エクセルの通常使うプリンターを変更
3
指定のセルに、各ページ数を表示して印刷
4 Excelの全ての文書で、通常使うプリンタを変更したい
5
現在のページ設定で1ページ当りの印刷可能範囲をポイントで取得するには?
6
セルに設定している色を無視して文字色は黒、背景は白で印刷するには
7
フォルダ名、ファイル名、シート名に変数を使うには
8
シート毎にプリンタを変えるには
9
ページ番号表示を逆順で表示するには
10 最終ページだけのページ番号の横に「終了」と入れるには?
11 印刷設定を複写するには?
12 印刷範囲を全シートに一括で設定するには
13 印刷のヘッダにパスをいれるには?
14
1シートの印刷ページ数を取得するには?
15 開いている複数のブックの全てのシートにページ数を入れて印刷するには
16 一つのブックの全てのシート、複数のブックの全てのシートを印刷するには
17 印刷フッターに、複数のセルの値を設定するには
18 新規ファイルの印刷設定を既定値に戻したい
19 ページを指定して印刷するには
20 ブックの任意のシートを一括して印刷するには
1 | 印刷範囲を設定するには? |
Excel97、Excel2000 共通 印刷したい範囲を選択し、「ファイル」、「印刷範囲」、「印刷範囲の設定」。 |
|
Sheet1、A1セルからJ10セルの範囲で設定します Sub test() Worksheets("Sheet1").PageSetup.PrintArea = "A1:J10" End Sub このコードの使い方は、マクロの使い方(1)標準モジュールにあります。 |
|
アクティブなシートの、使用している範囲を設定します。 Sub test() ActiveSheet.PageSetup.PrintArea = Range(Cells(1, 1), _ Cells(Cells.SpecialCells(xlCellTypeLastCell).Row, _ Cells.SpecialCells(xlCellTypeLastCell).Column)).Address End Sub このコードの使い方は、マクロの使い方(1)標準モジュールにあります。 |
|
2 | エクセルの通常使うプリンターを変更 |
Sub
test() Application.ActivePrinter = "プリンタ名" End Sub このコードの使い方は、マクロの使い方(1)標準モジュールにあります。 プリンタ名は、マクロの自動記録で確認します。 ただし、バージョンによって書き方が異なりますので、注意が必要です。 両方のバージョンで対応させたい場合。 |
|
3 | 指定のセルに、各ページ数を表示して印刷 http://cgi.fuji.ne.jp/~fj2094/cgi-bin1/wwwlng.cgi?print+200011/00110146.txt 「ページ数を自動計算させるにはどうすれば?」 【編集ラウンジ】 |
1ページづつを印刷する都度、A1セルに該当ページ数を表示させてから、印刷作業を実行しています。 Sub ページ数印刷2() Dim page As Integer, j As Integer, Lastcol As Integer '最終ページ数取得 page = (ActiveSheet.HPageBreaks.Count + 1) * (ActiveSheet.VPageBreaks.Count + 1) '1ページ目から最終ページまで以下の作業を繰り返す For j = 1 To page 'A1セルに各ページ数を表示 Cells(1, 1) = (j & " / " & page & " ページ") '該当ページだけを印刷 ActiveSheet.PrintOut From:=j, To:=j, Copies:=1, Collate:=True Next End Sub このコードの使い方は、マクロの使い方(1)標準モジュールにあります。 |
|
4 | Excelの全ての文書で、通常使うプリンタを変更したい http://www.keep-on.com/~excelyou/2000lng4/200006/00060125.txt 「Excelの全ての文書で、通常使うプリンタを変更したい」 【VBAラウンジ】 |
個人用マクロブック(PERSONAL.XLS)に以下のコードを記入します。 プリンターの機種設定 " " の中身はマクロの自動記録で確認します。 マクロの自動記録で、プリンタ名を取得するには ただし、バージョンによって書き方が異なりますので、注意が必要です。 両方のバージョンで対応させたい場合。 |
|
5 | 現在のページ設定で1ページ当りの印刷可能範囲をポイントで取得するには? |
Sub
test() On Error GoTo err1 a = Application.ExecuteExcel4Macro("get.document(64)") b = Application.ExecuteExcel4Macro("get.document(65)") MsgBox Cells(a, b).Top & Chr(10) & Cells(a, b).Left Exit Sub err1: ActiveSheet.Cells(60000, 200) = True '範囲外の適当なセルに何か書きこむ a = Application.ExecuteExcel4Macro("get.document(64)") b = Application.ExecuteExcel4Macro("get.document(65)") ActiveSheet.Cells(60000, 200).Delete MsgBox Cells(a, b).Top & Chr(10) & Cells(a, b).Left End Sub このコードの使い方は、マクロの使い方(1)標準モジュールにあります。 |
|
6 | セルに設定している色を無視して文字色は黒、背景は白で印刷するには |
Excel97、Excel2000 共通 [ファイル]、[ページ設定]、[シート]、[白黒印刷]にチェックを入れます。 |
|
7 | フォルダ名、ファイル名、シート名に変数を使うには |
Sub
test() Dim Finame As String, Foname As String, Sheetname As String Foname = "miko" 'フォルダ名 Finame = "test" 'ファイル名 Sheetname = "Sheet3" 'シート名 Workbooks.Open Filename:="C:\My Documents\" & Foname & "\" & Finame Worksheets(Sheetname).Activate End Sub このコードの使い方は、マクロの使い方(1)標準モジュールにあります。 |
|
8 | シート毎にプリンタを変えるには http://www.keep-on.com/~excelyou/2000lng5/200006/00060120.txt 「シート毎にプリンタ設定を変える(保存)するには」 【その他ラウンジ】 |
Private
Sub Worksheet_Activate() Application.ActivePrinter = "LPT1: の EPSON MJ-3000C" End Sub このコードの使い方は、マクロの使い方(2)該当するシートのモジュールにあります。 シートごとにこのように書くと、それぞれのシートを選択するたびに切り替わります。 ただし、バージョンによって書き方が異なりますので、注意が必要です。 |
|
9 | ページ番号表示を逆順で表示するには http://cgi.fuji.ne.jp/~fj2094/cgi-bin1/wwwlng.cgi?print+200012/00120146.txt 「フッターのページ番号表示を逆順で表示したいっす。」 【編集ラウンジ】 |
Excel2000
のみ 1. 印刷プレビューなどで総ページ数を調べます。 2. [ファイル]、[ページ設定]、[ヘッダー/フッター]、[ヘッダーの編集またはフッターの編集]で 表示したい場所に、たとえば総ページ数が 5 の場合 &[ページ番号]-6- とします。 |
|
10 | 最終ページだけのページ番号の横に「終了」と入れるには? |
Sub
Test() Dim LastPage As Integer Const cFooter As String = "ページ &P" With ActiveSheet 'アクティブシートの総ページ数取得 LastPage = (.HPageBreaks.Count + 1) * (.VPageBreaks.Count + 1) If LastPage > 1 Then 'フッター中央部にページ数を指定 .PageSetup.CenterFooter = cFooter '最終ページの一つ前のページまで印刷 .PrintOut From:=1, To:=LastPage - 1, Copies:=1, Collate:=True End If 'フッターの内容を変更 .PageSetup.CenterFooter = cFooter & " 終了" '最終ページを印刷 .PrintOut From:=LastPage, To:=LastPage, Copies:=1, Collate:=True End With End Sub このコードの使い方は、マクロの使い方(1)標準モジュールにあります。 |
|
11 | 印刷設定を複写するには? http://www.keep-on.com/~excelyou/2000lng5/200007/00070031.txt 「印刷設定を複写するには?」 【その他ラウンジ】 |
Excel97、Excel2000 共通 1. 複写元のシートをアクティブにし、シートの見出しを[Ctrl]を押しながら 複写先のシート見出しを選択します。 2. ファイル、ページ設定で、ダイアログを開き、何もせずそのまま[OK]を押すと アクティブなシートのページ設定がコピーされます。 |
|
マクロを使った印刷設定 Sub 印刷設定() With ActiveSheet With .PageSetup .PrintArea = "$A$1:$E$9" '印刷範囲の設定 .LeftHeader = "&T&D" 'ヘッダー左 日付時間 .CenterHeader = "&P" 'ヘッダー中央 ページNo .RightHeader = "" 'ヘッダー右 空白 .LeftFooter = "" 'ヘッダー左 空白 .CenterFooter = "" 'フッター中央 空白 .RightFooter = "&F" 'フッター右 ファイル名 .LeftMargin = Application.CentimetersToPoints(1.5) '左余白 1.5cm .RightMargin = Application.CentimetersToPoints(2.5) '右余白 2.5cm .TopMargin = Application.CentimetersToPoints(2#) '上余白 2.0cm .BottomMargin = Application.CentimetersToPoints(1#) '下余白 1.0cm .HeaderMargin = Application.CentimetersToPoints(0.8) 'ヘッダー余白 0.8cm .FooterMargin = Application.CentimetersToPoints(1.8) 'フッター余白 1.8cm .Orientation = xlLandscape '用紙横向き設定 .PaperSize = xlPaperB5 '用紙サイズをB5に設定 End With .PrintPreview '印刷プレビューで確認 End With End Sub このコードの使い方は、マクロの使い方(1)標準モジュールにあります。 |
|
12 | 印刷範囲を全シートに一括で設定するには |
Sub
myPrintArea() Dim Sh As Worksheet Dim pCell As Range On Error Resume Next Set pCell = Application.InputBox("印刷範囲をマウスでドラッグして下さい。", Type:=8) If pCell Is Nothing Then Exit Sub For Each Sh In Worksheets Sh.PageSetup.PrintArea = pCell.Address Next Sh End Sub このコードの使い方は、マクロの使い方(1)標準モジュールにあります。 |
|
13 | 印刷のヘッダにパスをいれるには? http://www.keep-on.com/~excelyou/2000lng1/200007/00070105.txt 「印刷のヘッダにパスをいれるには?」 【編集ラウンジ】 |
Private
Sub Workbook_BeforePrint(Cancel As Boolean) ActiveSheet.PageSetup.CenterHeader = ThisWorkbook.FullName End Sub このコードの使い方は、マクロの使い方(3)This Workbookのモジュールにあります。 |
|
14 | 1シートの印刷ページ数を取得するには? |
Sub
Test2() MsgBox "全ページ数は" & (ActiveSheet.HPageBreaks.Count + 1) * _ (ActiveSheet.VPageBreaks.Count + 1) & "ページです。" End Sub このコードの使い方は、マクロの使い方(1)標準モジュールにあります。 |
|
15 | 開いている複数のブックの全てのシートにページ数を入れて印刷するには |
Sub
test() Dim pg As Integer, wb As Workbook, ws As Worksheet For Each wb In Workbooks For Each ws In wb.Worksheets pg = pg + 1 ws.PageSetup.CenterFooter = pg & "ページ" ws.PrintOut Next Next End Sub このコードの使い方は、マクロの使い方(1)標準モジュールにあります。 |
|
16 | 一つのブックの全てのシート、複数のブックの全てのシートを印刷するには http://cgi.fuji.ne.jp/~fj2094/cgi-bin5/wwwlng.cgi?print+200010/00100056.txt 「移動やコピーでセルの設定を維持するには」 【その他ラウンジ】 |
Excel97、Excel2000 共通 同一ブックの場合 シート下部のシート見出しをCtrlを押しながらクリックし、複数のシートを選択します。 そのまま印刷すれば、選択したシート全てが印刷できます。 複数のブックの場合 1. 新規BOOKと、印刷したいシートを含んだ全てのBOOKを開きます。 2. 印刷したいシートの下のタブを右クリック、コピーを選び、コピー先に新規BOOKを選ぶことで、 次々に新規BOOKにコピーしていきます。 3. そうすれば新規BOOKが印刷したいシートの集合状態になりますので、 上の「同一ブックの場合」の方法で印刷します。 |
|
17 | 印刷フッターに、複数のセルの値を設定するには http://cgi.fuji.ne.jp/~fj2094/cgi-bin1/wwwlng.cgi?print+200010/00100226.txt 「見出しを各ページに印刷するように合計を下部に表示するには?」 【編集ラウンジ】 |
Private
Sub Workbook_BeforePrint(Cancel As Boolean) Dim atai As String , daimei As String With ActiveSheet.PageSetup '.LeftFooter = "" .CenterFooter = "" '.RightFooter = "" End With atai = Range("A7") & " " & Range("B7") & " " & Range("C7") daimei = "事象A" & " " & "事象B" & " " & "事象C" ActiveSheet.PageSetup.CenterFooter = daimei & Chr(10) & atai End Sub このコードの使い方は、マクロの使い方(1)標準モジュールにあります。 |
|
18 | 新規ファイルの印刷設定を既定値に戻したい http://www.keep-on.com/~excelyou/2000lng1/200009/00090081.txt 「テンプレートファイルの場所を見つけたい」 【編集ラウンジ】 |
Excel97、Excel2000
共通 テンプレートで設定が変更されている場合、XLSTARTフォルダに入っているBook.xltとSheet.xltを削除します。 |
|
Excel97、Excel2000
共通 OSレベルでプリンタのプロパティが変更されている場合、 [スタート]-[設定]-[プリンタ]でお使いのプリンタを右クリックしてプロパティの設定を戻します。 |
|
19 | ページを指定して印刷するには http://www.ae.wakwak.com/~efc21/cgi-bin/wwwlng.cgi?print+200103/01030250.txt 「マクロで印刷」 【VBAラウンジ】 |
アクティブシートの、1〜5ページまで印刷します Sub test() ActiveSheet.PrintOut From:=1, To:=5 '1〜5ページまで印刷 End Sub このコードの使い方は、マクロの使い方(1)標準モジュールにあります。 |
|
20 | ブックの任意のシートを一括して印刷するには http://cgi.fuji.ne.jp/~fj2094/cgi-bin5/wwwlng.cgi?print+200010/00100056.txt 「移動やコピーでセルの設定を維持するには」 【その他ラウンジ】 |
Excel97、Excel2000 共通 シート下部のシート見出しをCtrlを押しながらクリックし、複数のシートを選択します。 そのまま印刷すれば、選択したシート全てが印刷できます。 |
|
アクティブシートの、Sheet2, Sheet4を印刷します Sub test() Sheets(Array("Sheet2", "Sheet4")).PrintOut End Sub このコードの使い方は、マクロの使い方(1)標準モジュールにあります。 |