Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/27.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Vba 将Excel行输出到一系列html文件_Vba_Excel - Fatal编程技术网

Vba 将Excel行输出到一系列html文件

Vba 将Excel行输出到一系列html文件,vba,excel,Vba,Excel,除了下面我面临的问题外,works提供的解决方案是完美的 输出文件在HTML代码的开头和结尾包含引号(“),如果引号已经存在,它还会添加一个额外的引号 例如,此代码: 变成这样: 我不希望添加任何额外的引号,只希望文本保持原样 请帮助我解决此问题。要将Excel数据转换为HTML,请执行以下步骤。这些说明适用于Excel 2016、2013、2010和2007的所有“功能区”版本: 在工作簿上,转到“文件”选项卡并单击“另存为”。 如果只想导出部分数据,例如一系列单元格、透视表或图形,请先选择它

除了下面我面临的问题外,works提供的解决方案是完美的

输出文件在HTML代码的开头和结尾包含引号(“),如果引号已经存在,它还会添加一个额外的引号

例如,此代码:

变成这样:

我不希望添加任何额外的引号,只希望文本保持原样


请帮助我解决此问题。

要将Excel数据转换为HTML,请执行以下步骤。这些说明适用于Excel 2016、2013、2010和2007的所有“功能区”版本:

在工作簿上,转到“文件”选项卡并单击“另存为”。 如果只想导出部分数据,例如一系列单元格、透视表或图形,请先选择它

在“另存为”对话框中,选择以下选项之一: 网页(.htm;.html)。这会将工作簿或所选内容保存到网页,并创建一个支持文件夹,用于存储该网页的所有支持文件,如图像、项目符号和背景纹理


单文件网页(.mht;.mhl)。这将把您的工作簿或所选内容保存到一个文件中,并将支持文件嵌入到网页中。

这必须是FileSystemObject中的写入方法。VBA具有内置的文件写入功能,因此我不确定我是否理解使用FSO的好处。下面是我在VBA中的操作方法,它会按预期处理引号。

Public Sub ExportFile()

    Dim sFile As String, lFile As Long
    Dim rCell As Range
    Dim sFldr As String

    sFldr = Environ$("userprofile") & "\My Documents\"

    For Each rCell In Sheet1.UsedRange.Columns(1).Cells
        sFile = sFldr & rCell.Value & ".html"
        lFile = FreeFile
        Open sFile For Output As lFile
            Print #lFile, rCell.Offset(0, 1).Value
        Close lFile
    Next rCell

End Sub

我只是在我用来测试的数据上运行了@Transistor1宏,我没有得到多余的引号,所以可能不是这样。非常感谢!:)这对我来说很有效。使用打印而不是写入解决了问题。非常有帮助!