プリンタ の検索結果:

WMIのWin32_Printerクラス

…erクラス VBAでプリンタまわりを操作したいなあと思って、あれこれ調べていると、「WMI(Windows Management Instrumentation)」というものを使うという道があることがわかった。 そうしょっちゅう使うわけでもないが、覚書として記しておくことにする。 ちなみに、Shellを使う方法については、 akashi-keirin.hatenablog.com コチラをどうぞ。 目次 お世話になったサイト VBAに移植する 残された課題 おわりに お世話に…

VBAでプリンタを変更する

プリンタの切り替え VBAで、使用中のプリンタを切り替える方法。 目次 かつての考え方 こんな方法があったのか おわりに かつての考え方 Application.ActivePrinterプロパティで切り替える VBAでプリンタを切り替えるには、Application.ActivePrinterプロパティの値を変えるしかないと思い込んでいた。 しかし、この方式には難点がある。 Apploication.ActivePrinterプロパティの難点 Application.Act…

ワークシートを任意の名前の軽量PDFにする

…掲ツールは自動印刷のプリンタをJUST PDFに置き換えているだけなので、そもそも 任意のファイル名を指定することができない という弱点があった。 たとえば、JUST PDF 3の場合、 このように、①「実行時に設定」するか、②「作成元ファイルと同じ」という設定しかない。 ①の場合、任意のファイル名を指定することはできるが、保存するたびにダイアログにファイル名を入力しなければならない。目指すのが自動化である以上、この設定は論外。 ②の場合、文字通り「作成元のファイル名」すなわ…

プリンタ名を返すProperty

プリンタ名を取得するProperty 前回 akashi-keirin.hatenablog.com の続き。 前回までに作成したInstalledPrinterクラスにPropertyを追加する。 追加するPropertyは、printerName(ByVal printerIndex As Long)とし、引数にインデックスを渡したら、該当するプリンタの名前を返す、というものにする。 コード リスト1 クラスモジュール宣言セクション Private printerName…

ポート名(?)付きのプリンタ名を返すFunction

ポート名(?)付きのプリンタ名を返すFunction 前回、 akashi-keirin.hatenablog.com 前々回 akashi-keirin.hatenablog.com の集大成。 コード プリンタの名前を渡したら、ポート名(?)付きのプリンタ名を返すFunctionを作ってみた。 前回同様、オブジェクト名は「InstalledPrinter」とし、PredeclaredIdをTrueにしている。 リスト1 クラスモジュール Public Function g…

プリンタの数を返すFunction

プリンタの数を調べるFunction Application.ActivePrinterにプリンタ名をセットしたくても、プリンタ名の後ろにくっついている「on NeXX:」の部分がわからないとセットできない。 同じプリンタに接続していても、端末ごとに「NeXX:」の部分が異なるので困ることになる。 そこで、「XX」の部分を「00」からインクリメントしてプリンタ名にヒットするかどうか確認することを考えた。 そのためには、ループ回数を決めるためにインストールされているプリンタの数…

プリンタが存在するかどうかを判定するFunction

プリンタが存在するかを調べるFunction 軽量PDFを作成するためには、ExportAsFixedFormatメソッドを用いていたのでは限界があるので、 akashi-keirin.hatenablog.com このときのように、プリンタにJUST PDFなどの、PDF出力用プリンタを選択する。 その場合、プリンタ名をApplication.ActivePrinterプロパティにプリンタ名をセットすることになる。 このとき、存在しないプリンタ名をセットしようとすると、当然…

ExcelVBAでWordドキュメントを軽量PDF化する

…ST PDF 3」のプリンタ名が入った定数。ちなみに、JUST PDF 3 on Ne03:という文字列が当てられている。 JUST PDF 3 側の設定で、黙って指定済みのフォルダに保存するようにしているので、実行するといつの間にか こんな風にPDFができている。 画像ではPDFが2つできているが、上がconvertDocumentToLightPDFメソッドで作成したもの。 下は、 Wordの「名前を付けて保存」でPDF化したもの。 「最小サイズ」を指定しても48キロバイ…

プリンタ名を調べる

プリンタ名を取得する akashi-keirin.hatenablog.com コチラをうpしたところ、Twitterで次のサイト(『パソコンの小技・備忘録(ExcelのVBAで、パソコンのプリンタ一覧を取得したい。)』)をご紹介いただいた。 たぶん、 プリンタ名を比較するときにApplication.ActivePrinterの返り値をそのまま使うことができないのだ。 そんなわけで、仕方なく純粋なプリンタ名だけをまず切り出して、比較しているのだ。 のところを見て、教えてくだ…

ワークシートの軽量PDF化(Excel)

…なことから、VBAでプリンタを指定できると知り、ちょっとやってみた。 Application.ActivePrinterプロパティ Application.ActivePrinterプロパティというものを使えば、カンタンにプリンタを切り替えることができる。 まず、イミディエイト・ウインドウで現在のApplication.ActivePrinterプロパティを調べてみる。 イミディエイト・ウインドウに、 ?Application.ActivePrinter と入力して[Ente…

「作業グループ」状態をVBAで作るには[Excel]

…は表現が難しいので、プリンタはJUST PDFを指定してある。 まずプレビューが表示される。画像では全く伝わらないが、ちゃんと3ページ分ある。 しかる後、印刷が実行されて、PDFが表示された。 ちゃんと3ページ分一気に表示されている。 おわりに 「直接操作でしかやらないような動作」というのがあって、そういうのは簡単な操作なのに、案外VBAでどうやるか知らないもんだなあ、ということです。 コレクションのインデックスを配列で指定するという発想は、正直全くありませんでした。 @ak…

編集中のWordドキュメントをサクッとPDF化するアドイン

…は[印刷]メニューでプリンタをJUST PDFとかCubePDFとかに設定してPDFを吐かせていた。 ただコレ、意外とヒマかかるんですよ。 編集中のWordドキュメントをサクッとPDF化したい、というときには不便だった。たった1つや2つのためにわざわざExcelで作ったPDF化ツールを立ち上げるのもばかげているし。 そこで、アドインですよ! そこでひらめいたのが、最近ハマり気味の「アドイン」。 で、やってみた……んですけどね、 なんでExcelとアドインの登録方法が違うねん!…

LotusScriptのメソッド実行に成功した

…閉じられる。並行してプリンタからメール文面が出てきた。おおっ、うまく行ったぞ! 第4引数の「0」を「()」で括るというのが必要なのかどうかよく分かっていないが、とりあえずこれでうまく行っている。 最後に注意 ひとまずこれで意図したとおりの結果が得られたわけだが、1点だけ注意。 今回のコードを利用したマクロでは、メールを作成するだけして送信せずに印刷だけして閉じているので、メールが作成されるごとにドラフトに未送信のメールがばかすか溜まっていきます。添付ファイル次第ではすぐにメー…

私のVBAとの出会い

…て実行したらアンタ、プリンタから凄まじい勢いで出てくるw ええ、ものの5分もたたずにできちゃいましたよ。 「これがマクロってものか」……すぐに本屋へ走りましたよ。そこで出会ったのが立山秀利さんの『実例で学ぶExcelVBA』。この本を読んで、データ転記マクロを自作してから一気にハマりました。 それからはまあ、自分の業務に関することでおよそ自動化できそうなものはほとんど自動化していきましたよ。おかげで、残業自慢しとるようなヤツばっかりの職場内で私だけが目に見えて残業や休日の自主…