質問

これがnoobの質問である場合は申し訳ありませんが、私は、アクセスや経験がほとんどないとき、もう何年も前にいない誰かが書いた古代のレガシーAccess 2000 .adpアプリケーションをサポートするという疑わしい名誉を与えられましたVB自身:)

いくつかのサポート作業を行うために、Access 2000(Access 2000プロジェクト)でWinXP開発マシンをセットアップしました。 6つの引数でDoCmd.OpenReportを呼び出す、レポートを印刷することになっている既存のコード行があります。

DoCmd.OpenReport ReportName, acViewPreview, , "orderId = 1234", , Printtype

実行すると、コンパイルエラーが発生します。「引数の数が間違っているか、プロパティの割り当てが無効です」。

したがって、DoCmd.OpenReportで「intellisense」を使用しましたが、アクセスVBコードエディターでは、6つではなく4つの引数(ReportName、acViewNormal、FilterName、およびWhereCondition)のみを想定していることがわかります。コマンドのオブジェクトブラウザーに移動すると、定義は次のようになります。

Sub OpenReport(ReportName、[View As AcView = acViewNormal]、[FilterName]、[WhereCondition])     Access.DoCmdのメンバー(4つの引数)

ウェブ上のさまざまな投稿を見ると、4つの引数、6つの引数を渡す人がいるようです。 Accessコードライブラリにはさまざまなバージョンがあると思いますが、間違っています。しかし、私はこれをどこで解決し始めるのか分かりません。誰でもAccessを知っていて、私を助けることができますか?

役に立ちましたか?

解決

Access 2000では、 OpenReport メソッドは4つのパラメーターを受け入れました:

  

DoCmd.OpenReport reportname [、view] [、filtername] [、wherecondition]

where [、 parameter ]はオプションです。

Access XPでは、 OpenReport が取得されました提供する2つのパラメーター:

  

DoCmd.OpenReport reportname [、view] [、filtername] [、wherecondition] [、windowmode] [、openargs]

Printtype はレポートへの引数として使用されており、別のメソッドを使用して渡す必要があります。フォームフィールドまたはパブリックプロパティから読み取ります。

他のヒント

WhereCondition引数の後のすべてを削除します。追加の引数は、Accessの新しいバージョン用です(WindowModeおよびOpenArgs用です)

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top