- ベストアンサー
ACCESS97で単表フォーム上からレポート印刷をする。
ACCESS97でマクロを使用しています。 単表フォーム上にコマンドボタン(レポートを開くマクロを使用し、単表フォームのIDを入力し印刷しています。)を配置しています。 レポートを印刷するのに、IDの入力を省略したい、どうすれば良いでしょうか。 マクロまたはVisual Basicでお願いします。
- みんなの回答 (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
その他の回答 (1)
- ARC
- ベストアンサー率46% (643/1383)
Private Sub コマンド0_Click() DoCmd.OpenReport "レポート名", acViewPreview, , "フィールド名 = " & Me.IDコントロール名 End Sub ってするのが楽な方法でしょうね。 不明点とかあったら、補足してください。
お礼
ACCESS97は非常に難しいので次回もアドバイスよろしくお願いします。
補足
早速の回答有難うございます。 IDがテキストだったので8月11日までかかりました。有難うございました。
お礼
有難うございました。初心者なので良くわかりました。次回またアドバイスよろしくお願いします。