2015-10-04 51 views
0

我想保存一個範圍作爲圖片文件。下面的代碼(從另一篇文章中刪除)有效,但我不想創建圖表頁面,然後我需要刪除。有什麼建議麼?保存範圍作爲圖片文件/ pdf在一頁

Sub savedeal() 

Dim sSheetName As String 
Dim oRangeToCopy As Range 
Dim oCht As Chart 
Dim myFileName As String, myPath As String 

myFileName = Format(Now(), "dd-mmm-yy") & "-" & "DEAL.PNG" 
myPath = "D:\Hughs Files\Google Drive\Work Folder\Polaris\Blog\" 


Worksheets("BOOK").Range("B15:M45").CopyPicture xlScreen, xlBitmap 

Set oCht = Charts.Add 

With oCht 
    .Export Filename:=myPath & "\" & myFileName, Filtername:="PNG" 
End With 
End Sub 
+0

**爲什麼不代碼刪除圖表頁面?? ** –

回答

1

這已被討論多年,如果你想讓它保存爲你將不得不添加圖表,即使插件使用的圖表圖像。

你可以做的一件事就是將所需範圍保存爲PDF格式。

Sub RngToPDF() 
    Dim sh As Worksheet, rng As Range, Fnm As String 

    Set sh = Sheets("Book") 
    Set rng = sh.Range("B15:M45") 
    Fnm = "C:\Users\Dave\Downloads\TestMe.pdf" 

    With sh.PageSetup 
     .PrintArea = rng.Address 
     .PrintGridlines = True 
     .FitToPagesWide = 1 
     .FitToPagesTall = 1 
    End With 

    sh.ExportAsFixedFormat Type:=xlTypePDF, Filename:=Fnm 


End Sub 
+0

感謝Davesexcel,我在網上看到所有的職位,但希望有最近圍繞制定了工作。但我認爲出口作爲pdf是更好的方法。 即使將頁面方向設置爲橫向,範圍仍會跨兩頁導出。我如何在單個頁面上創建pdf? – Zeus

+0

我添加了''.Zoom = false''和''.Orientation = xlLandscape'',它現在在一頁上打印範圍。謝謝您的幫助。 – Zeus