《Excel 2013 Power Programming with VBA》部分章节译文
来源:互联网 发布:风风果实 数据 编辑:程序博客网 时间:2024/04/30 00:21
如何开发一款实用的工具?
Excel工具应当让用户可以更加方便高效的完成任务。但是,如果你正在为其他用户开发一些实用工具,那么如何使得Excel工具具有实用价值?下面列出的是我总结出来的一些实用工具所具有的一些共性:
- 能为Excel添加新内容。添加的可能是一种新特性、或是将已有特性合并的方法、亦或是让已有特性更加易用的方法。
- 具有通用性。理想情况下,一款工具应该在各种条件下都能灵活使用。当然,编写通用工具要比编写针对特定环境下的工具困难。
- 具有灵活性。最好的工具是能提供许多不同的选项来处理各种状况。
- 与Excel命令具有相似的外观、体验和操作方式。虽然开发者都有向工具中添加自己独有特性的冲动,但若新工具能具有与Excel命令和对话框相似的外观和操作方式,那么其他用户就能很容易上手。
- 能在用户需要的时候提供帮助。也就是说,新工具应提供详尽的文档说明。
- 能够捕获错误。最终用户决不应该接触到任何有关VBA的错误消息,而只能接触到开发人员编写的错误处理消息。
- 用户可以撤消操作。如果用户使用新工具生成了不满意的结果,那么应该让他们可以返回之前的步骤。
实例剖析:Text Tools
在本节中,将介绍一款我开发且经常使用的Excel工具。这也是我的PowerUtility Pak的Excel加载项的一部分。Text Tools能让用户处理选中的单元格范围内的文本。具体来说,这个工具让用户可以执行以下操作:
- 更改文本大小写(全部大写,全部小写,词首字母大写,句首字母大写,或词首字母大写其余小写)
- 向文本中添加字符(在开头、结尾、或在指定的位置添加字符)。
- 从文本中删除字符(从开头、末尾,或在字符串中指定的位置删除)。
- 从文本中删除空格(所有空格或多余的空格)。
- 从文本中删除字符(包括非打印字符、字母字符、数字字符、非字母字符、或者非数字字符)。
图14-1显示了Text Tools工具的对话框。
图14-1:使用文本工具改变选中的文本。
Text Tools工具可从本书的网站中获得。它是一个独立的工具,包含在Power Utility Pak中。文件名为tools.xlam,是一个标准的Excel插件。安装后将在功能区增加一个新命令:开始——工具——Text Tools。 这个VBA项目不含密码保护,因此可以检查其源代码,查看其工作方式,或是根据自身需要进行修改。
Text Tools的背景:
Excel含有许多工作表函数,可以有效的处理文本字符串。例如,可以将单元格中的文本转换为大写(UPPER函数)、向文本添加字符(CONCATENATE函数)、以及删除空格(TRIM函数)。但为了执行这些操作,需要完成一系列的工作,如编写公式、复制公式、将公式转换成对应的值、将值粘贴到原来的文本中。也就是说,在Excel中对文本的修改操作很麻烦。如果Excel中有一些无需公式的文本处理工具该多好?
顺便一提的是,很多优秀工具的创意最初都来自“如果……该多好?”这句话。
Text Tools的设计目标:
设计一款工具的第一步是明白这款工具需要完成什么样的任务。这里是我的最初的计划,即下面列出的目标:
- 主要特性已在本节开头列出。
- 让用户能够用这些特性对非文本单元格和文本单元格进行修改。
- 与其他Excel命令具有相同的外观和用户体验。也就是说,其对话框与Excel对话框的外观相似。
- 作为一个插件的形式完成,并可以从功能区访问。
- 可以操作当前已选中的单元格(包括复选),并在对话框出现时让用户能够修改选中的范围。
- 能够记住上次所用的操作,并在下一次调用对话框时显示这些设置。
- 不影响包含公式的单元格。
- 快速且高效。例如,用户选择一整列,该应用程序会自动的忽略所在列的空单元格。
- 使用非模式对话框,让用户可以在屏幕上保留对话框,以便随时使用。
- 结构设计紧凑,不会隐藏工作列表太多的内容。
- 允许用户撤销操作。
- 可提供全方位的帮助。
- 《Excel 2013 Power Programming with VBA》部分章节译文
- 《Excel 2013 Power Programming with VBA》试读章节翻译
- Excel 2013 Power Programming with VBA 翻译
- 《Excel 2013 Power Programming with VBA》 试译样文
- 翻译Excel 2013 Power Programming with VBA 第14章的前两部分
- 翻译《Excel 2013 Power Programming with VBA》段落
- Excel 2007 Power Programming with VBA
- Module1的VBA模块---Excel 2013 Power Programming with VBA Page550-554
- Part I: Programming in Excel VBA—Chapter List_VBA编程第一部分 章节列表
- Developing Excel Utilities with VBA 章节翻译
- Mastering Excel 2003 Programming with VBA
- Programming Excel with VBA and .NET
- Mastering Excel 2003 Programming with VBA
- 让文本工具功能变得更有效---试译Excel 2013 Power Programming with VBA中Making the Text Tools utility efficient两节
- Excel VBA Macro Programming
- Developing Excel Utilities with VBA
- Excel 2007 VBA Programming For Dummies
- Creat A EXCEL CHART WITH VBA
- SVN使用小结
- mysql存储引擎对应的锁
- 在连接到SQL Server2005时,在默认的设置下SQL Server不允许进行远程连接可能会导致此失败--的解决
- 深入理解HTTP协议
- USB 电池充电规范
- 《Excel 2013 Power Programming with VBA》部分章节译文
- JAVA实现SSL身份登录
- 快速创建NSArray NSDictionary 以及NSString数组
- 互联网巨头时代下的产品创新与创业启动
- OpenRisc-59-jtag_tap模块分析
- tftp服务的安装及使用
- $id=$(".img").find("[imgs==1]").attr("id"); 解释
- iOS应用程序生命周期(前后台切换,应用的各种状态)详解
- 用nc和perl expect 模拟服务