
お世話になります。
私は社内でWin98SE、EXCEL97を使用して色々作成し
社内の方々の各パソコンに送って、使用してもらっています。
しかしサーバー上に接続されている通常使うプリンタでないネットワークプリンタの印刷で問題がでました。
私の環境と同じWin98、Excel97だと問題ないのですが、
社内の方でXP、EXCEL2000の環境の方々が結構います。
その環境ですと、エラーが出てしまいます。
ActivePrinter = "ネットワークプリンタ名 on NExx:"
と言ってXP、EXCEL2000の環境では、on NExx:のポートを
記述しないとエラーが出てしまいます。
(Win98、Excel97では on NeXXの記述は不要です)
※上記のネットワークプリンタ名はExcelで入力します。
このポートを取得するには、どのような方法があるのでしょうか?
また、簡単にWin98、Excel97の時のように、Nexx等を
設定しない方法をご存知の方よろしくお願い致します。
よろしくお願い致します。
No.2ベストアンサー
- 回答日時:
こんには。
以下は、Windows Script で通常使うプリンタを変更し、プリントプレビューして、VBA で元のプリンタに戻してます。
Win2000 Excel2000 で動作確認しました。
Dim sActivePrinter As String
With Application
sActivePrinter = .ActivePrinter
MsgBox sActivePrinter
With CreateObject("WScript.Network")
.SetDefaultPrinter "変更するプリンタ名"
End With
ActiveWindow.SelectedSheets.PrintPreview
.ActivePrinter = sActivePrinter
End With
"変更するプリンタ名" には "‥ on NExx" は必要ありません。
注意点は変更直後、エクセルは通常使うプリンタをロストします。
しかし、プリントプレビューは成功します。(^_^;
なぜロストするか謎ですが、プレビュー後に元に戻しているので問題ない、はず。
No.1
- 回答日時:
私も悩みました。
マクロを書くと、その点でエラーになりました。一応、対象のPCから普通にプリントをかけると一瞬on NE01とか出るので、その番号を入れたのですが、これが変わる場合があるのです。これには悩みました。で、結局は通常に使うプリンタにして印刷をかけるようなマクロにしました。
これだと、いちいち通常に・・・に変えなくてはいけないのですが(また元に戻す必要もある)他の方法は見つかりませんでした。(;^_^A アセアセ…
多分、サーバーの方で管理しているようなのですが、何故番号まで変わるのかが分かりませんでした。
mono_printer_check:
printer_name = Application.ActivePrinter
If InStr(printer_name, G_MONO_PRINTER_NAME) = 0 Then
If MsgBox("使用するプリンタを " & G_MONO_PRINTER_NAME & " に設定して、OKボタンを押して下さい。", vbOKCancel) = vbOK Then
GoTo mono_printer_check
Else
print_flg = False
End If
End If
参考まで。(この記述は私のPCのものなので、このままでは使用出来ないと思います。)
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
EXCEL マクロに於ける プリンタ番号検索方法
その他(Microsoft Office)
-
エクセルVBAでのネットワークプリンタのポー名の取得方法は?
Visual Basic(VBA)
-
マクロで印刷時のポートについて
Access(アクセス)
-
-
4
エクセルのマクロでプリンタを指定したいのですが
Visual Basic(VBA)
-
5
EXCEL VBAでプリンタの設定方法について
Excel(エクセル)
-
6
エクセルのラベルの値(文字列)を垂直方向で中央揃えにするには?
Excel(エクセル)
-
7
【Excel VBA】プリンタのプロパティダイアログの表示
Excel(エクセル)
-
8
Excel VBAでPDFファイルをMicrosoft Print to PDFで出力したい
Visual Basic(VBA)
-
9
エクセルvbaでdocuworksprinterの出力先を設定
Visual Basic(VBA)
-
10
EXCEL ページを指定してPDF出力するVBAを教えてください。
PDF
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルを開くと、「プリンタ...
-
VPN中でも自宅のwifiプリンタに
-
ネットワークプリンタで「共有...
-
ネットワーク内のプリンタ等のI...
-
エクセルでユーザー定義サイズ...
-
異なるLANにあるネットワークプ...
-
ネットワークプリンタ:プリン...
-
IPで違うネットワークアドレス...
-
ドメインに参加せずにプリンタ...
-
マックでのプリンターIPアドレ...
-
Local Potr と Standard TCP/IP...
-
プリンタが勝手に共有される
-
ネットワークプリンターで誰がW...
-
LANケーブルを直接PC接続しても...
-
離れたPC4台とプリンターを接続...
-
ネットワークプリンタが自分の...
-
EXCELネットワークプリン...
-
VPNとプリンタの設定で
-
「プリンタと通信できません」...
-
VPN接続先にある無線LAN...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルを開くと、「プリンタ...
-
プリンタに固定ipアドレスを割...
-
ネットワークプリンタに接続で...
-
ネットワークプリンタ:プリン...
-
LANケーブルを直接PC接続しても...
-
EXCELネットワークプリン...
-
異なるLANにあるネットワークプ...
-
VPN中でも自宅のwifiプリンタに
-
デフォルトゲートウェイとは?...
-
エクセルでユーザー定義サイズ...
-
ドメインに参加せずにプリンタ...
-
マックでのプリンターIPアドレ...
-
Local Potr と Standard TCP/IP...
-
VB.NETからExcelを開きプリンタ...
-
IPで違うネットワークアドレス...
-
ネットワークプリンタで「共有...
-
外部から会社のプリンタを利用...
-
USBポートとLPTポート
-
NASでのプリンタ共有方法
-
プリンタドライバに設定したIP...
おすすめ情報