2013-06-03 46 views
2

Excel 2010,2013Excel用戶表單 - 從剪貼板獲取HTML

我在剪貼板上有一些HTML,我想通過Excel UserForm解析它。

我可以使用VB.Net檢索剪貼板上的格式,並在返回的數組中列出「HTML格式」。在EXCEL VBA中,Howerver s = MyDataobj.GetText("HTML Format")失敗。事實上我無法得到任何傳遞給GetText()的參數來返回任何東西。我可以將剪貼板粘貼到電子表格中,Excel可以很好地粘貼HTMl表格。

將數據放在剪貼板上的程序是Lotus Notes,因此他們知道可能存在什麼奇特格式。

有沒有一種方法可以在VBA中發現可從DataObject獲得的可用格式(以及用於檢索數據的幻數/字符串)?

這是我用於提取文本的代碼。我應該能夠通過GetText檢索其他格式,但我不知道要傳遞的參數值。

 Public Function GetText() As String 
     On Error GoTo Local_err 
      Dim MyData As DataObject 
      Dim strClip As String 

      Set MyData = New DataObject 
      MyData.GetFromClipboard 
      GetText = MyData.GetText 
     local_exit: 
      Exit Function 
     Local_err: 
      MsgBox Err & " " & Err.Description & vbCrLf & vbCrLf & "GetText from Clipboard: text not found" 
      Resume local_exit 
      Resume 
     End Function 

回答

3

使用VBA,您只能從dataobject獲得文本。我認爲你需要API調用這個芯片皮爾遜有示例代碼:http://www.cpearson.com/excel/Clipboard.aspx這可能會幫助你。

+0

謝謝 - 我很快查看了代碼,我沒有看到獲得替代格式的方法。我可能會使用臨時工作表並粘貼HTML,然後從單元格中提取數據。 – rheitzman