プロが教えるわが家の防犯対策術!

ACCESS97でマクロを使用しています。
単表フォーム上にコマンドボタン(レポートを開くマクロを使用し、単表フォームのIDを入力し印刷しています。)を配置しています。
レポートを印刷するのに、IDの入力を省略したい、どうすれば良いでしょうか。
マクロまたはVisual Basicでお願いします。

A 回答 (2件)

私も経験者様と同じで下記のように記述致しました。


初心者なので下手な記述でスミマセン!
参考にもならないかもしれませんが、よかったらドウゾ!

'------------------------------------------------------------
' 【概 要】From2 レコード更新・印刷・終了
' 【所 在】From2「更新」クリック時イベント
' 【戻 値】
' 【作 成】pooh200x 2001.5.21
'------------------------------------------------------------
Private Sub cmdKousin_Click()

Dim kosyin As Integer
Dim lngID As Long
Dim tojiru As Integer

kosyin = MsgBox("更新しますか?", vbYesNo)
If kosyin = vbNo Then
'Noだったら
Exit Sub
'閉じる
End If
DoCmd.RunCommand acCmdSaveRecord '保存する

lngID = MsgBox("印刷を行いますか?", vbYesNo)

If lngID = vbNo Then 
Exit Sub
End If

lngID = Me.txt1.Value  
’txt1というTxtBoxに[=id]と入力しておきそれをキーにして印刷

      DoCmd.OpenReport "印刷", acViewNormal, , "id=" & lngID
'レポート名「印刷」を「id」というオートNOをキーに出力
      'acViewPreview を選択するとプレビュー

tojiru = MsgBox("画面を閉じます(^O^)/~~", vbYesNo)

If tojiru = vbNo Then
Exit Sub
End If
DoCmd.Close
DoCmd.OpenForm "メインフォーム"

End Sub
    • good
    • 0
この回答へのお礼

有難うございました。初心者なので良くわかりました。次回またアドバイスよろしくお願いします。

お礼日時:2001/08/11 13:51

Private Sub コマンド0_Click()


DoCmd.OpenReport "レポート名", acViewPreview, , "フィールド名 = " & Me.IDコントロール名
End Sub

ってするのが楽な方法でしょうね。
不明点とかあったら、補足してください。

この回答への補足

早速の回答有難うございます。
IDがテキストだったので8月11日までかかりました。有難うございました。

補足日時:2001/08/11 13:19
    • good
    • 0
この回答へのお礼

ACCESS97は非常に難しいので次回もアドバイスよろしくお願いします。

お礼日時:2001/08/11 13:24

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