将特定范围导出到HTML中

我试图从表Sheet1导出范围(“A1:C10”)作为HTML并将其保存在当前工作簿相同的目录中。 我也想保持源格式。

我正在使用以下代码,但出现错误,无法将目标文件夹定义为当前工作簿所在的文件夹。

 Sub Export() Dim rng As Range Set rng = Sheets("Sheet1").Range("A1:C10") ActiveWorkbook.PublishObjects.Add( _ SourceType:=xlSourceRange, _ Filename:=file1, _ sheet:="Sheet1", _ Source:=rng, _ HtmlType:=xlHtmlStatic).Publish End Sub 

我也试过这个:

 Sub Export() Dim rng As Range Set rng = Sheets("sheet1").Range("A1:C10") ActiveWorkbook.PublishObjects.Add( _ SourceType:=xlSourceRange, _ fileName:="C:\exported.xlsx", _ Sheet:="Sheet1", _ Source:=rng, _ HtmlType:=xlHtmlStatic).Publish End Sub 

Source:=期望一个string值的地址范围,而不是一个Range对象。

包含macros的工作簿的path可以通过ThisWorkbook.Path

 Sub Export() Dim rng As Range file1 = ThisWorkbook.Path & "\" & "test.html" Set rng = Sheets("Tabelle1").Range("A1:C10") ActiveWorkbook.PublishObjects.Add( _ SourceType:=xlSourceRange, _ Filename:=file1, _ Sheet:=rng.Worksheet.Name, _ Source:=rng.Address, _ HtmlType:=xlHtmlStatic).Publish End Sub