Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/26.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
如何将html文件加载到excel电子表格中_Excel_Vba - Fatal编程技术网

如何将html文件加载到excel电子表格中

如何将html文件加载到excel电子表格中,excel,vba,Excel,Vba,我们定期以html文件的形式获取一组SQL查询输出。因此,基本上,这个html文件包含一组表格形式的SQL输出,我可以右键单击并在MS Excel中打开它 我基本上是尝试在Excel中加载html,并将所有输出放在不同的工作表中(每个SQL输出一个),而不是每次右键单击 我对Excel非常陌生,不知道如何做到这一点 你能告诉我如何做到这一点吗 非常感谢我建议使用Excel Web查询:在Google上查看或搜索Excel Web查询。 您可以提供一个URL,如file://C:\somefold

我们定期以html文件的形式获取一组SQL查询输出。因此,基本上,这个html文件包含一组表格形式的SQL输出,我可以右键单击并在MS Excel中打开它

我基本上是尝试在Excel中加载html,并将所有输出放在不同的工作表中(每个SQL输出一个),而不是每次右键单击

我对Excel非常陌生,不知道如何做到这一点

你能告诉我如何做到这一点吗


非常感谢

我建议使用Excel Web查询:在Google上查看或搜索Excel Web查询。 您可以提供一个URL,如file://C:\somefolder\somehtmlfile.html 您可以在此处找到有关如何有问题地创建和刷新web查询的更多信息:
一个更好的选择是直接将数据拉入Excel,假设使用该电子表格的任何人都具有对相关数据库表的读取权限。

如果您计划将其作为一种自动化,可以使用C。 当你把你的网站从你的网页复制到一个C#中的变量中,然后从C#中,你把它粘贴到你选择的位置。 因此,我们使用剪贴板作为辅助工具,它允许将内容复制到剪贴板中,从而将任何html表转换为Excel表

Microsoft.Office.Interop.Excel.Application excel = null;
Microsoft.Office.Interop.Excel.Workbook xls = null;

Excel.Workbook workbook;
workbook = xlsApp.Workbooks.Open("Your excel file.xls", Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing,Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing,Type.Missing, Type.Missing);
foreach (Excel.Worksheet sheet in workbook.Sheets)
{
      if(sheet.Name.Equals("Which worksheet you want to map"))
      /// the table is converted to html table in clipboard
      string html = Clipboard.GetText(TextDataFormat.Html); // you actually can give him the HTML code of the table too
      // TextDataFormat.Html can be anyy html code
      File.WriteAllText(temporaryFilePath, html);
      Clipboard.SetText(html);
      sheet.Range(cellmapp).PasteSpecial();
      sheet.Columns.AutoFit();
      sheet.Rows.AutoFit();
}
现在,如果您从代码中编写一个简单的
.exe
可执行程序,您甚至可以将其计划为每天自动执行。
这是通过Microsoft.Office.Interop
完成的,但这是一个中间解决方案,但可能不是最好的使用方法。

请查看作为起点。您好…我已尝试搜索。。。对不起,问题不清楚。我正在寻找这样的东西:但不希望这些步骤是手动完成的。我不确定如何在excel中实现这一点,但我正在寻找在哪里可以加载html文件,并让excel将sql输出分离到不同工作表中的数据中。任何关于如何做到这一点的例子都会有很大帮助。谢谢