
サーバーに置いてある、ひとつのExcelシートをマクロを使用して印刷時のプリンターや範囲指定をしたかったのですが、各端末でアクティブプリンターの名称(ポート名)が異なっており、うまくいきません。
具体的には「プリンター名 on ポート名" の「ポート名」の部分が端末ごとで異なっています。
なに良い解決策があれば、教えてください。
※現在の状況
プリンター:同一のものが2台。LAN上で特定の固定IPを使用。
端末:複数台とも全てWinXP/Excel2003。LAN上でDHCPにて、サーバーより動的IPを使取得。
No.2ベストアンサー
- 回答日時:
#1 さんの Printer型は、Excelにはないはずですね。
>Dim p As Printer
API の EnumPrintersで、取ればよいと思います。
他人のコードを丸写しをしたくないので、Google で検索してみてください。
私も作ったことがありますが、時々、他人のコードがOS依存で違う場合がありますので、十分に注意してください。
ありがとうございます。
早速、調べてみると似たよう状況の方が多く、とても参考になりました。
これで再度チャレンジしてみます。
早急な回答、感謝します。
No.1
- 回答日時:
ヒント
Private Sub Form_Click()
Dim p As Printer
For Each p In Printers
Debug.Print p.DeviceName
Next
End Sub
早急な対応ありがとうございます。
マクロ等のVBAについては、限りなく素人に近いため回答の構文が良く理解できません。(スミマセン)
実際に特定の端末1台で使えたもを記述しておきます。
これがLAN上の他の端末では、プリンター名の「on」以下が端末ごとで違います。
何か良い方法があれば伝授してください。
よろしくお願いします。
Private Sub CommandButton1_Click()
Range("A1:BF55").Select
ActiveSheet.PageSetup.PrintArea = "$A$1:$BF$55"
Application.ActivePrinter = "LBP1450-A on Ne00:"
ActiveWindow.SelectedSheets.PrintOut Copies:=1, ActivePrinter:= _
"LBP1420-A on Ne00:", Collate:=True
Range("A56:BF82").Select
ActiveSheet.PageSetup.PrintArea = "$A$56:$BF$82"
Application.ActivePrinter = "LBP1420-B on Ne02:"
ActiveWindow.SelectedSheets.PrintOut Copies:=1, ActivePrinter:= _
"LBP1420-B on Ne02:", Collate:=True
End Sub
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
EXCEL マクロに於ける プリンタ番号検索方法
その他(Microsoft Office)
-
マクロで印刷時のポートについて
Access(アクセス)
-
EXCELネットワークプリンタでのポート名について
Excel(エクセル)
-
-
4
エクセルのマクロでプリンタを指定したいのですが
Visual Basic(VBA)
-
5
エクセルVBAでプリンタプロパティを操作したい
Visual Basic(VBA)
-
6
【Excel VBA】プリンタのプロパティダイアログの表示
Excel(エクセル)
-
7
EXCEL VBAでプリンタの設定方法について
Excel(エクセル)
-
8
エクセルVBAで手差しトレイを指定させたい。
Excel(エクセル)
-
9
マクロでプリンタ、用紙、給紙先を指定するには?
Excel(エクセル)
-
10
WIN32API『EnumPrinters』に関して
C言語・C++・C#
-
11
特定のEXCELのファイルを印刷するときにプリンタを替えられるか?
Excel(エクセル)
-
12
エクセルVBAでマルチページの切り替え方法の件で
Excel(エクセル)
-
13
「プリンタの設定」ダイアログボックスのプリンタを指定したい。
その他(プログラミング・Web制作)
-
14
エクセルのマクロで教えて下さい
Visual Basic(VBA)
-
15
エクセルVBA ユーザーフォームのTextBoxを日付にしたい
Excel(エクセル)
-
16
ユーザーフォームを表示中にシートの操作をさせるには
Excel(エクセル)
-
17
エクセル VBA でのCOMポート認識
その他(プログラミング・Web制作)
-
18
EXCEL VBAで、PnPでCOMポート番号取得
Visual Basic(VBA)
-
19
Excel2003 マクロ 1ページのみ印刷する
Excel(エクセル)
-
20
VBA で白黒印刷をしたい
Visual Basic(VBA)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VBAでCOPYを繰り返すと、処理が...
-
vba textboxへの入力について教...
-
Vba セルの4辺について罫線が有...
-
【VBA】 結合セルに複数画像と...
-
複数のExcelファイルをマージす...
-
VBAでセルの書式を変えずに文字...
-
Vba Array関数について教えてく...
-
vbsでのwebフォームへの入力制限?
-
pdfファイルの複数添付 引数の型
-
【マクロ】シートの変数へ入れ...
-
【マクロ】売上一覧YYYYMMDDHHS...
-
【マクロ】開いているブックの...
-
エクセルのマクロについて教え...
-
vb.net(vs2022)のtextboxのデザ...
-
【ExcelVBA】5万行以上のデー...
-
VBA 入力箇所指定方法
-
エクセルのマクロについて教え...
-
【ExcelVBA】値を変更しながら...
-
VBA ユーザーフォーム ボタンク...
-
【マクロ】並び替えの範囲が、...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
linux上でgetchを使いたい
-
エクセルVBAでのネットワークプ...
-
VBScrptについて
-
JavaScriptでキオスクモードを...
-
[C#]リモートアクセスのProcess...
-
【PHP】UUID・UDIDによる端末判...
-
会員以外のアクセス制限につい...
-
docomoメール内でURLリンク
-
VB .NETで作成したソフトが、他...
-
VB.NetのWMIを用いたリモート端...
-
親スレッドが子スレッドを監視...
-
エラー'429'ACtiveXコンポーネ...
-
テキスト,TStringList,commmaTe...
-
「Androidアプリ開発」JSPやサ...
-
タッチパネルディスプレイのカ...
-
ASP.NET モバイルで個人(の端...
-
EUC-JPだと携帯で文字化け!?
-
C++で引数の型の構造体をif文で...
-
デバイス別に振り分けるJavaScr...
-
C#で作成したDLLをExcelVBAで利...
おすすめ情報