2012-01-23 8 views
0

Excelファイル内のボタンをクリックする以外のユーザーインターフェイスなしでPDFファイルを自動的に作成しようとしています。私はすべての権利を以下のコードを使用しているようだが、自動的に生成された名前としてファイルを保存するために来ると、コードは、ユーザーを停止するようだと(コードから自動的にそれをつかむのではなく、 )。私はsendkeysが私のために働いていないという気持ちがあります。誰でも素早く見ることができますか?最後のステップで立ち往生しようとしています(Sendkeysを使用してファイルとして自動的に保存)msExcel 2003

おかげ macutan

Sub PrinttoPDFTest()

ActiveSheet.PageSetup.PrintArea = "$A$1:$F$17" 
With ActiveSheet.PageSetup 
    .PrintTitleRows = "" 
    .PrintTitleColumns = "" 
End With 
ActiveSheet.PageSetup.PrintArea = "$A$1:$F$17" 
With ActiveSheet.PageSetup 
    .Orientation = xlLandscape 
    .FitToPagesWide = 1 
    .FitToPagesTall = 1 
End With 

ActiveWindow.SelectedSheets.PrintOut Copies:=1, ActivePrinter:="Adobe PDF on Ne04:", Collate:=True 

newHour = Hour(Now()) 
newMinute = Minute(Now()) 
newSecond = Second(Now()) + 5 
waitTime = TimeSerial(newHour, newMinute, newSecond) 
Application.Wait waitTime 

Filename = "C:\Temp\PDF\" & ActiveSheet.Range("DateSerial").Value & ".pdf" 

SendKeys Filename & "{Enter}", False 

End Sub 

+1

はこちらをご覧ください:[ozgrid](http://www.ozgrid.com/forum/showthread.php?t=25773) – Reafidy

+0

おかげReafidyが、これは働いていました!ありがとう! – macutan

+0

さて、回答として投稿されました。ありがとう。 – Reafidy

答えて

0

はこちらをご覧:Ozgrid Print to PDF

+0

実際、このファイルを使用するすべての人がDistillerを持っているわけではないことに気づいただけです... SendKeysがsave as dialogueで動作していない理由についての手掛かりはありますか? – macutan

5

むしろ.PrintOutより.ExportAsFixedFormatを使用するように簡単で、ちょうど(遅延なしコードは必要ありません)あなたの要求を積み重ねます:

Sub ExporttoPDF() 

    Sheets("Sheet1").ExportAsFixedFormat xlTypePDF, "C:\Folder\Filename1.pdf" 
    Sheets("Sheet2").ExportAsFixedFormat xlTypePDF, "C:\Folder\Filename2.pdf" 

End Sub 

宛先とファイル名を置き換えてこのコードeは正常に動作するはずです。

Sheets("Sheet1").ExportAsFixedFormat xlTypePDF, "C:\Folder\" & Range("P10").Value & ".pdf" 

または変数にファイル名を格納し、それをこのように実行します:

dim filename as string 

filename = Range("P10").Value 

Sheets("Sheet1").ExportAsFixedFormat xlTypePDF, filename 
を使用すると、ファイル名の一部として、シートの値を使用したい場合は、このように(&)を連結することができます

そして、それが延々と続く...

+0

このRobをありがとう、私はちょうどあなたのコードをテストしています:実行時エラー '438':オブジェクトはこのプロパティまたはメソッドをサポートしていません。私は使用する必要がある参照の名前は何ですか? thx – macutan

+0

ExportAsFixedFormatを使用すると、PDFに印刷するときに必要な最後のステップを回避できます。ただし、エクスポートPDFは、印刷によって作成されたものの4倍のサイズです。私がpdfに印刷するとき、私はpdfとして保存すると22kpのファイルサイズになります。私は84を取得します。私たちはPDFの多くを添付してメールを差し上げると、電子メールが大きなものになる可能性があります。 – user2888068

関連する問題