• 締切済み

cellが印刷されるページ数を知る方法

Excelで、あるcellが印刷されるページ数を知る方法はないでしょうか?また、あるsheetの先頭が印刷されるページ数を知る方法はないでしょうか? どちらも、関数や、マクロの中で何かのオブジェクトのプロパティを見たりし知る事ができると有難いですが。 最終的には、 =PageNumber("sheet1".R1C1) なんていう関数が組めると最高ですが。 ご存知の方がいらっしゃれば、お教えください。

みんなの回答

  • Wendy02
  • ベストアンサー率57% (3570/6232)
回答No.2

こんにちは。 以下のように入力してください。 メニュー-[挿入]-[名前]-[定義] 名前(W) 「PAGENUMBER」 (任意) 参照範囲(R) =GET.DOCUMENT(50)+NOW()*0 ------------------------------------ 数式は、任意のセルに、 =PAGENUMBER と入れます。 注意:なお、この式は、同じブック内しか使用できません。 ------------------------------------ マクロ関数(XLM関数)のヘルプより GET.DOCUMENT(検査の種類, ファイル名) 50 現在の設定で印刷されるページの総数を返します。指定したファイルがグラフのときは、1 が返されます。

すると、全ての回答が全文表示されます。
  • imogasi
  • ベストアンサー率27% (4737/17070)
回答No.1

Sub test03() r = Range("A52").Row d = Range("A65536").End(xlUp).Row If r > d Then MsgBox "印刷されません" Exit Sub End If n = Worksheets("Sheet1").HPageBreaks.Count For i = n To 1 Step -1 f = Worksheets("Sheet1").HPageBreaks(i).Location.Row If f <= r Then n = Worksheets("Sheet1").HPageBreaks(i + 1).Location.Row MsgBox i + 1 & "ページに印刷されます" Exit Sub End If Next i MsgBox "1ページに印刷されます" End Sub ーーーー ユーザー関数化は可能です。 列ごとの最下行数は等しいものとする。 r = Range("A52").Rowで指定行数を捉えているが、対話的に何か工夫してください(最低でもINPUTBOX) 関数では、セルの値ではないので、PageBeaks関係の情報は取れません。

すると、全ての回答が全文表示されます。

関連するQ&A