[リストへもどる]   [VBレスキュー(花ちゃん)]
一括表示

投稿時間:2006/05/24(Wed) 12:32
投稿者名:root
Eメール:
URL :
タイトル:
VBからのACCESSレポート印刷について
はじめましてrootといいます
今、VB6+ACCESS2000で帳票を作成しているのですが
少しばかりわからないところがありまして、よろしかったらご教授願います

VB側からレポートを開いた時に、VBのプロパティ?の中に入っている内容を
指定したACCESSのレポートの詳細に表示したいのですが
このようなことは可能なのでしょうか?

例えば、事前にaccess側のレポートにtextboxまたはlabelを貼り付けておいて
VBからレポートを開いた時、その事前に設置しておいたレポートのtextboxなどに
VB側のtextbox.textに書き込まれている内容を表示
みたいなことです

ネットを参考に、色々組み合わせ
以下のようなのコードを考えたのですが、どうにも動かず困っております
たぶん、突込みどころが満載かと思いますが…

  Set oleAccess = Nothing
    Set oleAccess = New Access.Application
    oleAccess.OpenCurrentDatabase DbName, False
    
    'Accessのレポートをデザインで開く
        oleAccess.DoCmd.OpenReport ReportName, acDesign
        'レポートの設定部分
        oleAccess.Reports!(ReportName)![txtKyaku].ControlSource = "='&Form1.txtN
ame.Text & "'"
        'レポートに設定情報を保存して閉じる
        oleAccess.DoCmd.Close acReport, ReportName, acSaveYes
    'プレビュー表示
        oleAccess.DoCmd.OpenReport ReportName, acPreview
        oleAccess.DoCmd.Maximize
        oleAccess.Visible = True

イメージとしてはACCESSのtxtkyakuというtextboxにVBのtxtnameに表示されてる内容を表示したい

そのようなことです

投稿時間:2006/05/24(Wed) 12:36
投稿者名:root
Eメール:
URL :
タイトル:
修正
おかしいですね
>oleAccess.Reports!(ReportName)![txtKyaku].ControlSource = "='&Form1.txtName.Te
xt & "'"

oleAccess.Reports!(ReportName)![txtKyaku].ControlSource = "=""" &Fo
rm1.txtName.Text & """"

txtName.textを適当な変数に突っ込んでもやってみたのですが
それでも上手くいきませんでした

投稿時間:2006/05/25(Thu) 14:21
投稿者名:GOD
Eメール:
URL :
タイトル:
Re: VBからのACCESSレポート印刷について
> VB側からレポートを開いた時に、VBのプロパティ?の中に入っている内容を
> 指定したACCESSのレポートの詳細に表示したいのですが
> このようなことは可能なのでしょうか?
>
テキストボックスではなくラベルなら出来るんじゃないかな。
LabelName = "ラベル1"
oleAccess.Reports(0).Controls.Item(LabelName).Caption = "'" & txtName & &qu
ot;'"
みたいな感じだったと思う。

テキストボックスでやりたいなら不可視のラベルを用意してControlSourceプロパティを設定すれば良い
かと。
直にテキストボックスのTextプロパティを編集する方法は知りません。
oleAccess.Reports(0).Controls.Item(LabelName).Caption = "'" & txtName & &qu
ot;'"
oleAccess.Reports(0).Controls.Item("txtKyaku").ControlSource = "=" &
LabelName & ".Caption"

投稿時間:2006/05/29(Mon) 16:18
投稿者名:root
Eメール:
URL :
タイトル:
Re^2: VBからのACCESSレポート印刷について

> > > テキストボックスではなくラベルなら出来るんじゃないかな。
> LabelName = "ラベル1"
> oleAccess.Reports(0).Controls.Item(LabelName).Caption = "'" & txtName &a
mp; &qu
> ot;'"
> みたいな感じだったと思う。
>

ありがとうございます。教えていただいたのを参考にしましたところ
自分の望む動作ができました
labelでもtextboxでもどちらでもよかったのでlabelにて製作を続けたいと思います