Access VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


979 / 2272 ツリー ←次へ | 前へ→

【9269】一太郎の印刷について tetsuo 07/4/9(月) 20:34 質問[未読]
【9270】参照設定 miya 07/4/9(月) 22:35 回答[未読]
【9272】Re:参照設定 tetsuo 07/4/10(火) 8:46 発言[未読]
【9274】App、Doc miya 07/4/10(火) 10:16 回答[未読]
【9275】Re:App、Doc tetsuo 07/4/10(火) 10:41 発言[未読]
【9276】変数の型?? miya 07/4/10(火) 13:31 発言[未読]
【9277】Re:変数の型?? tetsuo 07/4/10(火) 13:52 発言[未読]
【9278】Re:変数の型?? tetsuo 07/4/10(火) 17:41 発言[未読]

【9269】一太郎の印刷について
質問  tetsuo  - 07/4/9(月) 20:34 -

引用なし
パスワード
   はじめまして。哲雄と申します。

現在、CreateObjectメソッドを用いてVBAで一太郎ファイルを
印刷しようとしています。

ネットで情報を集めて下記のようなコードを書いているのですが、
※の行でエラーが出てしまいます。
(ちなみに一太郎10をインストールしています)

Dim App As TARO10.Application
Dim Doc As TARO10.Document  

Set App = CreateObject("JXW.Application")   ※※※※※
Set Doc = jxApp.Documents.Open("C:\test\test.jtd")
jxDoc.PrintOut
                    
App.Quit
Set App = Nothing
Set Doc = Nothing

エラーは「型が一致しません」と出ています。
また、Wordファイルを印刷することは出来たので、
それを参考にして下記のコードを書いております。

すみませんが、よろしくお願いいたします。

【9270】参照設定
回答  miya  - 07/4/9(月) 22:35 -

引用なし
パスワード
   VBE画面で、【ツール】−【参照設定】画面を開いたときに、
一太郎に関するライブラリファイルへの参照に、
チェックが入っていますでしょうか?

Wordが利用可能ならば、
「Microsoft Word X.X Object Library」に
チェックが入っていると思います。

こちらのPCに一太郎がインストールされていないので、
ライブラリファイルの名称がわからず、申し訳ありません。
Googleで「AccessVBA 一太郎 参照設定」で検索しても
具体名が出てこず...どなたかお願いいたします。

中途半端で申し訳ございません。

【9272】Re:参照設定
発言  tetsuo  - 07/4/10(火) 8:46 -

引用なし
パスワード
   ▼miya さん:
>VBE画面で、【ツール】−【参照設定】画面を開いたときに、
>一太郎に関するライブラリファイルへの参照に、
>チェックが入っていますでしょうか?
>
返信ありがとうございます。
はい。「Taro 10.0 type library」にチェックを入れて
おります。

コード上に誤りは無かったでしょうか?

【9274】App、Doc
回答  miya  - 07/4/10(火) 10:16 -

引用なし
パスワード
   以前同じエラー出したときに参照設定のことを失念していたので
もしや...と思ったのですが...失礼しました<m(__)m>
コード見ていて「あれ?」と思ったのは、

>Set App = CreateObject("JXW.Application")   ※※※※※
>Set Doc = jxApp.Documents.Open("C:\test\test.jtd")
     ~~~~~~~
>jxDoc.PrintOut
~~~~~~~

jxApp==>App
jxDoc==>Doc

かな?くらいです。
これだと普通、※の次の行で
「オブジェクトが必要です」というエラーになるかと思うのですが。
(ワードで試した限りにおいては)
なにぶん一太郎がない環境下なのでロクな検証ができず、
申し訳ございません。

【9275】Re:App、Doc
発言  tetsuo  - 07/4/10(火) 10:41 -

引用なし
パスワード
   失礼しました。
正しくは下記の通りです。
書き込むに当たって変数を分かりやすい(?)ように変更して
書き込みました。

Dim App As TARO10.Application
Dim Doc As TARO10.Document  

Set App = CreateObject("JXW.Application")   ※※※※※
Set Doc = App.Documents.Open("C:\test\test.jtd")
Doc.PrintOut
                    
App.Quit
Set App = Nothing
Set Doc = Nothing

VBAで一太郎を動かさなければならない、という事象が少ないためか
調べても謎は深まるばかりです。。。

申し訳ありませんが、よろしくお願いします。

【9276】変数の型??
発言  miya  - 07/4/10(火) 13:31 -

引用なし
パスワード
   なるほど...でも、
変えるなら両方変えてほしかったです(笑)

え〜と...ダメ元で大変恐縮なのですが...

>Dim App As TARO10.Application
>Dim Doc As TARO10.Document  

を、

Dim App As object
Dim Doc As object  

にしたら、いかがでしょ?
VB系言語で一太郎を動かしているらしきソースを
1つ見かけたのですが、
どうも変数の型がObjectのようでしたので...
(肝心の変数宣言部分が欠落してるので、そこがわからず(・・、))

あと、一太郎のマクロバーザーを読んだら載っていた、
という記述もみかけました。ヘルプみたいなものでしょうか?

不確かですみません。よろしくお願いします。

【9277】Re:変数の型??
発言  tetsuo  - 07/4/10(火) 13:52 -

引用なし
パスワード
    ご指摘ありがとうございます。

>Dim App As object
>Dim Doc As object  

>にしたら、いかがでしょ?

変更してみて実行したところ、以前エラーが出ていた行では
エラーが出なくなりました。
しかし、次の行で"test.jtd"の一太郎が開いたところで「オブジェクトが必要です」というエラーが発生しました。該当行は※の部分です。

Dim App As object
Dim Doc As object  

Set App = CreateObject("JXW.Application")  
Set Doc = App.Documents.Open("C:\test\test.jtd")  ※※※※※
Doc.PrintOut
                    
エラーが変わりましたので、調査する幅が広がりました。
ありがとうございます。
エラーが出ている行では、一太郎が開いてんだから次の行に移ればいいじゃん!
って感じがしてますが・・・^^;
マクロバーザーは私も見かけたのですが、一太郎をインストールしている
私でもさっぱりでした。すいません。

また何かお気づきの点がありましたら、よろしくお願いいたします。

【9278】Re:変数の型??
発言  tetsuo  - 07/4/10(火) 17:41 -

引用なし
パスワード
   自己解決しました。
コードを下記の通り変更したらうまくいきました。

Set App = CreateObject("JXW.Application")
App.Documents.Open (C:\test\test.jtd)
App.TaroLibrary.PrintDocument
          
'オブジェクトの解放
App.Quit
Set App = Nothing

一太郎の"マクロバイザー"というヘルプのようなものを参照したら
PrintDocumentの記述があり、なんとかうまく機能しました。

しかし、これで印刷できたのはアクティブなシートだけで、
他のシートは出来ないようでした。

もし、複数シートの印刷方法を分かる方がいらっしゃったら
ご指摘お願いいたします。

979 / 2272 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
1078201
(SS)C-BOARD v3.8 is Free