VBA实践+excel英文逐句自动有道翻译为中文

有一个需求是这样的,如下图所示,在一个excel工作表中,B列是英文,每一个单元格一句英文,在C列要填英文对应的有道机译结果。为保证准确度,要求必须一句句翻译,不能把英文做成一个文档再上传有道翻译。

excel英语翻译

尝试使用VBA代码模拟键盘和鼠标自动完成复制单元格英文-粘贴到有道客户端的输入框-等待翻译结果-复制翻译结果-粘贴到对应的单元格中的整个过程。代码实现环境为64位win8.1,64位excel2010,有道桌面客户端,代码如下。模拟的鼠标键盘按键可能会被网站、软件等拦截,用到其他地方不一定管用哦。

Private Declare PtrSafe Function SetCursorPos Lib "user32" (ByVal x As Long, ByVal y As Long) As LongPtr 'SetCursorPos函数把光标移到屏幕的指定位置
Private Declare PtrSafe Sub mouse_event Lib "user32" (ByVal dwFlags As Long, ByVal dx As Long, ByVal dy As Long, ByVal cButtons As Long, ByVal dwExtraInfo As Long)'这是 VB API 函数声明,
'在 WINDOWS 系统中有个文件 kernel32.dll 动态连接(函数)库文件,里面包含好多WINDOWS 功能的函数。该声明是指,在所写的程序中要用到这个库文件中的一个函数 Sleep, 它的参数是dwMilliseconds.
'功能是,让这条语句的下一条语停顿 dwMilliseconds 时间后再运行。单位为毫秒
Private Declare PtrSafe Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)Private Const MOUSEEVENTF_LEFTDOWN = &H2 '按下左键,&H2表示2的十六进制值
Private Const MOUSEEVENTF_LEFTUP = &H4 '释放左键,&H4表格4的十六进制值Private Sub 单击()
mouse_event MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0 '高版本系统如win10可能需要使用call调用ddl动态连接这样才能生效,如call mouse_event (MOUSEEVENTF_LEFTDOWN, 0, 0, 0, 0).https://blog.csdn.net/qq_39533125/article/details/75220288
Sleep 50
mouse_event MOUSEEVENTF_LEFTUP, 0, 0, 0, 0
Sleep 100
End SubSub 自动发送翻译()Dim WS As Worksheet
Dim xPaste&, yPaste&, xCopy&, yCopy&, xClear&, yClear&
Dim i%
Dim myData As DataObjectSet WS = ThisWorkbook.Sheets("工作表1")
'粘贴位置
xPaste = 217
yPaste = 96
'复制按钮位置
xCopy = 198
yCopy = 551
'清除按钮位置
xClear = 610
yClear = 288For i = 2 To 5WS.Cells(i, 2).CopySleep 500 '延时500毫秒SetCursorPos xPaste, yPaste '把光标移动到屏幕输入框位置DoEvents '会将控制权传给操作系统。当操作系统处理完队列中的事件,并且在 SendKeys 队列中的所有键也都已送出之后,返回控制权。Sleep 500Call 单击DoEventsSleep 500Application.SendKeys "^V" '粘贴英文到输入框DoEventsSleep 500SetCursorPos xCopy, yCopyDoEventsSleep 2000 '等待翻译结果出来Call 单击 '单击复制按钮,复制翻译结果DoEventsSleep 500SetCursorPos xClear, yClearDoEventsSleep 500Call 单击DoEvents'把翻译结果输入到单元格中Set myData = New DataObjectWith myData.GetFromClipboardIf .GetText <> "" Then WS.Cells(i, 3).Value = .GetText '把剪贴板的文本放入到单元格End WithSet myData = NothingNext iMsgBox "完成"End Sub

知乎视频​www.zhihu.com


想要学习更多关于excel vba的知识,可以看看这个很实用的书。

有道翻译 excel webservice 失效_VBA实践+excel英文逐句自动有道翻译为中文相关推荐

  1. excel如何快速将表格转换为英文?

    今天跟大家分享一下excel如何快速将表格转换为英文? 1.选中要翻译的单元格区域 ​ 2.点击[DIY工具箱] 3.点击[翻译],选择[有道翻译] ​ 4.设置翻译语言 ​ 5.点击[确定] ​ 6 ...

  2. 如何将英文pdf文档在线翻译成中文?

    我们都要掌握一些办公技巧,像pdf翻译就是必不可少的,如何将英文pdf文档在线翻译成中文的,这个对英语差的来说简直就是福利,接着我就来发放一波福利. 1.打开浏览器输入迅捷在线PDF转换器,并在搜索结 ...

  3. 人工智能翻译之间的对决:谷歌为什么败给了有道?

    由于人工智能的飞速发展,机器翻译水平正在大幅提升,并逐渐赶超人类,这已经是不争的事实.然而,同在机器翻译这个赛道里的各位"赛手",谷歌.有道等传统翻译产品或公司,也正在上演着一场激 ...

  4. Excel VBA简单需求实践,包含对Excel基本的读取,校验,复写操作

    该文为想要学习VBA编程的会计和编程同学有使用VBA实现Excel自动化处理和一定的个性化定制Excel操作提供参考 第一篇为::VBA简单语法 第二篇为: Excel 编写第一个简单的VBA程序 第 ...

  5. python在线翻译小程序_Python3.6实现带有简单界面的有道翻译小程序

    Python3.6实现带有简单界面的有道翻译小程序 发布时间:2020-09-06 20:15:11 来源:脚本之家 阅读:104 本人使用的是Python3.6(32bit),在win10上运行的 ...

  6. 英文专业本科毕业论文的翻译实践报告怎么写文献综述?

    对于英文或者翻译专业的学生来说,毕业论文和其它学科略有不同.根据全国翻译专业研究生教育指导委员会的指导性培养方案对学位论文做了如下规定,学位论文可以采用以下任何一种形式: 1.翻译实习报告:学生在导师 ...

  7. java写入excel文件内存不足,java 导出 excel 最佳实践,java 大文件 excel 避免OOM(内存溢出) excel 工具框架...

    产品需求 产品经理需要导出一个页面的所有的信息到 EXCEL 文件. 需求分析 对于 excel 导出,是一个很常见的需求. 最常见的解决方案就是使用 poi 直接同步导出一个 excel 文件. 客 ...

  8. python归档excel数据_python 数据存储excel

    Python的小数据存储,用什么格式更有逼格? 小数据存储 我们在编写代码的时候,经常会涉及到数据存储的情况,如果是爬虫得到的大数据,我们会选择使用数据库,或者excel存储.但如果只是一些小数据,或 ...

  9. 解放双手|Python 自动搜索、翻译、存储文献标题摘要!

    一.需求描述 大家好,我是早起. 如果是科研.深度学习等需要经常阅读大量论文的工作,批量翻译就能大大提高效率. 本文将进一步使用 Python 实现另一个在科研学术领域的办公自动化应用.「结合爬虫批量 ...

最新文章

  1. 智能合约WASM语言 (1)概述
  2. 二叉树的前序、中序和后序遍历介绍及案例
  3. SQL Server误区30日谈-Day27-使用BACKUP ... WITH CHECKSUM可以替代DBCC CheckDB
  4. Python 下的 tcp server/client 通信
  5. Linux平台上SQLite数据库教程(二)——C语言API介绍
  6. Java:JDK安装
  7. layui的tree实现 struts 2+layui+jsp
  8. python 新建一列_python – 如何在迭代pandas数据框时创建新列并插入行值
  9. 网络不稳定的原因_原来网络不稳定,也有可能是这个原因造成的!
  10. 标准C++ 与 VC++ 区别集锦(待续)
  11. cmake 指定平台编译arm64_Arm V7 V8处理器编译Target小提示
  12. 超宽带 DWM1000模块 应用
  13. 解密深圳IT人士的当前薪情【转自:中国it实验室】
  14. Windows安装和设置教程
  15. SVN Eclipse插件Subclipse安装和配置
  16. linux设置mysql开机启动
  17. Spring AOP 之 Introductions
  18. python添加文字水印中间旋转45度,Python添加pdf水印
  19. win10环境 pip 安装theano(gpu) python3.6
  20. 开源Windows 10 PowerToys简介

热门文章

  1. dz论坛ucenter打不开mysql_Discuz论坛搬家 ucenter info:can not connect to MySQL server解决办法...
  2. python基础入门: for 循环
  3. Python 基础数据类型 -字符串(str)的详细用法
  4. 对python中浅拷贝和深拷贝分析详细介绍
  5. Python 字符串换行的几种方式
  6. Python:赋值语句和布尔值
  7. python字符串与列表的相互转换
  8. Python 内编写类的各种技巧和方法
  9. 考研数学三考摆线吗_考研数学,需要从课本开始吗?这样会不会比较慢?
  10. JavaScript学习笔记(5)