
サーバーに置いてある、ひとつの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で質問しましょう!
似たような質問が見つかりました
- ルーター・ネットワーク機器 10Gbpsの恩恵 5 2022/11/16 15:48
- 固定IP Win11 アダプター設定変更にイーサネットが表示されない 1 2022/12/03 18:31
- プリンタ・スキャナー キャノンmp490プリンター【エラー番号5400】で【プリンタートラブルが発生しました。電源を入れ直 2 2023/07/24 17:45
- プリンタ・スキャナー PCとプリンターの接続 1 2023/02/08 09:00
- その他(Microsoft Office) Excelのマクロについて教えてください。 1 2022/03/25 10:03
- Excel(エクセル) 【Excel】複数シートがあるエクセルデータで片面印刷と両面印刷設定がシートごとに入 1 2023/03/10 15:25
- プリンタ・スキャナー 封筒印刷 差出人印刷ずれる 4 2022/05/01 10:12
- ネットワーク 自作のサーバーPCが自宅内のネットワークに接続できない 3 2023/01/24 16:58
- プリンタ・スキャナー 印刷 キャンセル&印刷できない 2 2022/11/29 16:45
- その他(コンピューター・テクノロジー) DHCPサーバーについて、、、。 職場のネットワーク環境で困っています。サーバーはWindows s 3 2023/01/04 10:15
このQ&Aを見た人はこんなQ&Aも見ています
-
EXCEL マクロに於ける プリンタ番号検索方法
その他(Microsoft Office)
-
マクロで印刷時のポートについて
Access(アクセス)
-
EXCELネットワークプリンタでのポート名について
Excel(エクセル)
-
-
4
エクセルのマクロでプリンタを指定したいのですが
Visual Basic(VBA)
-
5
マクロでプリンタ、用紙、給紙先を指定するには?
Excel(エクセル)
-
6
EXCEL VBAでプリンタの設定方法について
Excel(エクセル)
-
7
エクセルVBAで手差しトレイを指定させたい。
Excel(エクセル)
-
8
エクセルVBAでプリンタプロパティを操作したい
Visual Basic(VBA)
-
9
【Excel VBA】プリンタのプロパティダイアログの表示
Excel(エクセル)
-
10
エクセルVBAでマルチページの切り替え方法の件で
Excel(エクセル)
-
11
特定のEXCELのファイルを印刷するときにプリンタを替えられるか?
Excel(エクセル)
-
12
WIN32API『EnumPrinters』に関して
C言語・C++・C#
-
13
「プリンタの設定」ダイアログボックスのプリンタを指定したい。
その他(プログラミング・Web制作)
-
14
エクセル VBA でのCOMポート認識
その他(プログラミング・Web制作)
-
15
エクセルのマクロで教えて下さい
Visual Basic(VBA)
-
16
VBA で白黒印刷をしたい
Visual Basic(VBA)
-
17
ユーザーフォームを表示中にシートの操作をさせるには
Excel(エクセル)
-
18
Excel VBA の印刷後の判定
Excel(エクセル)
-
19
VBA(エクセル)で自動的にボタンをクリックさせるには
その他(プログラミング・Web制作)
-
20
エクセルの印刷ダイアログをSendkeysで操作したい。
PowerPoint(パワーポイント)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VBAでCOPYを繰り返すと、処理が...
-
【マクロ】オートフィルター を...
-
Vba Array関数について教えてく...
-
算術演算子「¥」の意味について
-
ワードの図形にマクロを登録で...
-
【マクロ】並び替えの範囲が、...
-
vbsでのwebフォームへの入力制限?
-
質問58753 このコードでうまく...
-
【マクロ】開いているブックの...
-
Vba セルの4辺について罫線が有...
-
エクセルのマクロについて教え...
-
エクセルの改行について
-
改行文字「vbCrLf」とは
-
Vba FileSystemObject オブジェ...
-
ダブルクリックで貼り付けた画...
-
VBAの質問(Msgboxについて)です
-
VBAの「To」という語句について
-
VBAでFOR NEXT分を Application...
-
VBAで特定の文字が入った行をコ...
-
VBAでセルの書式を変えずに文字...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
linux上でgetchを使いたい
-
エクセルVBAでのネットワークプ...
-
[C#]リモートアクセスのProcess...
-
VBScrptについて
-
JavaScriptでキオスクモードを...
-
携帯サイトの.htaccessによるア...
-
VB .NETで作成したソフトが、他...
-
android開発初心者です。 2つの...
-
C#で作成したDLLをExcelVBAで利...
-
C++で引数の型の構造体をif文で...
-
docomoメール内でURLリンク
-
"\\"(円マーク)が入ってしまい...
-
デバイス別に振り分けるJavaScr...
-
MACアドレスについて
-
エラー'429'ACtiveXコンポーネ...
-
【PHP】UUID・UDIDによる端末判...
-
収集した緯度、経度の平均値の...
-
Android「adb shell」パスを知...
-
FindFirstFileのファイル属性の...
-
レスポンシブWebとjQuery Mobile
おすすめ情報