ACCESS2000のVBAでWORD文書の印刷をしたいのですが、どのようなコマンドを使ったらいいのかさっぱり分かりません。どなたか教えて下さい!

このQ&Aに関連する最新のQ&A

A 回答 (1件)

こんな感じでどうでしょうか。


Sub Macro()
 Dim obj As Object
 Set obj = CreateObject("Word.Application")
 Shell obj.Path & "\winword.exe"
 'これでobjを使ってWordが操作できるようになります。
 'ちなみにExcelなら同じ理屈でExcel.Application

 obj.Documents.Open FileName:="test.doc"
 obj.ActiveDocument.PrintOut
 'この例ではtest.docを開いて、印刷します。
 '要はWordでの操作をマクロで記録して、それをobjに続けて書きます。

 Set ob = Nothing
 '最後にオブジェクト解放
End Sub
なお、これは要するにAccessからWordを操作するのだから、Wordがインストールされてなければダメです。
    • good
    • 0
この回答へのお礼

なるほど、勉強になりました。 ありがとうございました!

お礼日時:2002/03/28 08:52

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

関連するカテゴリからQ&Aを探す

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

QACCESS VBA コマンドDoCmd.OpenFormの引数

2つの項目で主キーを構成するテーブルを定義しました。
この場合、VBA コマンドを使って登録画面を開く為の
コマンドの引数の指定方法がわかりません。

テーブル名: T運転手割当
1)W業務依頼日 <=主キー
2)W使用車両  <=主キー
3)W運転手番号


DoCmd.OpenFormの書式
■第4引数 WhereCondition/レコード抽出条件(省略可能)
テーブルやクエリと連結しているときのレコード抽出条件を指定します。

1)仮に主キーが1つの時、以下の表記で正常に表示されます。
'フォームを開く
DoCmd.OpenForm "F運転手割当登録", acNormal, , "W業務依頼日 = " & Me![lstWariate]


2)主キーが2つの時、以下の表記ではF運転手割当画面は表示されるのですが、
肝心のデータがセットされずに空白で表示されます。
'フォームを開く
DoCmd.OpenForm "F運転手割当登録", acNormal, , ("W業務依頼日 = " & Me![lstWariate]) & " And " & ("W使用車両 = " & Me![lstWariate])


[lstWariate]とは、データの検索画面で検索結果を表示するリストボックスの名称です。
検索結果から該当データを選択して、個別データの修正画面に移行したいのですが・・・。

Me![lstWariate]の表記が良くないのだと思うのですが、具体的な表記方法が分かりません。
よろしくお願いします。

2つの項目で主キーを構成するテーブルを定義しました。
この場合、VBA コマンドを使って登録画面を開く為の
コマンドの引数の指定方法がわかりません。

テーブル名: T運転手割当
1)W業務依頼日 <=主キー
2)W使用車両  <=主キー
3)W運転手番号


DoCmd.OpenFormの書式
■第4引数 WhereCondition/レコード抽出条件(省略可能)
テーブルやクエリと連結しているときのレコード抽出条件を指定します。

1)仮に主キーが1つの時、以下の表記で正常に表示されます。
'フォームを開く
DoCmd...続きを読む

Aベストアンサー

遅くなりましたが、以下の記述ではどうでしょうか?
(長すぎて、勝手に改行されていますが、一行にして試してください)

DoCmd.OpenForm "F運転手割当登録", acNormal, , "W業務依頼日 = " & CDate(Me![lstWariate].Column(0)) & " And " & "W使用車両 = " & Me![lstWariate].Column(1)

Qaccessレポートにwordの文書を貼り付ける

accessレポートにwordの文書を貼り付ける
accessは、レポートにword,excelにオフィスリンク機能や差し込み印刷はあるのは、わかっていますがあえて使わずに作業をしたいのです。
利用ソフトはアクセス2007、2003、2000どれも試しました。
accessでレポートを作成する時に、wordやexcelで作成した物をコピーして張り付けるということが可能ですが、wordの文書を貼り付けると通常は80%程度の大きさにしかなりません。
しかしコピーして貼り付けたら、ほぼ同一の大きさになったことがたまに何度かあります。
理由はわからないのですが、やり方が(法則?)わかれば教えてください。

Aベストアンサー

回答します。アクセスのレポートをワードのリッチテキストファイル形式で保存をした後、これにテキストボックスを挿入し、そのなかにワードの文書ファイルを貼り付けることが出来ますが、これではいけないのでしょうか。

QAccess2007のVBAにてSendObjectコマンドを使用して

Access2007のVBAにてSendObjectコマンドを使用してのメール発信について
VBAはネットに検索して使えそうなものを組み合わせる程度の知識です、以前作成したAccess2003とOutlook Expressの組み合わせでAccessのメールアドレスに従い所定の文をOutlook Expressの送信トレイに置き送信するVBAを作成しました。当時は正常に送信処理がて来ていましたが、時代の流れでAccess2007とWindows Live Mailにの組み合わせに三か月前に変更したところエラーになりLive Mailにデータを受け渡せなくなりました。どなたか解決方法をご存じの方、よろしくお願いします。
エラーは(予期せぬエラーが発生しました エラーコード:2046)
windowsのアプリケーションログ、システムログは確認しましたが関連するエラーはありません出した。
今まで試したこと
1.mdbからaccdbに変換しましたがだめでした。

何かライブラリが足りないのでしょうか???

Aベストアンサー

SendObjectは何かと引っかかるものがあるので、
#1でのサイトの最後にあるBASP21を使った方法が
いい場合があります。

以下のサイトでは過去ログでBASP21に関するものがいくつかあります。
http://www.accessclub.jp/bbs3/0228/superbeg72768.html

BASP21のサイトは以下です。
http://www.hi-ho.ne.jp/babaq/basp21.html

QAccess2000 VBAの学習方法

当方Accessの初心者ですが、最近マクロに限界を感じ始めまして、VBAを使ってみたいと思い始めました。
そこで、経験者の皆様にアドバイスをお願いしたいのですが、プログラミングの経験がほとんどない利用者に適している、
・お勧めの学習方法
・お勧めの書籍
などを教えていただけないでしょうか?
よろしくお願いいたします。

Aベストアンサー

速攻でやりたいことだけを覚えようと思っていると苦労すると思います。
AccessのVBAであれば、超○○や、できる○○等の、超入門者向けを一通りStepByStepでVBAの雰囲気を掴むのが宜しいかと。
雰囲気が分かれば書籍選びも自分にあったものが探せるので、簡単な事からコツコツ勉強してください。

基本が分かればAccessの掲示板やメーリングリスト等を活用していくのが宜しいと思います。
でも、いきなり質問しちゃだめですよ、初心者の質問なら既に過去ログなどから情報を引き出せますから。
それと、なんだか良く分からないのですが、なんとかなりませんか等の相手に情報を上手く伝えられない投稿もNGです。
この二つは場所によっては物凄く嫌われます。

Webドキュメントを上手く利用できれば、開発効率は飛躍的に向上します。

QAccess2000のVBAでコンパイルエラー

Access2000のVBAで初歩的な質問があります。

「tblShi」というテーブルがあります。
フォームにボタン「btn1」を作り、
デザインビューでボタンのプロパティを開いて
イベントのクリック時のところで、
「ビルダの選択」をコードビルダにしました。

そして「Private Sub btn1_Click()」の中に、最初に
  Dim db As Database
という記述をしています。

このフォームを開いてボタンを押すと、なぜか
  コンパイルエラー
  ユーザ定義型は定義されていません
というエラーが表示されてしまいます。

たしかにコードを書いているときに、
  Dim db As
のところまで入れると、小さいウィンドウの中に
たくさん候補が表されますが、
その中に「Database」というのがないです。
「QueryDef」とか「Workspace」とかもありませんでした。
(「Recordset」はありまして、それはコンパイルが通ります)

いろいろな解説を見ても、やはり最初はどれも
「Database」型を宣言しているようなんですが…

何がよくないのでしょうか。
もしわかる方がいらっしゃったら教えてください。

Access2000のVBAで初歩的な質問があります。

「tblShi」というテーブルがあります。
フォームにボタン「btn1」を作り、
デザインビューでボタンのプロパティを開いて
イベントのクリック時のところで、
「ビルダの選択」をコードビルダにしました。

そして「Private Sub btn1_Click()」の中に、最初に
  Dim db As Database
という記述をしています。

このフォームを開いてボタンを押すと、なぜか
  コンパイルエラー
  ユーザ定義型は定義されていません
というエラーが表示されてしまい...続きを読む

Aベストアンサー

御疲れ様です

多分、参照設定がされていないだけだと思われます。
参照設定の方法は、VisualBasicEditorにて、
メニューバー→「ツール」→「参照設定」

参照するものは、「Microsoft DAO Library *.*」
または、「Microsoft ADOX *.*」
のどちらかを参照します。
(確認してないですが...)

使用する目的によってどちらを参照するか決めましょう。
また、宣言するときもきちんと宣言するのも心がけましょう。
[例]Dim DB As DAO.Database

参考になれば...


このQ&Aを見た人がよく見るQ&A

人気Q&Aランキング

おすすめ情報