hatena
hatena
2022/04/12 (火) 15:48:36
①「一部のデータが表示されません。」←プリンタからの警告?通常は無視してOKしています。
レポートの幅が印刷範囲幅より大きいのではないでしょうか。
デザインビューでレポートの幅を、[用紙幅]-[左右余白]より小さくしてみてください。
⇒ここで、キャンセルを押すと「実行時エラー2501 OpenReportアクションの実行は取り消されました」と表示されます。
DoCmd.OpenReport "R_ラベル印刷", acViewPreview
の前に、
On Error Resume Next
を挿入するといいでしょう。
②「印刷開始位置を入力してください…」
⇒ここでキャンセルを押しても、OKを押したときと同様レポート画面に進んでしまいます。①②でキャンセルボタンを押した際、キャンセルできるようにするにはどうすればよいでしょうか。
Private Sub Report_Open(Cancel As Integer)
'開始位置入力 全角OK 漢字等は0になるが結果的に最初の位置から印刷
' [キャンセル]ボタンをクリック、または空欄の時は印刷しない
Dim res As String
res = InputBox("印刷開始位置を入力してください(1~)", , 1)
If res = "" Then
Cancel = True
Else
s_position = Val(StrConv(res, vbNarrow))
End If
End Sub
通報 ...
バッチリうまくいきました。大変助かりました。
似たようなコードで一度実行していたのですが、(?)
引数のエラーが出ていました。
「Cancel = True」というのが必要だったのですよね。
ありがとうございました。