谷歌翻译由Internet Explorer自动化这VBA宏代码转换文本使用的Internet Explorer的自动化谷歌翻译通过Excel控制。
解释该方案从Excel自动写入到Internet Explorer的文本,并使用谷歌翻译服务,翻译成欲望的文本语言。它可以从翻译和许多不同的语言,只是改变了语言代码和程序,建立了相应的。 整个VBA / Excel程序是在本页面底部,可供下载欣赏!
码Public Sub Google_Translate()
Dim Google_Translate_Internet_Explorer_Automation As Object Set Google_Translate_Internet_Explorer_Automation = CreateObject("InternetExplorer.Application") Google_Translate_Internet_Explorer_Automation.Navigate "http://translate.google.com/translate_t#" Google_Translate_Internet_Explorer_Automation.Visible = True Wait_Between_Google_Translate_Cycles = Range("G1").Value
Column = 0 While Range("f9").Offset(0, Column).Value <> tom
Do While Google_Translate_Internet_Explorer_Automation.busy Call WaitSeconds(Wait_Between_Google_Translate_Cycles) Loop to_language_code = Range("f9").Offset(0, Column).Value
Do While Google_Translate_Internet_Explorer_Automation.busy Call WaitSeconds(Wait_Between_Google_Translate_Cycles) Loop
Google_Translate_Internet_Explorer_Automation.document.forms("text_form").elements(5).Value = to_language_code
Do While Google_Translate_Internet_Explorer_Automation.busy Call WaitSeconds(Wait_Between_Google_Translate_Cycles) Loop
rad = 0 While Range("c10").Offset(rad, 0).Value <> tom
If Range("f10").Offset(rad, Column).Value = tom Then
from_language_code = Range("a10").Offset(rad, 0).Value Google_Translate_Internet_Explorer_Automation.document.forms("text_form").elements(4).Value = from_language_code
Do While Google_Translate_Internet_Explorer_Automation.busy Call WaitSeconds(Wait_Between_Google_Translate_Cycles) Loop
Google_Translate_Text = Range("c10").Offset(rad, 0).Value
While Google_Translate_Internet_Explorer_Automation.busy Call WaitSeconds(Wait_Between_Google_Translate_Cycles) Wend
Google_Translate_Internet_Explorer_Automation.document.forms("text_form").elements("source").Value = Google_Translate_Text
While Google_Translate_Internet_Explorer_Automation.busy Call WaitSeconds(Wait_Between_Google_Translate_Cycles) Wend
Google_Translate_Internet_Explorer_Automation.document.getElementById("text_form").submit
While Google_Translate_Internet_Explorer_Automation.busy Call WaitSeconds(Wait_Between_Google_Translate_Cycles) Wend
dd2 = Google_Translate_Internet_Explorer_Automation.document.forms(1).elements(4).Value
While Google_Translate_Internet_Explorer_Automation.busy Call WaitSeconds(Wait_Between_Google_Translate_Cycles) Wend
Google_Translate_Variable1 = Replace(dd2, Chr(13), "") Range("f10").Offset(rad, Column).Value = Google_Translate_Variable1
End If
rad = rad + 1 Wend
Column = Column + 1 Wend
Google_Translate_Internet_Explorer_Automation.Quit Set Google_Translate_Internet_Explorer_Automation = Nothing
End Sub
Public Sub WaitSeconds(sek)
newHour = Hour(Now()) newMinute = Minute(Now()) newSecond = Second(Now()) + sek waitTime = TimeSerial(newHour, newMinute, newSecond) Application.Wait waitTime
End Sub
下载Excel文件!Google_Translate_Internet_Explorer_Automation.xls |