excel

关注公众号 jb51net

关闭
软件教程 > 办公软件 > excel >

Excel用自定义函数倒读单元格文本

佚名

  前些天收到朋友一个短信,将一段祝福的话倒序发了过来。虽然读起来挺费劲,但是却十分个性化。在这个短信的启发下,咱也想个性化一把,把写好的邮件也给“倒”过来,想来发出去必也有好的效果。不过,如果是倒序录入汉字的话,估计咱无论使用哪种输入法都不会有太高的效率,咱还是先按正常的顺序录入,再把它的次序给颠倒过来吧。

一、使用开发工具
  原以为这事儿会挺简单,但忙活了半天也没什么结果,最后,还是在Excel中借助于自定义函数才使这个问题最终得到解决。解决的办法如下:
  先在A1、A2单元格中按正常的顺序录入短信内容。点击功能区“开发工具”选项卡的“代码”功能组中的“Visual Basic”按钮,打开VBA代码编辑窗口。如果您的Excel功能区中没有“开发工具”选项卡,那么可以点击左上角“Office”按钮,点击打开的对话框右下角的“Excel选项”按钮,在打开的对话框中,点击左侧的“常用”项目,并选中右侧“在功能区显示“开发工具”选项卡”复选项,这样就可以将“开发工具”选项卡添加到功能区中了。
  在VBA代码编辑窗口中,点击菜单命令“插入→模块”,得到“模块1”编辑窗口, 在其中输入如下自定义函数的代码,如图1所示。
  Function daodu(dy)
   a = Len(dy)
   For i = a To 1 Step -1
   b = Mid(dy, i, 1)
   daodu = daodu & b
   Next i
  End Function

Excel用自定义函数倒读单元格文本_脚本之家jb51.net整理

图1 VBA代码编辑窗口
  完成后,选择菜单“文件→关闭并返回到Microsoft Excel”命令,返回到Excel工作表窗口。

  现在,在B1单元格输入公式“=daodu(A1)”,回车后就可以看到结果了。拖动B1单元格的填充句柄向下复制公式,则可以轻松地得到所需要的结果,如图2所示。

Excel用自定义函数倒读单元格文本_脚本之家jb51.net整理

图2
二、Excel中加载宏
  函数“Daodu”是我们自定义的函数,它可以象Excel本身自带的函数一样使用。但是在默认的情况下它只能在当前工作薄使用。如果我们需要经常在其它工作薄中使用该函数,则点击“Office按钮”,在弹出的菜单中点击“另存为→其它格式”命令,打开“另存为”对话框,在“保存类型”下拉列表中选择“Excel加载宏”,然后输入一个文件名,如“daodu”,如图3所示。单击“确定”后文件就被保存为加载宏。


Excel用自定义函数倒读单元格文本_脚本之家jb51.net整理

图3 Excel加载宏

  再点击“Office按钮”,点击右下角的“Excel选项”按钮,打开“Excel选项”对话框,点击左侧的“加载项”项目,然后右侧“管理”下拉列表中选择“Excel加载项”,单击其右侧的“转到”按钮。打开“加载宏”对话框,勾选“可用加载宏”列表框中的“daodu”复选框,如图4所示,单击“确定”按钮后,就可以在本机上的所有工作薄中使用该自定义函数了。

Excel用自定义函数倒读单元格文本_脚本之家jb51.net整理

图4 Excel中加载宏
  如果您在这个对话框中看不到“Daodu”复选项,可以点击“浏览”按钮查找。我们所保存的“Daodu”加载宏会保存在“C:\Documents and Settings\用户名\Application Data\Microsoft\AddIns”文件夹中。如果我们想在其它的机器中使用此自定义函数,那么也需要将加载宏文件保存到其它机器中相应的文件夹中。