VB.NETからAccessレポート印刷

 

こんにちは、ひろにもです。

仕事で使用したので、備忘録として記載しておきます。

VB.NETで帳票を作成する際に、Accessを利用しようと考えている人ようにまとめておきます。なにで帳票を作るか迷いますよね。。。

VB.NETからAccessレポートを利用した帳票の出力方法

VB.NET側

VBで、Accessのレポートを出力する時は、このように記載します。

Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
    Try

        Dim AccObj As Object = CreateObject("Access.Application")

        'Accessファイルのパスを設定
        AccObj.OpenCurrentDataBase("D:\hironimo.accdb")

        'Accessのレポート名を設定 印刷開始!!
        AccObj.DoCmd.OpenReport("hironimoReport")

        'Accessを終了
        AccObj.quit()

        'メモリの解放
        Marshal.ReleaseComObject(AccObj)
        AccObj = Nothing

    Catch ex As Exception
        MsgBox(ex.ToString)
    End Try
End Sub

 

これで、プリンターに印刷のデータがとんでいると思います。VB側は以上です。

 

一応Access側も簡単に載せておきますね。

Access側

まずは、Accessを立ち上げましょう。ちなみにバージョンは、Access2016でやっています。

「空デスクトップデータベース」というのを選んでください。D\:hironimo.accdb を作成しました。

次はテーブルにデータを適当に作成しましょう。

これで、テーブルの作成とデータの作成が完了しました。次は、レポートデザインを作っていきます。

作成タブ→レポートデザイン を選択し、レコードソースを選択します。

先ほど作成した、テーブル1を選択し、帳票に表示したい項目を選択してあげます。

このメッセージは、「はい」でOKです。

続いて、レポートファイルのデザインを作成していきましょう。

テキストボックスを配置していきたいのですが、ラベルが同時に作成されてしまうので、プロパティのラベル自動作成を「いいえ」に変えましょう

この設定が、終わったら、テキストボックスを配置しましょう。今回私は3つを配置し、それぞれにデータベースの値を紐づけました。

hironimoReportとレポート名を付けて保存しました。

これで、Access側の作成は完了です。

 

VB.NETで、帳票を出すのが難しいので、私はよくAccessを利用しています。

もしよければ参考にしてみてください。

おすすめの記事