2016-09-22 12 views
0

私は3つの列A、B、Cを持つExcelファイルを持っています。シリアル番号、ファイル番号、名前。XPSをGoogle検索から印刷します。ファイル名にダイアログボックスを表示せずにExcelファイル

が、私はGoogleで、列Aを検索し、設定されたディレクトリでXPS形式の最初のページの結果を印刷して、このような何かを含んだファイル名にしたい:

「シリアル番号/ファイル番号/名前」 「1/1103 /名称A.オンラインさまざまな検索から「

をXPSモックアップ、私は次のコードをカット&ペーストするために管理:上記のコード

Const OLECMDID_PRINT = 6 
Const OLECMDEXECOPT_DONTPROMPTUSER = 1 
Const PRINT_WAITFORCOMPLETION = 2 

Sub AutoSearch() 
Dim N As Long, i As Long 
N = Cells(Rows.Count, "C").End(xlUp).Row 
Dim objIE 

Set objIE = CreateObject("InternetExplorer.Application") 

With ActiveWorkbook 
    For i = 2 To N 
    objIE.Navigate "http://www.Google.com/search?q=" & Cells(i, 1).Value 
    objIE.Visible = 1 
    Do While objIE.ReadyState <> 4 
    DoEvents 
     Loop 
     objIE.ExecWB OLECMDID_PRINT, OLECMDEXECOPT_DONTPROMPTUSER, 1 
Next i 
End With 

End Sub 

は、私は、列に名前をつかむことができます、グーグルで検索し、 XPSで印刷しますが、まだ私にはありません私が望むファイル名の形式とディレクトリに保存するように操作する方法を教えてください。

コーディングに慣れていないので、VBA以外のものと関連する印刷ダイアログを抑制するためのすべての解決方法がありますが、それをどのようにvbaに変換するかはわかりません。

https://blogs.msdn.microsoft.com/fyuan/2007/02/24/printing-documents-to-microsoft-xps-document-writer-without-user-interaction/

あなたが任意の溶液またはより良いアイデアを持っている場合、私に知らせてください。

は「一部」の研究と周りに掘った後、そんなに

+0

XPS形式で保存する理由はありますか?また、あなたのシートのスナップショットを提供することができます – Zac

+0

[link] {http://s9.postimg.org/627j9ld8f/example1.jpg} –

+0

こんにちはZac ありがとうございます。 XPSである必要はありません。限り、それはタイムスタンプでWebページを保存することができます。上記は私のシートのスクリーンショットのリンクです。 –

答えて

0

をありがとう、私は解決策散歩を発見しました。私はプログラマーではないので、 "http://wkhtmltopdf.org/"から派生した "http://www.weenysoft.com/free-html-to-pdf-converter.html"と呼ばれるフリーウェアに出くわしました。それらのスーパーコーダーの場合、ソリューションをより直接的かつ効率的に扱うことができるので、後者のアプローチがより良い方法です。しかし、私にとっては、最初の解決策を守らなければなりませんでした。これは、生成するpdfファイルにタイムスタンプを付けることができません。

したがって、私はpdfファイルにタイムスタンプを入れるために、 "File_Name_Stamper.pdf(ちょうどgoogle this)"のアプローチを使用する必要があります。複数のファイルを使用するには、マクロレコーダーを使用するだけです。

上記のやり方は、まったくプログラマーにはお勧めできませんが、上記のアプローチはかなり悲しいですが、当面はその仕事をします。

乾杯。

関連する問題