![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?5a7ff87)
No.3ベストアンサー
- 回答日時:
Sub test02()
d = Worksheets("Sheet1").Range("a65536").End(xlUp).Row
MsgBox d
'MsgBox Worksheets("Sheet1").HPageBreaks.Count
n = Worksheets("Sheet1").HPageBreaks.Count
f = Worksheets("Sheet1").HPageBreaks(n).Location.Row
Worksheets("Sheet1").Range("A" & f & ":G" & d).PrintOut
End Sub
でどうですか。
---
HPageBreakだけを問題にしてます。
また最右列はH列と仮定してます。
c=Worksheets("Sheet1").Range("IV1").End(xloLeft).Row
で求められるかも
ありがとうございました。すばらしいアイディアありがとうございます。
組み込んで使わせて頂きました。
表示画面と印刷画面で、シートの選択、不要な列の非表示やフォントの設定など、いろんなことを同時にVBAで行なっていますので、アドヴァイスいただいたものを組み込むのにずいぶん日数がかかってしまいました。
私は、VBAそれほど詳しくないので、3人の方のを組み込んでとにかく使ってみました。
とてもすばらしいと思います。ただ、残念だったのが、最終ページでなくセル範囲の印刷になっていますので、ヘッダー部分のページ数が、常に1/1になってしまいました。
簡単な修正で直るのでしょうが、今の私には、まだ、そのやり方がわからない状態です。
No.2
- 回答日時:
こんばんは。
ちょっと難しいですね。
データの広さとか決められてはいないので、列数を決めないと、これはできません。
データの行は、A列で決めています。しかし、列数は、任意のことが多いので、手動で、
Const RETU As Integer = 10 の10 の部分を任意で入れてください。
使用しているデータの大きさということで、UsedRange などを使うと、あらぬ場所にまで行ってしまいます。
なお、Ver4 マクロ関数を使う理由は、VBA方式ですと、実際に、使っていると、画面の変更の際に、すべてがリセットさせられることがあるからです。
Sub Test()
Dim i As Long
'A列を起点としています。その後の列数を決めてください。
Const RETU As Integer = 10
With ActiveSheet
If .UsedRange.Cells.Count < 2 Then
MsgBox "シートが空か、ひとつのデータしかありません。", 64
Exit Sub
End If
.PageSetup.PrintArea = .Range("A1", .Range("A65536").End(xlUp)).Resize(, RETU).Address
i = ExecuteExcel4Macro("GET.DOCUMENT(50)")
.PrintOut From:=i, To:=i, Preview:=True
'.PrintOut From:=i - 1, To:=i, Preview:=True '最後のひとつ前のページを含める
End With
End Sub
ありがとうございます。
列数は、固定なのであまり気にならず、使えています。
VBAでなくエクセル4のマクロというのが、あまり詳しくないのでよくわかりませんが、3人の方のを試してみて、今のところWendy02さんのを使わせていただいております。
No.1
- 回答日時:
印刷ページ数はVBAの機能では取得できない情報なので、旧マクロ(Excel 4 マクロ)の機能を利用します。
Msgbox Application.ExecuteExcel4Macro("get.document(50)")
http://support.microsoft.com/kb/402754/ja
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) 【マクロ】webアドレスにて指定されたCSVファイル【excelソフト表示】を印刷する件 1 2023/02/15 01:52
- Excel(エクセル) エクセルの印刷範囲をページ単位で可変にする方法 3 2022/05/23 13:04
- Excel(エクセル) エクセル2013「次のページ数に合わせて印刷」が小さすぎる 9 2023/03/28 10:18
- Excel(エクセル) 【Excel】エクセルの1シートが2枚に分割されてしまうので印刷プレビューを押して閉 4 2022/12/13 13:12
- Excel(エクセル) Excelであるシートだけ印刷できない 1 2022/04/01 09:04
- Excel(エクセル) エクセルのマクロで複数シートを両面印刷するには? 2 2022/12/08 23:23
- ノートパソコン ページ番号の入れ方について 3 2023/02/16 17:11
- PDF EXCEL ページを指定してPDF出力するVBAを教えてください。 2 2023/02/09 10:27
- Excel(エクセル) セルによって印刷するシートを変える方法 EXCEL-VBA 2 2022/08/01 20:48
- その他(パソコン・スマホ・電化製品) Webページ印刷時にヘッダー・フッターをつけたい 1 2022/04/25 21:35
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルのシートの縦横入れ替え
-
ExcelのVBAでvlookupの使い方を...
-
Excelでカーソルが逆に動く
-
Caps Lockキーの解除
-
至急! Excelで歩合計算
-
60進法で複数セルの足し算、引...
-
Excel2010の並べ替えで行の高さ...
-
リース初心者です 利子率の計...
-
WORDで先頭ページを追加するには?
-
エクセルで作った書類に、パン...
-
エクセルの行高さが、挿入作業...
-
エクセルで141.75を141時間75分
-
バーコード(NW7)のフォントを...
-
Excelで歩合給の計算をしたいの...
-
プルダウンで選択すると隣のセ...
-
エクセル フォームボタンクリ...
-
エクセルで離れたセルを離れた...
-
バーコード読み取り
-
エクセル 重複するデータの整理
-
エクセルで行ごとに繰り返しの...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルに入力後、別のシート...
-
ExcelのVBAでvlookupの使い方を...
-
エクセルの最終ページだけを自...
-
EXCEL VBA データを抽出して別...
-
エクセルデータから必要な情報...
-
Caps Lockキーの解除
-
Excel2010の並べ替えで行の高さ...
-
エクセル関数で {=TABLE(,セル...
-
リース初心者です 利子率の計...
-
Excelでカーソルが逆に動く
-
エクセルで離れたセルを離れた...
-
プルダウンで選択すると隣のセ...
-
エクセルで複数の勤務時間ごと...
-
VBA 条件が一致した場合の...
-
エクセルで作った書類に、パン...
-
60進法で複数セルの足し算、引...
-
shiftキーのロック解除をしたい...
-
Java、配列の問題を教えて欲し...
-
今日の日付が第n曜日かを求める
-
至急! Excelで歩合計算
おすすめ情報