さて、以下は関係するコードの抜粋です。
・フォームとレポートをどのようにリンクさせるているのかを反映して修正する必要があります。
・レポートを専用フォームに印刷するのであれば、出力をデータだけに限定する必要があります。
適当に参考にして下さい。
Private Sub コマンド納品書プレビュー_Click()
On Error Resume Next
If Nz(Me.ID) <> 0 Then
DoCmd.OpenReport "納品書", acPreview, , "伝票番号=" & Me.伝票番号
Else
ErrorMsg "主キーが未定のフォームは印刷できません。"
End If
End Sub
DoCmd.OpenReport "納品書", acNormal, , "伝票番号=" & Me.伝票番号 ' プレビューしない場合!
<納品書.レコードソース>
SELECT DISTINCTROW 売上伝票標題.ID, 売上伝票標題.伝票日付, 売上伝票標題.得意先ID, 売上伝票標題.伝票番号, 売上伝票標題.販売担当者ID, 売上伝票標題.売上金額合計, 売上伝票標題.消費税率, 売上伝票標題.消費税額, 得意先マスター.郵便番号, 得意先マスター.住所1, 得意先マスター.住所2, 得意先マスター.ビル等, 得意先マスター.得意先名 FROM 得意先マスター INNER JOIN 売上伝票標題 ON 得意先マスター.ID = 売上伝票標題.得意先ID;
Private Sub Report_Page()
'
' OnlyTextBox 関数は、テキストコントロールを残し、その他をレポートから消します。
'
OnlyTextBox Reports!納品書
End Sub
Public Sub OnlyTextBox(ByVal rpt As Report)
Dim ctl As Control
For Each ctl In rpt.Controls
ctl.Visible = (ctl.ControlType = acTextBox)
Next ctl
End Sub
お礼
さっそくのお返事ありがとうございました。 こちらのやり方が非常に簡単なので(^^;) とりあえずやってみます。 うまくいかなかった場合、再度補足させていただくかもしれません。 No.1の方も含め、よろしくお願いします。m(_ _)m