2013-04-24 13 views
1

我試圖從Excel發佈圖表,HTML文件,我想在自動化Outlook郵件進一步使用。下面 是代碼:問題而從Excel發佈圖表HTML中使用xlHTML性能

Sub SaveChartWeb() 
Dim wb As Workbook 
Dim ws As Worksheet 
Set wb = ActiveWorkbook 
Set ws = ActiveSheet 
wb.PublishObjects.Add _ 
    SourceType:=xlSourceChart, _ 
    Filename:=wb.Path & "\Sample2.htm", _ 
    Sheet:=ws.Name, _ 
    Source:="Chart 22", _ 
    HtmlType:=xlHtmlChart 

wb.PublishObjects(1).Publish (True) 
End Sub 

當我運行這段代碼,它拋出以下錯誤: 「運行時間1004年:此方法或屬性在這個版本上的Excel不再支持」

我有嘗試了所有可能的源類型和HTMLtype組合。當我使用xlHTMLstatic時,它可以工作,但它會發布整個工作表,這是不需要的。

+0

或許圖表從工作表移動到一個圖表,然後公佈呢? – 2013-04-24 14:44:41

回答

0

繼我的意見,試試這個

Sub SaveChartWeb() 
    Dim wb As Workbook 
    Dim ws As Worksheet 

    Set wb = ThisWorkbook 
    Set ws = wb.Sheets("Sheet1") 

    ws.ChartObjects("Chart 1").Activate 
    ActiveChart.Location Where:=xlLocationAsNewSheet 

    With wb.PublishObjects.Add(xlSourceChart, "C:\Sample.htm", ActiveChart.Name _ 
     , "", xlHtmlStatic, "", "") 
     .Publish (True) 
    End With 
End Sub 

您可以在圖表總是移回表或關閉原始文件,但不保存。