VBからACCESSのレポートへの出力に関して

このQ&Aのポイント
  • Visual Basic2008で開発を行っていますが、帳票の部分だけをACCESS2000のレポート機能を使って出力したいと考えています。
  • 単純にACCESSのレポートを起動させる方法は、幾つかのホームページに記載がありましたが、Visual Basicの方で作成されたデータを用いて、ACCESS側のレポートに出力するような事をしたい為、調べた結果では手段が見つかりませんでした。
  • データセット等を活用すれば出力できるような記載もありましたが、細かな情報がなく、どのように記述したら良いかが記載されていなかった為、この方法だけでなくどのようにしたら良いかの参考になるようなホームページ、あるいはソースの記述を教えて頂きたいと思います。
回答を見る
  • ベストアンサー

VBからACCESSのレポートへの出力に関して

環境:Visual Basic2008 Express Ediotion,ACCESS2000 教えて下さい。 Visual Basic2008で開発を行っていますが、帳票の部分だけをACCESS2000の レポート機能を使って出力したいと考えています。 単純にACCESSのレポートを起動させる方法は、幾つかのホームページに記載が ありましたが、Visual Basicの方で作成された"データ"を用いて、ACCESS側のレポート に出力するような事をしたい為、調べた結果では手段が見つかりませんでした。 あるホームページに、データセット等を活用すれば出力できるような記載もありましたが、 細かな情報がなく、どのように記述したら良いかが記載されていなかった為、この 方法だけでなくどのようにしたら良いかの参考になるようなホームページ、あるいは ソースの記述を教えて頂きたいと思います。 よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • MARU4812
  • ベストアンサー率43% (196/452)
回答No.1

Visual Basicの方で作成された"データ"を ACCESS のテーブルに更新して そのテーブルと連携させたACCESSのレポートを起動させるだけでは? SANA_999 さんの調査内容を組み合わせればできる話だと思いますが。 > あるホームページに、データセット等を活用すれば出力できるような > 記載もありましたが、細かな情報がなく、 データセットの活用方法といった時点で限られていると思います。細かな情報 など要らないか、書いてあるけど読めていないだけでは?ACCESS の処理は ACCESS 自身に任せる事になると思うので、上に書いた通りデータ更新する だけの話だと思います。 まぁ、特殊なテクニックが書いてあったのかもしれませんが、リンクも 貼ってないし、説明もできないのではこちらではどうしようもないですが

SANA_999
質問者

お礼

返事が遅くなりまして申し訳ありません。 とても参考になりました! ありがとうございました。

関連するQ&A

  • VBからACCESSのレポート出力

    すみません。どうしてもわからないので、質問させて頂きます。 VB6.0 + ACCESS2000 で開発をしています。 インターフェイスはVB,DBはACCESSなのですが、帳票の出力も、 ACCESSで行いたいと思っております。 この時、クライアントにACCEESSが入っていない事も想定して、 ACCESSランタイムも用意しました。 デバッグマシン(OFFICEは入っていません)にランタイム(VB,ACCESS)を インストールして、実行ファイルを実行すると、印刷の部分で、「エラー429 Activeコンポーネントはオブジェクトを作成できません」とのエラーが出て、印刷ができません。 印刷以外は問題なく動いています。 開発マシンは、Win2000、デバッグマシンはWinXPで、ACCESSランタイムはOFFICE XP Developerで作成しました。 下記にソースコードも記載させて頂きます。 もちろん、開発ではきちんと動作しています。 Dim oleAccess As Access.Application Set oleAccess = GetObject(App.Path & "\data\data.mdb") Call oleAccess.DoCmd.OpenReport(ReportName, acPreview) oleAccess.DoCmd.Maximize oleAccess.Visible = True 当初は、「oleAccess.OpenCurrentDatabase」でDBを開いていたのですが、 ACCESSランタイム環境では、GetObjectの方が良いということを聞いたので、 上記の様になっています。 エラーが起きている行は、どうやら「GetObject」の行のようです(oleAccess.OpenCurrentDatabaseの場合でもエラー)。 ACCESSランタイムを使う事が初めてなので、手探りでやっているため、 的外れな所もあるかと思います。 何かアドバイスを頂ければ幸いでございます。 よろしくお願い致します。

  • VBからのACCESSの起動に関して

    開発環境:Visual Basic 2008/ACCESS 2000 VB2008よりACCESSを更新したり、ACCESSのレポートを使用したりする プログラムを作成しています。 その際に、1つのACCESSに複数のレポートを作成している事から、複数のプログラム からACCESSを起動させようとするとエラーとなってしまいます。 ACCESSをそれぞれ分けてしまえば問題ないですが、、、、 そもそも1つのACCESSファイルを複数からアクセス(複数のVBプログラム)するという事が 不可能なのでしょうか? あるいは、下記の記述にあるように、データベースを開こうとするかエラーである為、 開いているか確認の記述をし、既に開いているようだったら、その処理をとばすような事 をすれば問題ないのでしょうか??? 教えて頂きたいと思います。 よろしくお願いします。 《記述内容》 Dim ac As Object ac = CreateObject("Access.Application") With ac 'アプリケーションを表示する ac.Visible = True 'データベースを開く ac.OpenCurrentDatabase("C:\sample.mdb") '名前を指定してレポートを開く ac.DoCmd.OpenReport("R_一覧表", 2) 'acViewPreview 'レポートの最大化 .DoCmd.Maximize() 'オブジェクトの解放 System.Runtime.InteropServices.Marshal.ReleaseComObject(ac) End With ac = Nothing

  • VBからACCESSレポートの出力について

    仕事で住所録データベースを作っているところなのですが、 色々と分からないことがあるので、是非、相談に乗って下さい。 VBからACCESSレポートの出力について、行っているのですが データベースから、自分の条件にあったデータだけを取ってきたい のですが、どうしたらよいのでしょうか?? ちなみに、ACCESSのクエリを実行して、欲しいデータを取ってくる のではなく、VB上の画面に入力したデータで、ACCESSのデータを 検索を行うものです。 例えばこんな感じです。 ↓ VBで検索一覧画面から、社員番号を入力する。(テキストボックス) ↓ 実行ボタンを押したとき、テキストボックスに入った社員番号を 自動的に読み取り、ACCESSのデータベースから データを検索する。 こんな感じです。分かりにくい説明ですいませんが 宜しくお願いします。

  • Access レポート 集計について

    Accessのレポートについてご質問いたします。 Accessのレポートにクエリのデータを出力し、全データ出力後のレポート下部に、『商品名』フィールドに出力した、商品名ごとの数の集計を表示したいのですが、どのように記載すればよろしいでしょうか?

  • AccessのレポートからのExcel出力

    当方、Access初級者です。 Access2000ですが、作成したクエリからレポートを表示させ、Excel出力をしたところ列の並びがレポートに表示されている順と変わってしまいます。 クエリの抽出結果からExcel出力すると問題ありません。 レポートはウイザードを使用して作成し、クエリの項目全てがクエリの項目順に表形式に並んでいる簡単なものです。 Excel出力は、「ツール」→「Office Links」→「Excelに出力」で行っております。 原因と解決方法をご教授下さい。

  • ACCESSに変わるレポーティングツール探しています

    基幹システム(Oracle10g)のデータをもとに、ACCESSを使用していろいろな帳票や集計を行っているのですが、同じようなことを他の市販ツールを用いてできないかと考えており、いい製品があれば教えていただけないでしょうか。 ■現在の使用法(ACCESS) ・基幹データ(Oracle)をACCESSからODBCリンク接続して、リアルな情報を元に帳票(ACCESSレポート)出力やデータのクエリ集計出力(csv出力)を行っている。 ・帳票出力やデータ集計出力に必要な情報について、基幹データに存在しないものもあるので、それらについてはACCESSのフォームから直接データを入力しており、それらのデータをクエリにてマージして出力している。 ■市販ツールの要件 ・現在ACCESSで行っていることが実現可能 ・大量の基幹データでも高速処理が可能(現在処理性能が低くて困ってます) ・エンドユーザ(ACCESSは問題なく使用できるレベルの人)が、ある程度の説明を実施すれば帳票や集計クエリなどの開発を行うことが可能 ・帳票やデータ集計クエリのサーバーでの一元管理も可能

  • VBからACCESSのレポートをプレビューで表示

    お世話になっております。 VBからのMDBの帳票印刷の事で悩んでおります。 データベースとしてMDBを使用しているので、MDBのレポートのプレビュー を表示しようとしました所、下記のコードで実現することができました。 Dim oleAccess As Access.Application Set oleAccess = GetObject(App.Path & "\data.mdb") Call oleAccess.DoCmd.OpenReport(ReportName, acPreview) oleAccess.DoCmd.Maximize oleAccess.Visible = True 開発環境では問題なくプレビューの表示ができたのですが、 このプログラムを、ACCESSの入っていない環境で、ACCESSランタイムをインストール して実行すると、印刷時に「エラー429 ActiveXコンポーネントはオブジェクトを作成 できません」とのエラーが出て、印刷だけができません(その他の動作は正常です)。 エラー内容から、ACCESSオブジェクトの作成に失敗していると思うのですが、 Access.Application型を使わずに、ACCESSのプレビュー・印刷をする方法は無いのでし ょうか?(たとえば、DAO.DataBase型でMDBを開いて印刷する方法など・・・) 以前にも同じような質問をさせて頂いたのですが、私の力不足のため、再度ご質問させて頂きます。 どんな事でもいいので、アドバイスを頂ければ幸いです。 よろしくお願い致します。

  • ACCESS2007 1枚だけレポート出力

    ACCESS2007を使っています。レポートで、1件1枚で出力されるものを作りました。連続してプリントするのは、できます。手軽に特定の1枚だけをプリントできるようにする良い方法はありますでしょうか?

  • access 範囲指定してレポート出力

    書類の出力をaccessで利用しています。 現状では、レポートを出力するために番号を1つ1つ指定するしかなく、 量が多いと手間なため、範囲指定してそれぞれ番号のレポートを出力することはできますか。例)番号1なら番号1用の書類、番号2なら番号2用の書類・・・・のように今回の指定だと10枚出力する形になります。 現状の指定方法:1 ↓ 理想の指定方法:1 ~ 10 書類を出力するデータはaccess2003で作成されたものです。書類に表示されるデータはリンクテーブルが元になります。 使用しているのはaccess2016になります。 よろしくお願いします。

  • アクセス2000のレポートについて

    アクセス2000でデータ-ベースを作成しています。 名称と住所を英語で入力する必要があるデータがあり、このデータをレポートで出力しようとすると、下記のように文字の途中で改行してしまうのですが、どうにかならないでしょうか?全て短いデータだけなら、改行しなくてもすむように、レポートで充分に広い幅を採ればいいのですが、長いデータもあり、どうしてもレポートで改行する必要があるのですが.... レコード  microsoft access2000 レポート micrsoft acce ss2000 できれば、下記のようにレポートで出力したいのですが: レコード microsoft access2000 レポート microsoft access2000

専門家に質問してみよう