dポイントプレゼントキャンペーン実施中!

Accessのレポートで、宛名ラベル印刷の印刷開始位置を選択できる
ようにしたく、下記URLの通りにやってみたのですが、エラー表示がでます。

参考URL
http://support.microsoft.com/default.aspx?scid=k …

この通りにやってみると、エラーメッセージ「コンパイルエラー プロシージャ内では無効です」
と表示されてしまいます。
エラーにならないようにするには、どうしたらよいのでしょうか?

記述は下記になります。

Option Compare Database

Private Sub レポートヘッダー_Format(Cancel As Integer, FormatCount As Integer)
Option Explicit
Dim i, k As Integer
i = 0
k = InputBox("ラベル印刷の開始位置を入力してください")
End Sub

Private Sub 詳細_Format(Cancel As Integer, FormatCount As Integer)
If i < k - 1 Then
Me.MoveLayout = True
Me.NextRecord = False
Me.PrintSection = False
i = i + 1
End If

End Sub

恐れ入りますが、ご教示お願い致します。

A 回答 (2件)

> Option Compare Database



> Private Sub レポートヘッダー_Format(Cancel As Integer, FormatCount As Integer)
> Option Explicit
> Dim i, k As Integer

Option Compare Database
Option Explicit

Private Sub レポートヘッダー_Format(Cancel As Integer, FormatCount As Integer)
Dim i, k As Integer

この回答への補足

ご回答ありがとうございます。
ボックスの表示はされるようになったのですが、
実際に数字を入力してOKをクリックすると、
「コンパイルエラー 変数が定義されていません。」
と表示されるのですが、何処を修正したら良いのでしょうか?
よろしくお願い致します。

補足日時:2007/10/01 17:12
    • good
    • 0

リンク先を、落ち着いて見ましょう。



Option Compare Database
'Option Explicit
Dim i, k As Integer
Private Sub ・・・・
となっています。

プロシージャの中で宣言した変数は
そのプロシージャの中でしか参照できません。
複数のプロシージャで参照するには
モジュールレベルで宣言する必要があります。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!