【发布时间】:2016-05-12 13:54:50
【问题描述】:
我正在编写一个代码,将所选单元格中的数据从葡萄牙语翻译成英语,但我遇到了一个错误:
翻译后的单元格只返回“和”,无论我写什么,它都应该翻译单元格中的所有单词......有什么想法聪明的头脑吗?
这是我的代码:
Sub traducaobeta()
Dim translate As Object 'scritping.Dictionary
Set translate = CreateObject("Scripting.Dictionary")
translate("cadeira") = "chair"
translate("cadeiras") = "chairs"
translate("criado mudo") = "night stand"
translate("criado-mudo") = "night stand"
translate("mesa") = "table"
translate("mesas") = "tables"
translate(" e ") = " and "
' the list goes on...
Dim ptWords As String
Dim enWords As String
ptWords = LCase(activecell.Value)
For Each tempVar In translate.Keys()
enWords = Replace(Replace(CStr(tempVar), CStr(tempVar), translate(CStr(tempVar)), InStr(CStr(tempVar), CStr(tempVar))), " e ", " and ")
activecell.Offset(0, 1).Value = enWords
Next
End Sub
有人知道怎么解决吗?
【问题讨论】:
-
更改为
Dim ptWords As Variant -
好!!!它有效 :D 但现在它正在将所有内容翻译为“和”,我是新手,你能帮我解决它吗?它应该将活动单元格中的所有单词翻译成同一个活动单元格..
标签: vba excel language-translation