嘗試將Excel 2010中的表格轉換爲HTML。想知道這是否可以用VBA完成,並且如果我可以在所需的單元格中輸出代碼以便複製粘貼&粘貼功能。Excel 2010將範圍轉換爲HTML
它將要轉換的表格會自動從其他頁面中提取信息來構建它。
嘗試將Excel 2010中的表格轉換爲HTML。想知道這是否可以用VBA完成,並且如果我可以在所需的單元格中輸出代碼以便複製粘貼&粘貼功能。Excel 2010將範圍轉換爲HTML
它將要轉換的表格會自動從其他頁面中提取信息來構建它。
我想通了一個辦法解決這個問題。我使用公式和一個單獨的vba代碼替代了使用vba代碼將選定範圍轉換爲html的替代路線。
我做的第一件事就是製作一張Sheet5,然後我從表格中提取原始html數據,我試圖複製並將代碼分成代碼,然後輸入新的信息。我把每個塊都粘貼在A2-K2中。然後,我收到了手動更改的信息,並將其與A4-K4中的圖書鏈接。 (這些是使用鏈接到與我做的每件物品改變我的登錄頁上的細胞)
細胞L2,我把公式=CONCATENATE(A2,A4,B2,B4,C2," ",C4,D2," ",D4,E2," ",E4,F2," ",F4,G2," ",G4,H2," ",H4,I2," ",I4,J2," ",J4,K2)
這花了原始的HTML的每個數據塊,並從我的日誌中的信息和結合它顯示完整的HTML代碼。在我的日誌單元格C11中,我把=Sheet5!$L$2
顯示在我的主頁上的html數據來複制和粘貼值。
在此之後,我注意到excel會將雙引號添加到已經引用的所有內容中,並將單引號添加到其他區域。做了一些搜索後,我發現了一個代碼,可以複製選定單元格的值,這樣我就可以粘貼不帶引號的HTML代碼。這是我用來做這個的宏。
Sub CopyCellContents()
Range("C11").Select
'create a reference in the VBE to Microsft Forms 2.0 Lib
Dim objData As New DataObject
Dim strTemp As String
strTemp = ActiveCell.Value
objData.SetText (strTemp)
objData.PutInClipboard
End Sub`
我遇到了用戶定義數據的問題。爲了解決這個問題,我不得不退出代碼調試器,重新打開模塊中的宏,去工具<參考然後瀏覽並鍵入FM20.DLL
到「文件名:」。否則,我無法在可用參考中找到 Microsoft Forms 2.0對象庫。 我使用了Chip Pearsons網站的宏。 cpearson.com/excel/Clipboard.aspx
我把它分配給單元格C11旁邊的一個按鈕,現在當我點擊它時,代碼被複制到我的剪貼板中而不用引號。這不正是我最初的計劃,但結果正是我想要的。感謝您的幫助,希望這可以幫助其他人。
下面是我完成的一些屏幕截圖。
這是我需要每個清單的代碼。 Sheet5是分解爲單元格的原始數據。
http://i.stack.imgur.com/ATT1q.png
這是由這些公式創建的成品。我的日誌頁面上有按鈕。點擊後,它將框中的代碼複製到右側而不用引號。 http://i.stack.imgur.com/jh34N.png
整個電子表格是一個力作是不斷用不同的公式,宏,代碼等成長礦...
我敢肯定,這是可以做到。你有代碼嘗試嗎? – Kyrubas
例如,有這樣的:http://www.codeproject.com/Articles/15316/Excel-to-HTML-Macro – Kyrubas
你可以吐出一個簡單的表格或截圖,你可以採取格式或有一個默認佈局。如果你想動態刷新一個,你可以在VBA中開發一個相關的公式。不幸的是,如果沒有VBA,你的工具集幾乎不會滿足任務。 – user3819867