- ベストアンサー
既定のプリンターに設定するマクロ
マクロを設定したのですがうまくいきません。なぜでしょうか。プリンターの名前はプロパティからそのままコピーしたので名前は大丈夫だと思います。 実行時エラー 1004 コントロールが表示されていない、利用できない、またはフォーカスを持てないため、そのコントロールにフォーカスを移すことはできません。 少し時間をおいて開いた時 実行時エラー 1004 ActivePrinterメソッドは失敗しました。 Option Explicit Private Sub Workbook_Open() Application.ActivePrinter = "iR-ADV C3530 III" End Sub
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
> ポート名の後のコロン ":" が必要です。 https://learn.microsoft.com/ja-jp/office/vba/api/excel.application.activeprinter という情報がある。
その他の回答 (1)
- kkkkkm
- ベストアンサー率66% (1719/2589)
> Application.ActivePrinter = "iR-ADV C3530 III" 最後にポート名が必要です。 通常使うプリンタ(アクティブプリンタ)を取得/設定する【ActivePrinterプロパティ】【ExcelVBA】 https://vba-create.jp/vba-property-activeprinter/ iR-ADV C3530 IIIをWindowsで既定のプリンタにしてから MsgBox Application.ActivePrinter で表示されたポート名「 on Ne01:」みたいなものを含めてすべて表示されますので必要な部分だけを最後に追加してください。 ポート名が分かれば既定のプリンタを元に戻してください。
お礼
解決しました。ありがとうございます。