
No.3ベストアンサー
- 回答日時:
1番ですが。
マクロの記録をとって、「ページ設定」をしても
---
・ファイル
・ページ設定
↑ VBAの管轄はここまで
よって定数(A4やB5とか)による用紙の指定は可能
↓ プリンタドライバ側の問題。プリンタによってはそもそも項目が全くない場合もあります。
・オプション
・ユーザー設定...
---
ですのでオプション以降はマクロでは記録できませんよ。
ちなみに「プリンタが変わる毎に、自分で用紙サイズを追加しないといけないと言うことですか?」
プリンタが変わる毎だけでなく(そもそも全てのプリンタでフリーサイズの設定が出来るとは限りませんし)、同じプリンタでも印刷の度に用紙サイズを指定する必要があるかと。まぁプリンタによっては前回指定した値を既定のものとしてそのまま保存するかもしれないので。
ActiveSheet.PageSetup.PaperSize =xlPaperUser
としておくだけで、前回のフリーサイズを120×260mmで指定していれば、そのまま印刷してくれるのがあるのかもしれませんね。
No.2
- 回答日時:
マクロの記録をとって、「ページ設定」をやって見てください。
私のCanonのプリンタの場合
ファイル
ページ設定
オプション
ユーザー設定
ユーザー定義サイズ
幅(0.1mm単位)1200
長さ(0.1mm単位)2600
が出ます。
結果コードを見ると、1200や2600と言う数は
出てこない(?)ようで、マージンを調節しているようですね。
.LeftMargin = Application.InchesToPoints(0.787)
.RightMargin = Application.InchesToPoints(0.787)など後5つ。
実際印刷してみて120X260mmになるかやって見てください。
プリンタ(のデバイスドライバ)に依存するかも。
No.1
- 回答日時:
無理です。
フリーサイズの用紙設定はプリンタドライバ側の問題になりますので、数値の指定をVBAからは行えません。
定数であれば指定できますが
例えば
ActiveSheet.PageSetup.PaperSize = xlPaperEnvelopeC6
とすればこれは封筒 C6 サイズですので(114 x 162 mm)と割と近い数字になるかと。まぁこれも通るかはプリンタの対応次第ですが。
他の対応としては
・セル幅をミリ単位で指定するようなアドインを使う
http://bird.zero.ad.jp/~zap50064/freesoft/Tools. …
・APIを使ってプリンタを直接制御させる
ありがとうございます。
そうですか。むりですか~。
ちなみにフリーサイズの用紙で印刷したい場合、
プリンタが変わる毎に、自分で用紙サイズを追加しないといけないと言うことですか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) ExcelのVBAコードについて教えてください。 1 2022/06/20 09:22
- Excel(エクセル) Excel VBA セルの書式設定 2 2022/03/30 10:48
- Visual Basic(VBA) エクセルのマクロについて教えてください。 1 2023/08/03 11:27
- Excel(エクセル) エクセルのマクロ設定 1 2023/04/05 19:37
- Visual Basic(VBA) ExcelのVBAコードについて教えてください。 1 2023/08/10 14:24
- Visual Basic(VBA) エクセルのマクロについて教えてください。 5 2023/06/02 08:44
- Excel(エクセル) エクセルのマクロについて教えてください。 2 2023/01/12 16:58
- Visual Basic(VBA) エクセルのマクロについて教えてください。 5 2023/07/14 12:49
- Excel(エクセル) 【マクロ】webアドレスにて指定されたCSVファイル【excelソフト表示】を印刷する件 1 2023/02/15 01:52
- Visual Basic(VBA) VBA 最終行まで数式をコピーする 3 2023/01/03 15:44
このQ&Aを見た人はこんなQ&Aも見ています
-
VBからEXCELで印刷するときにユーザー設定用紙を設定したい
Visual Basic(VBA)
-
用紙設定で作成した用紙の用紙番号をVBで取得するには?
Visual Basic(VBA)
-
マクロでプリンタ、用紙、給紙先を指定するには?
Excel(エクセル)
-
-
4
EXCEL ページを指定してPDF出力するVBAを教えてください。
PDF
-
5
ExcelVBA印刷サイズの取得のことで初歩的な質問です。
Visual Basic(VBA)
-
6
VBAでエクセルシートを更新(リフレッシュ)する方法を教えて下さい。
Excel(エクセル)
-
7
エクセルVBAでプリンタプロパティを操作したい
Visual Basic(VBA)
-
8
エクセルのマクロで印刷プレビューを閉じる方法
Excel(エクセル)
-
9
EXCEL VBA 印刷プレビューダイアログのボタン操作を判定したい
Visual Basic(VBA)
-
10
【Excel VBA】プリンタのプロパティダイアログの表示
Excel(エクセル)
-
11
エクセルVBAで手差しトレイを指定させたい。
Excel(エクセル)
-
12
VBAによる用紙サイズ変更(PrtDevMode)
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルを開くと、「プリンタ...
-
プリンタに固定ipアドレスを割...
-
ネットワークプリンタ:プリン...
-
Local Potr と Standard TCP/IP...
-
1394ネットアダプタを削除して...
-
EXCELネットワークプリン...
-
PCとプリンタの接続について
-
ネットワーク LAN にネッ...
-
プリントサーバーの設定について
-
WinSockを使ってのプリンタ接続...
-
XPから98に繋がってるプリンタ...
-
異なるLANにあるネットワークプ...
-
スーパーウィルスセキュリティZ...
-
プリンタのIPアドレス設定とは?
-
ドメインに参加せずにプリンタ...
-
エクセルでユーザー定義サイズ...
-
Access2000プリンタ設定について
-
USBポートとLPTポート
-
プリンタドライバに設定したIP...
-
エプソンプリンターとDellパソ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルを開くと、「プリンタ...
-
ネットワークプリンタ:プリン...
-
ネットワークプリンタに接続で...
-
異なるLANにあるネットワークプ...
-
VPN中でも自宅のwifiプリンタに
-
Local Potr と Standard TCP/IP...
-
LANケーブルを直接PC接続しても...
-
マックでのプリンターIPアドレ...
-
ネットワーク内のプリンタ等のI...
-
EXCELネットワークプリン...
-
Windows システムログ ID:8021...
-
VB.NETからExcelを開きプリンタ...
-
デフォルトゲートウェイとは?...
-
IPで違うネットワークアドレス...
-
エクセルでユーザー定義サイズ...
-
NASでのプリンタ共有方法
-
外部から会社のプリンタを利用...
-
ネットワークプリンタ入替にお...
-
ネットワークプリンタが自分の...
-
ローソン、ファミマの Print Sm...
おすすめ情報