Excel宏的使用小窍门

所属分类: 软件教程 / 办公软件 阅读数: 1074
收藏 0 赞 0 分享
首先在Excel中键入ALT+F11打开VBA编辑器;在“插入”菜单中,选择“用户窗体”;在窗口编辑栏里拖住对话框的右下角,把窗体拉大;最后的大小就将是咱们自定义的启动画面的大小了。  

  接下来,将“工具箱”里那个大大的“A”字图标拖拽到你的窗体上;鼠标点住出现的文本框的一角,将它拉大,将框内文字替换为之后想要显示的标题内容即可。如果此时VBA编辑器里并没有显示控件属性栏,请按F4将其调出,这样就可以通过属性栏中的字体一项更改标题字体。这里默认的字体是宋体,你也可以点击它右边画着“…”的小方框,在弹出的对话框中重新设置。本文例子里采用的字体是Arial Black Regular,72点。接着将属性“TextAlign”一栏调整为“fmTextAlignCenter”,选择属性“ForeColor” “按钮文本” “调色板”,在其中选择你喜欢的标题颜色。

 

为Office Excel文档添加启动画面

 

  这里需要注意一件事,一个Label文本框内只能有一种字体;所以如果还想在弹出框中建立副标题,就还需要在窗体中再添加一个Label文本框才行。添加完填好文字,设置方法同之前那个Label完全相同。  

  下面我们要为弹出的这个对话框添加背景颜色:首先用鼠标在窗体内没有其他控件的地方点一下,在属性栏选择“BackColor” “调色板”,选择你中意的颜色即可。

 

为Office Excel文档添加启动画面

 

  你这时可能也注意到了窗体的左上角显示着UserForm1。这肯定不是我们希望在它弹出时显示的东西。我们需要在属性栏内修改它。首先将最上面“名称”一栏更改为“Intro”,然后选择“Caption”,将后面的“UserForm1”更改为你喜欢的文字即可(本例中使用的是Intro)。

 

为Office Excel文档添加启动画面

 

  再添加一个Label,这个Label里面我们可以使用与前一个不同的字体。   

  接下来的界面设计阶段只需要我们摆一摆几个Label的位置即可。然后双击窗体(也就是刚才那个UserForm1),在弹出的代码编辑器里面,选择右上角下拉菜单中的“Initialize”;在代码窗口内“Private Sub UserForm_Initialize()”和“End Sub”中间添加如下代码:

  Appliation.Ontime Now + TimeValue(“00:00:04”),“ClearForm”

  这个宏可以用来控制标题对话框显示时间。在这个例子里,我将其设置为4秒钟。当然你也可以将00:00:04改成任何你想让启动画面停留的时间。

 

为Office Excel文档添加启动画面

 

  选择VBA插入菜单中的“模块”。并在弹出的代码编辑框内填入下面代码:  

  Sub ClearForm()

  Unload Intro

  End Sub  

  这段代码中的ClearForm函数在对话框显示4秒后卸载掉该窗体。代码中的“Intro”就是刚才编辑的窗体名称(还记得之前咱们已经将窗体名称更改为“Intro”了吗?)。  

  最后在工程资源管理器那里点开“ThisWorkBook”;如果你的VBA没有显示这个管理器,可以用CTRL+R将它调出;接着在弹出的代码编辑器里面输入:  

  Private Sub Workbook_Open()

  Intro.Show

  End Sub  

  按下ALT+F11返回到原来的Excel工作簿当中;保存文件。如果是07版的Excel,请将文件后缀保存为.xlsm,这样打开该文件时将会自动运行文件中定义的宏。如果你按照前面所述一步步完成,下次你再打开这个文件,便会见到一个只停留4秒的启动框。

单元格的巧妙替换

  我们假设遥远的地方有个国家,这个国家的电话号码分机时常在变,而你又是那个维护电话黄页的小职员。如果让你老老实实地一个个去将所有号码改正过来,你肯定会叫苦不迭。好在咱们现在有了Excel,巧妙运用它自带的一些函数,可以方便地帮你解决掉这个问题。  

  首先我们假设所有开头为0191局的电话都将改为0307局。先设置A2,B2的单元格的显示格式,让其可以显示出数值最前面的0。在A2中输入“0191234567”,在B2中输入“=SUBSTITUTE
2,191,307)”  

  这样B2格便会显示“0307234567”。这里的SUBSTITUE函数包含三个参数,分别是:需要做替换的字符串,要被替换的部分,和用来替换的部分。  

  Excel还支持多种搜索替换功能。假如我们需要将TelNum这个栏里面的电话号码的0191部分都替换成0307,我们只需在旁边空列的单元格中键入“=IF(LEFT(telnum,4)=“0191”,SUBSTITUE(telnum“0191”,“0307”),“ ”)”。  

  点击单元格,向下拖拽这个单元格的右下角将公式向下复制。这样只要旁边的列中包含0191这个字符串,在新的这一列中就会将它改为0307并显示出来,同时将原来那个单元格清空。  

  如果你的字符串中多次出现某个子字符串,你还可以为SUBSTITUE函数指定替换其中的哪一个子字符串。我们举个例子,假如A2此时显示“中国北京2000”,在B2中键入“=SUBSTITUE(A2,“0”,“8”,3)”。  

  这样B2中将会显示“中国北京2008”。这个例子同第一个例子大部分均相同,唯一不同在于后面第四个参数“3”。我们这里正是用这个参数来指示要替换第几个重复出现的字符。  

  在Excel中还提供了一个类似的REPLACE函数。这里举两个例子帮助大家熟悉它。  

  首先假设我们在A2中键入了一串信用卡号码:5123 4567 8901 2345。我们想在B2中显示这串号码,但为了安全起见需要将最后四位以*替换掉。这时就可以用REPLACE函数就可以派上用场。只需要在B2中键入“=REPLACE(A2,12,4,“****”)”,B2中便会显示“512345678901****”。在此处,函数中的第二个参数给出了字符替换起始位,第三个参数给定替换个数,最后那个参数给出替换的内容。如果你希望遮挡的不是后四位而是前四位,可以在B2中填入“=REPLACE(A2,1,12,“**** **** ****”)”,B2将显示“**** **** **** 2345”。  

  如果你只想提取字符串中的某几位,还可以利用上下面几个函数。这里举几个例子,帮你熟悉它们。假设A2里面显示的是London W1T7RJ。如果你在B2中键入“=LEFT(A2,6)”,单元格将显示城市名;如果在C2中键入“=RIGHT(A2,7)”,单元格内将会显示后面的邮编。  

  如果你从网上粘贴下来的字符串内碰巧出现了几个多余的空格。你可以用TRIM函数将这些多出来的空格去掉。假设A2中放的就是这样一个字符串,在B2中键入“TRIM(A2)”便可得到修改好的字符串书写的代价。

更多精彩内容其他人还在看

Word复制粘贴文档文字显示不全该怎么办?

Word复制粘贴文档文字显示不全该怎么办?word中复制文字粘贴以后发现一行文字不能全部显示,该怎么办呢?下面我们就来看看这个问题的解决办法,需要的朋友可以参考下
收藏 0 赞 0 分享

excel表格中不规则单元格怎么求和?

excel表格中不规则单元格怎么求和?excel中有很多表格是不规则的,想要对不规则的单元格进行求和,该怎么办呢?下面我们就来看看这个问题的解决办法,需要的朋友可以参考下
收藏 0 赞 0 分享

ppt模板复制粘贴后幻灯片中色调变了该怎么解决?

ppt模板复制粘贴后幻灯片中色调变了该怎么解决?从网上下载了ppt模板,但是发现复制粘贴以后幻灯片中的色调变了,该怎么解决这个问题呢?下面我们就来看看详细的教程,需要的朋友可以参考下
收藏 0 赞 0 分享

在Word2003文档中如何快速输入重叠字?

在Word2003文档中如何快速输入重叠字呢?对于这个问题很多朋友都在问,不用担心,下面小编将为大家带来在Word2003文档中快速输入重叠字的方法;有需要的朋友一起去看看吧
收藏 0 赞 0 分享

在Office 2016中删除宏的图文教程

如何在Office 2016中删除宏呢?下面小编将为大家分享在Office 2016中删除宏的图文教程;希望能够帮助到大家!有需要的朋友一起去看看吧
收藏 0 赞 0 分享

WPS office文档中如何插入脚注?

WPS Office 是由金山软件股份有限公司自主研发的一款办公软件套装,可以实现办公软件最常用的文字、表格、演示等多种功能。WPS office文档中如何插入脚注呢?下面小编将为大家带来WPS office文档中插入脚注的方法;有需要的朋友一起去看看吧
收藏 0 赞 0 分享

excel通过access建立数据透视表的方法

excel通过access建立数据透视表也是我们工作中经常用到的!可是excel通过access如何建立数据透视表呢?今天小编为大家带来的是excel通过access建立数据透视表的方法;有需要的朋友一起去看看吧
收藏 0 赞 0 分享

word为图片添加边框方法介绍

我们在使用Word编辑文档的过程中,为了使文档中的图片更加漂亮,有时需要为图片添加边框,小编就为大家详细介绍一下,推荐到脚本之家,一起来看看吧
收藏 0 赞 0 分享

轻快PDF阅读器怎么给pdf文件添加书签?

轻快PDF阅读器怎么给pdf文件添加书签?pdf文档需要添加书签,该怎么添加呢?下面我们就来看看轻快PDF阅读器添加书签的教程,需要的朋友可以参考下
收藏 0 赞 0 分享

word2003怎么对文档中的文字进行分栏?

在Word中,我们可以对一篇文章进行分栏设置,分两栏,分三栏都可以自己设置。像我们平常看到的报纸、公告、卡片、海报上面都可以有用Word分栏的效果,word2003怎么对文档中的文字进行分栏?下面小编就为大家介绍一下,来看看吧
收藏 0 赞 0 分享
查看更多