エクセル2003のヘッダーフッターで、ページ番号のつけ方が説明されているページを探しています。

ただたんに、「1、2」とかではなく、「01、02」で番号を振る事が説明されているページをお願いします。

回答の条件
  • URL必須
  • 1人2回まで
  • 登録:
  • 終了:--
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

回答3件)

id:sanzi24 No.1

回答回数600ベストアンサー獲得回数1

ポイント30pt

http://www2.odn.ne.jp/excel/waza/index.html

エクセル(Excel)技道場−エクセルの技

urlはダミーです。

フッターの編集→

0&[ページ番号]と記入じゃだめなんでしょうか。(二桁以降だと010とかになるので印刷を二回に分ける必要が出ますが。)

id:alicia007

そうなんですよね。10ページ以降が010になってしまうんですよね。なので、01から始まってちゃんと10,11となるようには方法は無いんでしょうかね?

2005/01/28 12:40:07
id:nankichi No.2

回答回数562ベストアンサー獲得回数2

ポイント30pt

http://www.moug.net/skillup/nksw/nksw05-03.htm?PRINT

Excel VBA を学ぶなら moug モーグ

>ページ番号のつけ方が説明されているページ

はみつけましたが、

>「01、02」で番号を振る

はみつかりませんでした・・・

http://www2.odn.ne.jp/excel/waza/print.html#SEC8

エクセル(Excel)技道場−印刷

id:alicia007

やはり不可能なのでしょうかね・・・

2005/01/28 12:40:51
id:cx20 No.3

回答回数607ベストアンサー獲得回数108

ポイント40pt

http://www2.moug.net/cgi-bin/technic.cgi?exvba+TI07010013

Excel VBA を学ぶなら moug モーグ

残念ながら、標準機能(ヘッダ/フッタの書式指定)では「01」「02」・・「11」

のような指定は出来ないようです。

別の方法として、VBA を使用しても良いということでしたら、

以下のように、1ページ毎にページヘッダ/フッタ(例:CenterFooter)

を指定し直して、強引にページ番号を振りなおすという方法もあります。

以下、ソースです。

(はてな投稿時に一部文字、記号が全角に変換されている可能性がありますので、

 使用される場合は、上記 URL にあるソースをご利用ください。)

’ <使い方>

’ 1. Excel の「Visual Basic Editor」を起動します。

’ 2. [挿入] - [標準モジュール] を選択します。

’ 3. 下記のコードを貼り付けます

’ 4. [実行] - [Sub/ユーザー フォームの実行] で

’  SpecialPrint() プロシージャを実行します。

’  → ページヘッダのページ番号が「0詰め」されて印刷されます

Option Explicit

’ シート内のページ数を算出

’ <参考サイト>

’ [XL2002] 印刷されるページの総数を調べる方法

http://support.microsoft.com/kb/408042/ja

[XL2002] 印刷されるページの総数を調べる方法

Function GetPageCount(ByRef ws As Worksheet) As Integer

  Dim H_Break As Integer

  Dim V_Break As Integer

  Dim P_Page As Integer

  Dim A_Cell As String

  A_Cell = ws.UsedRange.Address    ’最後のセルのアドレスを取得

  If A_Cell = ”$A$1” Then

    If IsEmpty(ws.Range(A_Cell).Value) Then

      MsgBox ”印刷するデータはありません。”

      Exit Function

    End If

  End If

  H_Break = ws.HPageBreaks.Count  ’横の改ページ数取得

  V_Break = ws.VPageBreaks.Count  ’縦の改ページ数取得

  If V_Break = 0 Then

    P_Page = H_Break + 1

  Else

   H_Break = H_Break + 1

   V_Break = V_Break + 1

   P_Page = H_Break * V_Break

  End If

  GetPageCount = P_Page

End Function

’ 特殊印刷処理

Sub SpecialPrint()

  Dim n As Integer

  Dim nCount As Integer

  Dim wb As Workbook

  Dim ws As Worksheet

  For Each wb In Workbooks

   For Each ws In wb.Worksheets

    ’ シートのページ数を取得

    nCount = GetPageCount(ws)

    ’ ページ数ぶんループ

    For n = 1 To nCount

      ’ 中央ヘッダに「0詰め」した「ページ番号」を表示

      ws.PageSetup.CenterFooter = Format(n, ”00”)

      ’ 指定ページを印刷(nページ目〜nページ目を印刷)

      ws.PrintOut n, n, 1

    Next

   Next

  Next

End Sub

id:alicia007

ありがとうございました。

終了いたします。

2005/01/29 10:24:09

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません