VBでWindowsNT4.0(SP6)上のAccess98の用紙番号を取得する方法
- WindowsNT4.0(SP6)上で、VB5(SP3)で作成したアプリケーションからAccess98のレポートをオープンし、オープンしたレポートのページ設定(用紙サイズ)をVBのプログラム内部で設定できるようにしました。しかし、サーバープロパティで作成した用紙の用紙番号をVBで取得する方法がわかりません。
- 用紙サイズを設定するときは、レポートの PrtDevMode プロパティのメンバ PaperSize に PaperSizeメンバ値(8=A3、9=A4、10=A4 Small、11=A5 等)をセットするとうまく行きました。
- ネット上でいろいろ調べているのですが、Delphiの情報しか見つけられず、VBでの方法がわかりません。サーバープロパティで作成した用紙の用紙番号をVBで取得する方法があれば教えてください。
- ベストアンサー
用紙設定で作成した用紙の用紙番号をVBで取得するには?
WindowsNT4.0(SP6)上で、VB5(SP3)で作成したアプリケーションからAccess98のレポートをオープンし、オープンしたレポートのページ設定(用紙サイズ)をVBのプログラム内部で設定できるようにしました。 用紙サイズを設定するときは 指定したレポートの PrtDevMode プロパティのメンバ PaperSize に PaperSizeメンバ値(8=A3、9=A4、10=A4 Small、11=A5 等)をセットするとうまく行きました。 しかし問題なのが、Windowsのプリンタ設定のサーバーのプロパティで作成した用紙サイズをレポートの用紙サイズに設定しようと思っても、PaperSizeメンバ値(用紙番号)がわからないため、設定できません。 サーバープロパティで作成した用紙の用紙番号をVBで取得する方法がありましたら是非教えて下さい! ネット上でいろいろ調べているのですが見つかりません。 1つだけ同じ内容のものを見つけたのですが、使用しているソフトが Delphiだったのでダメでした。 どうかよろしくお願いします。m(__)m
- tomosuke09
- お礼率46% (12/26)
- Visual Basic
- 回答数2
- ありがとう数2
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
DeviceCapabilities関数で用紙番号と用紙名を列挙出来ます 参考URLの0327, 0328参照
その他の回答 (1)
- todo36
- ベストアンサー率58% (728/1234)
通常使うプリンタの用紙をサーバープロパティで作成した用紙 に設定した後、VBでPrinter.PaperSizeの値はどうなりますか?
補足
お返事ありがとうございます。 確かにこの方法だとPrinter.PaperSizeから値を取得できます。 しかし、この値をプログラム内に固定値で組込むのは問題があります。 例えば、作成した用紙を一度削除して作り直したりした場合、別の値になってしまう可能性があるからです。 あと、API関数のEnumFormsで用紙情報を取得して、用紙名は列挙する事は出来たのですが、これって用紙番号は取得できないですよね?
関連するQ&A
- Accessレポートのページ設定
Access2000でレポートを作成して出力するようにしているのですが、何故か指定した用紙サイズで出力されません。 今回、Accessのプログラムはそのままで、新しくPCを変更してAccessを動かそうとしています。 レポートの「ページ設定」ページタグの用紙サイズを、15*5.5インチの用紙をサーバのプロパティにて新規用紙作成した分で出力しようとしています。 レポートの「ページ設定」を、その15*5.5インチの用紙サイズで保存して、Accessレポートを実行すると、期待する5.5インチでは出力されず、A4サイズで出力されているようなんです。 また、実行後の「ページ設定」ページタグの用紙サイズをみると、15*5.5インチで設定したはずなのに、Letter になっていました。 どうしてそうなるのでしょうか。 ちなみにAccessのコードでは、PrtDevModeプロパティを使用して、PaperSizeメンバに設定しています。けど、値は221です。こんな値は本来ないのではないかと思うのですが、それが原因でしょうか。
- 締切済み
- オフィス系ソフト
- ユーザー定義用紙の用紙番号の取得?
Windows2000上でAccess2000を動かしています。 あらかじめプリンタサーバーのプロパティで定義した用紙(2,3種)を、VBAからレポートの用紙種類を指定する(印刷の都度変える)にはどうしたらいいでしょうか? 定義した用紙の番号を取得できればいいと思うのですが、用紙番号の取得の方法がわかりません。 一生懸命ググってるのですが、見つけることができません。よろしくおねがいします。 (http://www.okweb.ne.jp/kotaeru.php3?q=213927 は見たのですが、問題があったのか参考URLが削除されているので……。)
- ベストアンサー
- オフィス系ソフト
- 「新しい用紙を作成する」が反映されない
プリントサーバープロパティから「新しい用紙を作成する」で用紙を定義して、プリントサーバーのプロパティでは新しい用紙が一覧に表示されました。 それが、EXCELやAccessのページ設定で、用紙サイズの一覧にでてきません。 どうしたらいいのでしょうか? windows7、office2003、ローカルエリアネットワークの別のPCに接続されたプリンタを使っています。 ご回答、よろしくお願いいたします。
- 締切済み
- Windows 7
- プリンタドライバの用紙サイズ番号と給紙方法番号を取得する
VB6.0、Win2000の環境で、プリンタ設定ダイアログを 作成しています。 プリンタを選択するとそのプリンタの用紙サイズ(名)と 給紙方法が表示されるものです。 そこで用紙サイズと給紙方法を選択した値でもって ある帳票を出力するのですが、 選択した用紙サイズと給紙方法の番号(名称でなく)を 取得するにはどうしたらいいのでしょうか? どうぞ宜しくお願い致します。
- 締切済み
- Visual Basic
- VBAでユーザー定義用紙サイズの値を取得する
現在、Excelで出荷伝票(連続用紙)を印刷するVBAを作成しています。 [プリントサーバ-のプロパティ]に登録している「出荷伝票 幅9インチ 高さ4インチ」を用紙サイズに指定したいのですが、VBAを実行するパソコンが変わると「ActiveSheet.PageSetup.PaperSize」に設定される値も変わってしまうため、どうすれば良いのか悩んでいます。 理想としてはVBAを実行するとその都度「出荷伝票」の用紙サイズ(コード)を取得しPaperSizeに設定できれば良いのですが、そのような方法をご存知の方がおられましたらご教示のほどよろしくお願い致します。
- ベストアンサー
- Visual Basic
- VBからEXCELで印刷するときにユーザー設定用紙を設定したい
こんにちわ。 VBからEXCELにデータを書き込み、印刷したいのですが、 EXCELはフォーマットシートをあらかじめ作成し、それを開いてデータを埋め込んでいます。 そのとき、フォーマットシートのほうでは用紙サイズをユーザー設定にして幅・高さを指定しているのですが、違うプリンタで印刷すると、A4サイズになってしまいます。 VBから用紙のサイズを設定できる方法はあるのでしょうか? よろしくお願いします。
- 締切済み
- Visual Basic
- エクセル出力時の用紙サイズ設定
ASPにおいてエクセルを出力(表示)しているのですが 用紙サイズを変更できません!!!! xlsSheetWrk.PageSetup.PaperSize = xlPaperA3 (xlsSheetWrkはシートオブジェクト) これではPaperSizeプロパティのエラーになってしまいます。 よろしくおねがいします。
- ベストアンサー
- Microsoft ASP
- ExcelのVBAでの用紙のサイズ設定方法
ExcelのVBAで、定形でない用紙のサイズ設定方法を教えてください。 例えばA4は PaperSize=xlPaperA4 ですが15cm×10cmの場合はどのように記述すればよいのでしょうか?
- ベストアンサー
- その他MS Office製品
- VBAによる用紙サイズ変更(PrtDevMode)
お世話になります。 VBAで用紙サイズの変更方法をご教授願います。 現在、レポートにてラベルを作成しており、レポート1ページにラベルが3つ載ります。 レポートには切り取り線を付けており、その線に沿ってカットしている次第です。 当該レポートの作成当初は問題なかったのですが、最近プリンタのローラーの劣化なのか、上余白が多少広くなってきており、ラベル3枚のうち一番上のラベルについては若干大きくなってしまいます。 ※カットする回数を減らしたいので用紙の上余白はカットしてません。上余白もふくめたラベルとなります。 レポートのページ設定で上余白が現状5.08なのですが、変更しても5.08になってしまうことから、恐らくプリンタの限界値?かと思われます。 調べたところ、用紙サイズを変更することにより、余白を狭くすることができる(用紙ギリギリのところまで文字を印刷できる)との情報がありました。 現状A4(210×297mm)です。上余白を1~2mmほど狭くしたいので、208×297mmで設定し印刷すれば上余白が2mm狭くなると思われるのですが。。 PrtDevModeの具体的な使い方をご教授頂けたらと思います。 宜しくお願い致します。
- ベストアンサー
- オフィス系ソフト
- XPでのAccessの用紙サイズ設定について
AccessからA4レポートとA5レポートを出力させようとしています。 Windows2000上からは、用紙サイズのプロパティを変更すればできることはわかっているのですが、XP上からはどのようにすればいいのかわかりません。 どなたかご存知の方がおられましたら、よろしくお願い致します。
- 締切済み
- その他(プログラミング・開発)
お礼
ありがとうございます。 2つのサンプルプログラムを参考にして、うまくいきました。)^o^(