2013-07-22 132 views
-1

我們定期以html文件的形式獲取一組SQL查詢輸出。所以,基本上,這個html文件包含一組表格形式的SQL輸出,我可以右鍵單擊並在MS Excel中打開它。如何將html文件加載到excel電子表格中

我基本上是試圖加載在Excel中的HTML,並在不同的工作表(每個SQL輸出一個),而不是每次右鍵單擊所有輸出。

我對Excel很新,不確定如何做到這一點。

請問我可以告訴我如何做到這一點?

非常感謝

+1

請看[ask]作爲出發點。 –

+0

嗨...我試圖搜索...對不起,如果問題不明確。我正在尋找這樣的東西:http://www.mrkent.com/tools/converter/,但不希望手動完成這些步驟。我不知道如何在Excel中實現這一點,但尋找可以加載html文件並讓excel將sql輸出隔離到不同工作表中的數據的位置。任何關於如何完成這個任務的例子都會有很大的幫助。謝謝 – Sai

回答

0

我建議使用Excel的網絡查詢:請參見http://www.techrepublic.com/article/pull-data-into-microsoft-excel-with-web-queries/或谷歌搜索Excel網絡查詢。 您可能會提供一個URL,例如file:// C:\ somefolder \ somehtmlfile.html 您可以在這裏找到有關如何在創建和刷新網絡查詢時出現問題的更多信息: http://msdn.microsoft.com/en-us/library/office/aa203721(v=office.11).aspx 更好的選擇是直接提取數據進入Excel,假設誰使用電子表格可以讀取相關的數據庫表格。

0

如果您計劃將其作爲自動化操作,則可以使用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完成的,但它是一個intermediaire解決方案,但可能不是最好用的。

相關問題