Board logo

標題: [發問] 地址翻譯匯入與匯出 [打印本頁]

作者: paddyliu    時間: 2012-11-5 15:05     標題: 地址翻譯匯入與匯出

因工作需要,要把地址中翻英輸入翻譯網址http://cdict.net/ 或中華郵政 (因需下拉故放棄)
資料約2000多筆,已爬過文用HYPERLINK("http://cdict.net/?q=" & G2,"address")的公式省下逐筆剪下貼上的時間,
但還是請教各位善心的VBA高手,能否可以VBA將地址匯入後,將查詢結果匯回Excel欄位?
謝謝:)
作者: kimbal    時間: 2012-11-10 00:06

因工作需要,要把地址中翻英輸入翻譯網址http://cdict.net/ 或中華郵政 (因需下拉故放棄)
資料約2000多筆, ...
paddyliu 發表於 2012-11-5 15:05


不好意思, 慢了

只要http://cdict.net/ 不改版, 也可以用的.
  1. Public Function getCdit(strIn As Variant) As Variant
  2.     Dim objXML
  3.     Dim strResult As String
  4.     Dim strResultFin As String
  5.     Dim lngPosStart As Long
  6.     Dim lngPosEnd As Long
  7.    
  8.     Set objXML = CreateObject("MSXML2.ServerXMLHTTP")
  9.     objXML.Open "GET", "http://cdict.net/?q=" & strIn, False
  10.     Call objXML.send
  11.     strResult = objXML.responseText
  12.     strResultFin = ""
  13.     lngPosStart = InStr(1, strResult, "<div id='eng_addr'>", vbTextCompare)
  14.     If lngPosStart > 0 Then
  15.         lngPosEnd = InStr(lngPosStart, strResult, "</div>", vbTextCompare)
  16.         strResultFin = Mid(strResult, lngPosStart + Len("<div id='eng_addr'>"), lngPosEnd - lngPosStart - Len("<div id='eng_addr'>"))
  17.     End If
  18.     getCdit = strResultFin
  19.     Set objXML = Nothing
  20. End Function
複製代碼
[attach]13088[/attach]
作者: paddyliu    時間: 2012-11-12 11:21

回復 2# kimbal

感謝您的提供,目前自己用土法鍊鋼只做了200多筆:'(
但我想請問如果中文地址是在E欄,需查詢後轉回F欄,
需更改程式區的哪一些區塊?而且我按執行鍵都一直跑巨集出來,是還需設定哪些嗎?
請指教,謝謝!




歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)