サーバーに置いてある、ひとつの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)
-
EXCELネットワークプリンタでのポート名について
Excel(エクセル)
-
マクロで印刷時のポートについて
Access(アクセス)
-
-
4
VBAで保存しないで閉じると空のBookが残る
Excel(エクセル)
-
5
エクセルのマクロでプリンタを指定したいのですが
Visual Basic(VBA)
-
6
EXCEL VBAで、PnPでCOMポート番号取得
Visual Basic(VBA)
-
7
エクセルのマクロで教えて下さい
Visual Basic(VBA)
-
8
エクセルVBAでプリンタプロパティを操作したい
Visual Basic(VBA)
-
9
WIN32API『EnumPrinters』に関して
C言語・C++・C#
-
10
【Excel VBA】マクロでExcel自体を終了させたい
Excel(エクセル)
-
11
Accessでテーブル名やクエリ名一覧の抜き出し
Access(アクセス)
-
12
excel マクロ PDF化の際のエラーについて
Visual Basic(VBA)
-
13
vbaから他のアプリを終了
Visual Basic(VBA)
-
14
Excel VBAでPDFファイルをMicrosoft Print to PDFで出力したい
Visual Basic(VBA)
-
15
ExcelVBAでPDFを閉じるソース
その他(Microsoft Office)
-
16
エクセルvbaでdocuworksprinterの出力先を設定
Visual Basic(VBA)
関連するカテゴリからQ&Aを探す
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Excelのマクロについて教えてく...
-
エクセルVBAコードで教えて下さ...
-
VBAコードについて教えてくださ...
-
vba アクティブシートの名前変...
-
Outlookの「受信日時」「件名」...
-
Excelのマクロについて教えてく...
-
Excelのマクロについて教えてく...
-
VBA 別ブックからコピペしたい...
-
Excelのマクロについて教えてく...
-
Excelのマクロについて教えてく...
-
VBAの計算で@が出てしまう件
-
エクセルのマクロについて教え...
-
Outlookにて既にウィドウ単体で...
-
ユーザーフォームに別シートか...
-
Excelのマクロについて教えてく...
-
Vba 実数および実数タイプの変...
-
Excelのマクロについて教えてく...
-
久しぶりのプログラミング
-
エクセルVBA
-
Excelのマクロについて教えてく...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
linux上でgetchを使いたい
-
エクセルVBAでのネットワークプ...
-
親スレッドが子スレッドを監視...
-
VB.NetのWMIを用いたリモート端...
-
VBScrptについて
-
C#で作成したDLLをExcelVBAで利...
-
JavaScriptでキオスクモードを...
-
[C#]リモートアクセスのProcess...
-
docomoメール内でURLリンク
-
VB .NETで作成したソフトが、他...
-
DBGrid のライセンスの取得に関...
-
VSSにてrights.datアクセス拒否...
-
会員制動画配信サイトを作りた...
-
閲覧したスクロール位置に戻る...
-
HYBRIDW-ZERO3をPC3台と同期し...
-
VB6からVB.NET作成DLL呼び出し...
-
Android「adb shell」パスを知...
-
C++で引数の型の構造体をif文で...
-
iHTMLとCHTMLの違いを教えてく...
-
収集した緯度、経度の平均値の...
おすすめ情報