用VBA制作Excel翻译程序.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
用VBA制作Excel翻译程序

用VBA制作Excel翻译程序。 Lib是中日对译表名。 UserForm是用户界面,以下有选择要翻译表名的选项,“日翻中”、“中翻日”、“中日对译表维护”等三个按键。 功能一览: 1 程序的调用。 2 应用界面。 3 对译表的建立。 4 每一个单词的替换(可用宏录制) 5 更换下一个单词,直到所有单词都替换完成,需要循环语句。(难点) 5.1 更换关键字。(不知怎么会出错,说下标越界,不能排错。卡在这里了) 5.2 换成下一个关键字,用循环语句。(还没做到这一步,有一定难度,不过应该能解决吧) 6 问题出现:单词替换时,不能Ctrl+Z返回上一步状态。防止替换错误,需要提前备份。(现在先不管这一步了,先把程序做出来再说) 编程设计: 我写了一下VBA,但是试运行时出现下标越界的报错,但不知怎么纠错。请各位大侠帮忙!!! Private Sub UserForm1_tran() MsgBox 程序测试开始! Sheets(Temp).Cells(1, 1).Value = 1 Temp是要处理的文档,可改名。 Lib是字典库。 Do Dim MyRange As Range MyRange = Sheets(lib).Range(A1) Sheets(temp).Cells(A2) = Sheets(lib).Range(MyRange).Value If ActiveSheet.Cells(1, 6).Value = Then Quit End If 变量的使用:错误方式:n=单元格的值;另一个值等于=n。 正确方式:n=单元格的位置,另一个单元格的值=n位置的值。 Dim n n = Sheets(lib).Cells(A3) A3 Debug.Print a(i, 1) a(i, 2) Loop 选择翻译的范围 进行替换 注意保证字符编码正确 条件循环,将整个对译表的对应翻译全部替换。 Range(C5).Select Selection.Copy With Application.ReplaceFormat.Font .Name = 宋体 .Subscript = False End With Cells.Replace What:=プロジェクト, Replacement:=项目, LookAt:=xlPart, _ SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _ ReplaceFormat:=True TextBox1.Value = 程序测试完毕! MsgBox 日翻中已执行完毕! End Sub 已完成步骤:过程的代入;文本框、消息框的试用;表值的赋值;注释的加入; 未完成的步骤:变量的使用;表格的替换;字体编码的确保;条件循环语句的使用;能够恢复;要翻译文件的选择; 问题补充:程序是凭自己水平尽力做出来的,高手可以帮忙揪一下错,如果看不懂也可以将程序重新设计一下。谢谢! 希望各位帮忙的兄弟也可以拿一下具体的代码上来,谢谢! 对我有用[0] 丢个板砖[0] 引用 举报 管理 TOP 回复次数:4 wang405 等 级: #1楼 得分:0回复于:2008-10-04 20:46:36我花了近一个小时给你又是写又是测试,终于弄出来了你要的.代码不长,但基本是你要的. Sub fanyi() On Error GoTo fanyierr Dim cn As String 中文 Dim ji As String 日文 Dim myrange As Range 用户选择区域 Set myrange = Application.InputBox(请选择需要翻译的单元格区域:, 选择, Type:=8) If Not myrange Is Nothing Then n = Sheets(中日表).UsedRange.Rows.Count 中日表中A列日文,B列中文 If n = 1 Then Exit Sub If MsgBox(你是否要执行文件翻译功能?, 32 + vbYesNo, 询问) = vbYes Then Sheets(原文).Copy Before:=Sheets(原文) ActiveSheet.Name = 备份 Format(Date

文档评论(0)

junjun37473 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档