网络通信游戏
Access VBA实现自动翻译功能
2016-11-24 08:29:25

Access VBA实现自动翻译功能

Access VBA实现翻译功能, Access本身不带翻译,但可以通过调用网页的翻译功能来实现翻译,以下是 VB高手 "主席” 在 江苏大侠的基础上 改写的自动翻译 功能

 

Access 翻译 操作动画展示

 

详细Access VBA代码:

作者:主席(smileyoufu)  在  江苏大侠的基础上改写

 

'参数说明:

'    'strTextToBeTranslated      待翻译的语言内容

'    'LanguageFrom               待翻译的语言类型

'    'LanguageTo                 目标语言类型

'    'strAppID                   微软翻译API应用ID(使用默认值即可)

Public Function Translate( _

    ByVal strTextToBeTranslated As String, _

    Optional ByVal LanguageFrom As String = "ZH-CN", _

    Optional ByVal LanguageTo As String = "EN", _

    Optional ByVal strAppID As String = "708BEDCB01828123DC7B6C6A6AB12EF82DFBB611") As String

    On Error Resume Next

    Dim strURL As String

    Dim objWinHttpRequest As Object

    DoEvents

    strURL = "http: //api.microsofttranslator.com/V2/Ajax.svc/Translate?oncomplete=&appId=" & _

    strAppID + "&from=" & LanguageFrom + "&to=" & LanguageTo & "&text=" & strTextToBeTranslated

    Set objWinHttpRequest = CreateObject("WinHttp.WinHttpRequest.5.1")

    With objWinHttpRequest

        .Open "Get", strURL, False

        .Send

        Translate = Replace(VBA.Mid(.ResponseText, 3, Len(.ResponseText) - 3), "\""", """")

    End With

    If Translate = "" Then Translate = strTextToBeTranslated

    Set objWinHttpRequest = Nothing

End Function

'[语言枚举]

 '    dyy("英语") = "en"

    '    dyy("德语") = "de"

    '    dyy("法语") = "fr"

    '    dyy("中文") = "zh-CN"

    '    dyy("俄语") = "ru"

    '    dyy("韩语") = "ko"

    '    dyy("日语") = "ja"

    '    dyy("阿尔巴尼亚语") = "sq"

    '    dyy("阿拉伯语") = "ar"

    '    dyy("阿塞拜疆语") = "az"

    '    dyy("爱尔兰语") = "ga"

    '    dyy("爱沙尼亚语") = "et"

    '    dyy("巴斯克语") = "eu"

    '    dyy("白俄罗斯语") = "be"

    '    dyy("保加利亚语") = "bg"

    '    dyy("冰岛语") = "is"

    '    dyy("波兰语") = "pl"

    '    dyy("波斯尼亚语") = "bs"

    '    dyy("波斯语") = "fa"

    '    dyy("布尔语(南非荷兰语)") = "af"

    '    dyy("丹麦语") = "da"

    '    dyy("菲律宾语") = "tl"

    '    dyy("芬兰语") = "fi"

    '    dyy("高棉语") = "km"

    '    dyy("格鲁吉亚语") = "ka"

    '    dyy("古吉拉特语") = "gu"

    '    dyy("哈萨克语") = "kk"

    '    dyy("海地克里奥尔语") = "ht"

    '    dyy("豪萨语") = "ha"

    '    dyy("荷兰语") = "nl"

    '    dyy("加利西亚语") = "gl"

    '    dyy("加泰罗尼亚语") = "ca"

    '    dyy("捷克语") = "cs"

    '    dyy("卡纳达语") = "kn"

    '    dyy("克罗地亚语") = "hr"

    '    dyy("拉丁语") = "la"

    '    dyy("拉脱维亚语") = "lv"

    '    dyy("老挝语") = "lo"

    '    dyy("立陶宛语") = "lt"

    '    dyy("罗马尼亚语") = "ro"

    '    dyy("马尔加什语") = "mg"

    '    dyy("马耳他语") = "mt"

    '    dyy("马拉地语") = "mr"

    '    dyy("马拉雅拉姆语") = "ml"

    '    dyy("马来语") = "ms"

    '    dyy("马其顿语") = "mk"

    '    dyy("毛利语") = "mi"

    '    dyy("蒙古语") = "mn"

    '    dyy("孟加拉语") = "bn"

    '    dyy("缅甸语") = "my"

    '    dyy("苗语") = "hmn"

    '    dyy("南非祖鲁语") = "zu"

    '    dyy("尼泊尔语") = "ne"

    '    dyy("挪威语") = "no"

    '    dyy("旁遮普语") = "pa"

    '    dyy("葡萄牙语") = "pt"

    '    dyy("齐切瓦语") = "ny"

    '    dyy("瑞典语") = "sv"

    '    dyy("塞尔维亚语") = "sr"

    '    dyy("塞索托语") = "st"

    '    dyy("僧伽罗语") = "si"

    '    dyy("世界语") = "eo"

    '    dyy("斯洛伐克语") = "sk"

    '    dyy("斯洛文尼亚语") = "sl"

    '    dyy("斯瓦希里语") = "sw"

    '    dyy("宿务语") = "ceb"

    '    dyy("索马里语") = "so"

    '    dyy("塔吉克语") = "tg"

    '    dyy("泰卢固语") = "te"

    '    dyy("泰米尔语") = "ta"

    '    dyy("泰语") = "th"

    '    dyy("土耳其语") = "tr"

    '    dyy("威尔士语") = "cy"

    '    dyy("乌尔都语") = "ur"

    '    dyy("乌克兰语") = "uk"

    '    dyy("乌兹别克语") = "uz"

    '    dyy("希伯来语") = "iw"

    '    dyy("希腊语") = "el"

    '    dyy("西班牙语") = "es"

    '    dyy("匈牙利语") = "hu"

    '    dyy("亚美尼亚语") = "hy"

    '    dyy("伊博语") = "ig"

    '    dyy("意大利语") = "it"

    '    dyy("意第绪语") = "yi"

    '    dyy("印地语") = "hi"

    '    dyy("印尼巽他语") = "su"

    '    dyy("印尼语") = "id"

    '    dyy("印尼爪哇语") = "jw"

    '    dyy("约鲁巴语") = "yo"

    '    dyy("越南语") = "vi"