首页 > 专题中心 > 软件应用 > Excel使用技巧10招

[2008-9-4 17:55:48]

如何使用Excel进行工资条的制作,也许有些网友使用已经很长时间了,但如何更快更好的做出漂亮的工资条,看看作者的方法吧。
“小问题难倒老财务”,也许你已经在财务口上工作多年,也许你天天都要面对Excel那张老脸,也许你已经习惯了用工资明细表做员工工资统计并向上级汇报,把表中的条目一条条复制粘贴后打印发给每个员工。可你是否想过,找一个更简单更有效率的方法?看起来这似乎有些困难:在工资明细表中,工资的项目(即表头)一般只出现在表格开头的某一行,而在工资条中,为了便于阅读则要求每个人的工资都有表头,那么如何巧妙地把工资明细表制作成便于打印的工资条呢?如图所示,这就是我们要完成的工作(原工资表见图1,转换成工资条后的效果见图2):

图1 原工资表

图2 转换后效果
“条条大路通罗马”,不过路有远近之分,方法也有难易之别,这里给大家提供三种最简单易用的方法。
方法一:宏命令控制法
对于Office家族的宏功能,大家或许早有耳闻,但由于需要使用VBA进行编程,所以宏一直让许多人望而却步,不过要使用一个现成的宏就简单多了。首先打开要处理的Excel表,选择“工具→宏→Visual Basic 编辑器”,在编辑器左边的窗口中用鼠标双击Sheet1,会出现代码编辑窗口,在代码编辑窗口输入如下代码(为了不破坏原有的工资表,所以这里采用了将 Sheet1的内容复制到Sheet2的方法,所以最后的生成结果是在Sheet2中显示):
Sub MakeSalaryList()
Dim i As Integer
Dim endrow As Integer
'测出数据的最后一行
endrow = Sheet1.Range("a65536").End(xlUp).Row - 1
'把标题贴过去
Worksheets(1).Range("1:1").Copy (Worksheets(2).Cells(1, 1))
For i = 3 To endrow
'把每条数据抬头贴过去
Worksheets(1).Range("2:2").Copy (Worksheets(2).Cells(3 * i - 7, 1))
'把数据贴过去
Worksheets(1).Range(Cells(i, 1), Cells(i, 256)).Copy (Worksheets(2).Cells(3 * i - 6, 1))
Next i
End Sub
关闭编辑器,将自动返回到刚才的Excel表,选择“工具→宏→宏”,将弹出如下对话框:(见图3)
图3 添加宏

点击“执行”,将在Sheet2生成如Gz-2所示的转换成工资条,怎样,不复杂吧。当然,如果你的表总Sheet2已经输入了别的内容,就可以将他复制到Sheet3来生成,代码修改也很简单,把其中的Sheet2修改成Sheet3就可以了,其它代码不变。

如果您的Excel应用程序中的菜单和工具栏无意中搞乱了,例如调整了菜单项的位置、禁用了一些菜单项而又未恢复、删除了一些菜单项等,您想要恢复为默认的状态,这里有一个简便的方法——即删除*.xlb文件。
这个文件这个目录中:C:\Documents and Settings\<用户名>\Application Data\Microsoft\Excel
其中,<用户名>代表您计算机上的登录名。对于Excel 2003来说,该文件名为Excel11.xlb。
此时,您不必担心。当您重新开启Excel时,Excel会为您自动重新生成新的.xlb文件。这里的秘密是:Excel将工具栏和菜单栏的配置存储在xlb文件中,当您改变工具栏和菜单栏并退出Excel时,当前的配置将会被保存到xlb文件。如果xlb文件被破坏,那么在Excel启动时可能导致Excel崩溃。此时可以删除xlb文件或者重新命名xlb文件,Excel将创建新的xlb文件。
注:通常情况下,该文件夹是隐藏的,需要更改“文件夹选项”以显示所有的文件和文件夹。

Excel是我们常用的电子表格软件。如何把Excel用得更有效率?下面向您介绍几个快速使用Excel的技巧。
1、快速启动Excel
若您日常工作中要经常使用Excel,可以在启动Windows时启动它,设置方法:
(1)启动“我的电脑”进入Windows目录,依照路径“Start Menu\Programs\启动”来打开“启动”文件夹。
(2)打开Excel 所在的文件夹,用鼠标将Excel图标拖到“启动”文件夹,这时Excel的快捷方式就被复制到“启动”文件夹中,下次启动Windows就可快速启动Excel了。
若Windows已启动,您可用以下方法快速启动Excel。
方法一:双击“开始”菜单中的“文档”命令里的任一Excel工作簿即可。
方法二:用鼠标从“我的电脑”中将Excel应用程序拖到桌面上,然后从快捷菜单中选择“在当前位置创建快捷方式”以创建它的快捷方式,启动时只需双击其快捷方式即可。
2、快速获取帮助
对于工具栏或屏幕区,您只需按组合键Shift+F1,然后用鼠标单击工具栏按钮或屏幕区,它就会弹出一个帮助窗口,上面会告诉该元素的详细帮助信息。
3、快速移动或复制单元格
先选定单元格,然后移动鼠标指针到单元格边框上,按下鼠标左键并拖动到新位置,然后释放按键即可移动。若要复制单元格,则在释放鼠标之前按下Ctrl即可。
4、快速查找工作簿
您可以利用在工作表中的任何文字进行搜寻,方法为:
(1)单击工具栏中的“打开”按钮,在“打开”对话框里,输入文件的全名或部分名,可以用通配符代替;
(2)在“文本属性”编辑框中,输入想要搜寻的文字,最好是您认为是唯一的单词或短语,以便搜寻更容易成功;
(3)选择“开始查找”即可。在找到满足条件的文件前,“打开”对话框的状态栏都会显示“找到了0个文件”的信息,您应该耐心等待,只有当“打开”按钮由灰化状态变成可用状态时,才表明搜寻结束。
5、快速打印工作表
若选择“文件”菜单中“打印”命令来打印,会出现“打印”对话框让您选择,程序繁琐。若要跳过该对话框,您可以单击“常用”工具栏上的“打印”按钮或者按下Shift键并单击“打印预览”按钮,Excel将使用“选定工作表”选项打印。
6、快速切换工作表
按Ctrl+PageUp组合键可激活前一个工作表,按Ctrl+PageDown组合键可激活后一个工作表。您还可用鼠标去控制工作表底部的标签滚动按钮快速地移动工作表的名字,然后单击工作表进行切换。
7、快速切换工作簿
对于较少工作簿切换,可单击工作簿所在窗口。要对多个窗口下的多个工作进行切换,用“窗口”菜单最方便。“窗口”菜单的底部列出了已打开了工作簿的名字,要直接切换到一个工作簿,从“窗口”菜单选择它的名字即可。
“窗口”菜单最多能列出9个工作簿,若多于9个,“窗口”菜单则包含一个名为“多窗口”的命令,选用该命令,则出现一个按字母顺序列出所有已打开的工作簿名字的对话框,只需单击其中需要的名字即可。
8、快速插入Word表格
Excel可以处理Word表格中列出的数据,您可用以下方法快速插入Word表格:
(1)打开Word表格所在的文件;
(2)打开要处理Word表格的Excel文件,并调整好两窗口的位置,以便能看见表格和要插入表格的区域;
(3)选中Word中的表格;
(4)按住鼠标左键,将表格拖到Excel窗口中,松开鼠标左键将表格放在需要的位置即可。
9、快速链接网上的数据
您可以用以下方法快速建立与网上工作簿中数据的链接:
(1)打开Internet上含有需要链接数据的工作簿,并在工作簿选定数据,然后单击“编辑”菜单的“复制”命令;
(2)打开需要创建链接的Excel工作簿,在需要显示链接数据的区域中,单击左上角单元格;
(3)单击“编辑”菜单中的“选择性粘贴”命令,在“选择性粘贴”对话框中,选择“粘贴链接”按钮即可。若您想在创建链接时不打开Internet工作簿,可单击需要链接处的单元格,然后键入(=)和URL地址及工作簿位置,如:=http://www.Js.com/[filel.xls]。
10、快速创建工具栏
通过工具栏您可以快捷地访问常用的命令或自定义的宏,您可以根据需要快速创建自己的工具栏。方法为:单击“工具”菜单中的“自定义”命令,选择“工具栏”选项卡,单击“新建”按钮,输入“新建工具栏”名称,然后单击“确定”。这时新建工具栏出现在窗口,您就可以用鼠标把其他工具栏中的按钮拖到新建工具栏中,该按钮就会在此“落户”。若在拖动时按着Ctrl键,则会将按钮复制过来。注意:不能将按钮拖到“自定义”对话框或工作表中,否则该按钮将会被删除。
11、快速创建工作簿
模板是一用来作为创建其它工作簿的框架形式,利用它可以快速地创建相似的工作簿。创建模板方法为:
(1)打开一个要作为模板的工作簿;
(2)选择“文件”菜单中“另存为”命令,打开“另存为”对话框;
(3)在“文件名”框中输入模板的名字,从“保存类型”列表中选定“模板(*.xlt)”选项,这时“保存位置”会自动切换到默认的模板文件夹Templates文件夹;
(4)在“保存位置”中选择“电子表格模板”文件夹,单击“保存”即可。这样,您就可以根据该模板快速创建新工作簿了。
12、快速跳转到其它文件
用超级链接在各个位置之间跳转十分方便,若您要切换到其它文件,只需用鼠标指向带有下划线的蓝色超级链接文件,然后单击鼠标即可跳转到超级链接所指向的子位置上去,看完后若要返回,只需单击“Web”工具栏上的“返回”按钮即可。

Shift键在Excel里有这样的妙处:在按下Shift键的同时点击“编辑”菜单,原来的复制和粘贴选项就会变成“复制图片”和“粘贴图片”。利用这一功能,我们就能把选定的单元格区域方便地转换为图片。
具体操作方法如下:
首先选中需要复制成图片的单元格区域,然后按住Shift键,依次选择“编辑→复制图片”命令,接着弹出“复制图片”窗口,选择“图片”单选项后点击“确定”按钮。这时选定的表格区域就已经被复制成图片了。
再到需要使用这张图片的地方选择“粘贴”命令即可(或者按Shift键再选择“编辑→粘贴图片”命令),比如将其在Word中粘贴。
另外,如果选择“如打印效果”单选项,那么被转换为图片的数据区域是按照打印效果来处理的,比如设置有粗边框,那么粘贴出来的图片上就会有粗边框。
Still附送小技巧:复制Excel单元格以后,在QQ聊天窗口里粘贴,也能转换出图片。

用Excel做表格,经常遇到需要在某一列使用同一单位的情况。如果先在第一个单元格输入对应单位的名称,然后使用“拖拽”的方法使其它行复制这一单位,达到的效果不尽人意,要么需要再改单位前的数值,要么单位与数值分在两列。
我们通过预先设置某一列的格式可以让这些单位“自动补全”。
这里以将某一列的单位设置为厘米(CM),最终的效果是在该列任一单元格中输入数字后,按下回车键或将光标移至其它单元格,在数字后会自动补齐“CM”。
第一步:运行Excel,单击选中需要设置格式的列。右键单击选中的列,在弹出的快捷菜单中选择“设置单元格格式”(如图1)。

第二步:在打开的“单元格格式”对话框中,在“数字”标签中,选中“自定义”项,在右侧“类型(T):”下方的文本框中输入“0.00"CM"”(如图2,不含外侧引号),最后单击“确定”按钮。

经过这样设置之后,在该列单元格中输入数据时,不用再考虑单位问题了,直接输入数字即可。
小提示:其中“0.00”表示该列单元格保留两位小数,小数点后面几个“0”就代表几位小数,具体多少可根据需要自行设置。如果是其它单位符号,只要更改双引号中的CM为相应的字符即可。

在用Excel统计成绩时,我们一般会根据成绩高低进行排序,然后按序列自动填充出名次。这种方法得出的名次与总分没有关联,即使成绩相同,也会填充出不同的名次。
如果数据较少,我们可以采用手动的方法将成绩相同的人员改成相同的名次,但数据较多时就很麻烦了。经过实践,以下三种方法可以自动实现同分同名次的操作。假设有1000名考生,字段位置如上图所示。
一、使用排位函数RANK
在H2单元格中输入函数“=RANK(G2,G$2:G$1001,0)”,回车后H2单元格中会出现名次“1”,然后选定H2,拖动其填充柄向下填充即可自动实现。
该函数的功能是返回一个数字(上述函数中的G2,此处采用相对应用,填充时随行的变化而变化)在数字列表(上述函数中的G$2:G$1001,此处采用绝对应用,填充时不发生变化)中的排位。数字的排位是其大小与列表中其他值的比值。该函数在使用时,即使总分没有排序,它也可以直接求出所对应总分的名次;如果总分已排过序,则数字的排位就是它当前的位置。上述函数中最后的“0”指明排位的方式,当其为 0或省略时,Excel 对数字的排位是按照降序排列的。 如果不为零, Excel 对数字的排位则是按照升序排列的。该函数对重复数的排位相同,而下一名次则将前面的重复数计算在内。
二、使用计数函数COUNTIF
在H2单元格中输入函数“=COUNTIF(G$2:G$1001,">"&G2)+1”,然后向下自动填充即可实现该操作。
该函数的功能是计算区域中满足给定条件的单元格个数。上述函数中采用绝对引用指定计算区域G$2:G$1001,名次所对应的单元格G2采用相对引用。即求出在G2:G1001区域中大于名次所对应总分的单元格的个数,然后加上1就可以得出该单元格中数值的名次。该操作不管有几个重复的,大于它的个数却是固定的,所以重复数据的名次也就是相同的了。同RANK函数一样,该函数不管是否已经按总分进行排序均可进行上述操作。
三、采用IF语句加COUNT函数
该操作与上述两种方法不同,必须先将总分按照降序排列。然后将第一名的名次“1”输入,再在H3单元格中输入函数“=IF(G3=G2,H2,COUNT($G$2:G3))”,确定后向下自动填充也可实现同分同名次的操作。
COUNT函数的功能是返回指定区域中数字单元格的个数。因为G列全是数字单元格,所以该总分处在第几位上名次就是几。上述语句的意思就是如果当前总分和上一个总分相同,则输入上一个总分的名次,否则执行COUNT语句,统计个数。
以上三种方法均可自动实现同分同名次操作。本文虽然有孔乙己先生关于“回”字有四种写法的嫌疑,但笔者的目的却只有一个,那就是抛砖引玉,让Excel函数更好的为我们服务。

使用Excel按人头打出工资条,有用Word邮件合并功能的,也有用VBA功能的,也有采用编写公式直接产生的。可参看天极软件办公栏目的文章(Word、Excel配合按人头打印工资条、仅需一个公式让Excel按人头打出工资条)但我觉得,对于普通公司员工来说,这些方法都显得专业性太强。其实,变通一下,也可以不用公式,直接让Excel按人头打出工资条的,方法简单,适合Excel新手使用。
假定公司有员工100人,工资数据在A2:R101区域。在工作表的第一行A1:R1区域为工资项目,如图1所示。我们需要的工资条是第一行为工资项目,第二行为各员工的工资,第三行为空行,以便我们打印后分割。

第一步:先选中A列,点击右键,在弹出的快捷菜单中点击“插入”命令,插入一个辅助列。在A2、A3、A4单元格分别输入数字“2”、“5”、“8”。选中这三个单元格,拖动填充句柄向下至A101单元格,为这些单元格添加序号。
第二步:复制A1:R1单元格,然后在A102单元格单击,并粘贴。选中A102:R102单元格,将鼠标定位于填充句柄,按下右键,向下拖动填充句柄至R200单元格。松开右键,在弹出的菜单中选择“复制单元格”命令,如图2所示。这样就复制了99个工资项目,加上第一行的那个,正好100个。

第三步:在A1单元格中输入数字“1”,在A102、A103、A104单元格分别输入数字“4”、“7”、“10”。然后选中A102:A104单元格向下拖动填充句柄,至A200单元格,为所有的工资项目添加序号。
第四步:在A201、A202、A203分别输入数字“3”、“6”、“9”。然后选中这三个单元格,向下拖动填充句柄至A300单元格。
好了,现在您肯定明白了。我们在工资项目、工资数据、空行分别添加了相互间隔的序号。现在,我们只要根据A列序号,升序进行排列,那么就可以得到所需要的工资条了,如图3所示。

最后要做的,就是选中A列数据,点击右键,在弹出的快捷菜单中选择“隐藏”命令,将该辅助列隐藏起来,如图4所示。


Excel中某列单元格均含有超链接,用手工删除超链接的方法必须一个个进行:右击该列中任何一个含有超链接的单元格,选择“取消超链接”(图1)。由于数量巨大,因此只能考虑采用批量删除法。

一、宏代码去除法
打开该Excel文件,切换到“视图”选项卡,点击“宏”→“录制宏”,出现“录制新宏”窗口,在“宏名”定义一个名称为:RemoveHyperlinks(图2),点击“确定”退出;

再点击“宏”→“查看宏”,选择“宏名”下的“RemoveHyperlinks”并点击“编辑”,打开“Microsoft Visual Basic”编辑器,用如下内容替换右侧窗口中的所有代码(图3),然后保存关闭VBA编辑器:
Sub RemoveHyperlinks()
‘Remove all hyperlinks from the active sheet
ActiveSheet.Hyperlinks.Delete
End Sub

再点击“宏”→“查看宏”,选择“宏名”下的“RemoveHyperlinks”并点击“执行”即可去除该工作表的链接。
用以下代码也可以达到相同的目的:
Sub ZapHyperlinks()
Cells.Hyperlinks.Delete
End Sub

Excel弹出“您试图更改的单元格或图表受保护,因而是只读的。若要修改受保护单元格或图表,请先使用‘撤消工作表保护’命令(在‘审阅’选项卡的‘更改’组中)来取消保护。可能会提示您输入密码。”窗口,如图1。

出现这种情况,应该怎么解决呢?经过研究,找到了两种破解Excel工作表保护码的方法。
一、VBA宏代码破解法:
第一步:打开该文件,先解除默认的“宏禁用”状态,方法是点击工具栏下的“选项”状态按钮,打开“Microsoft Office安全选项”窗口,选择其中的“启用此内容”,“确定”退出(图2);

再切换到“视图”选项卡,点击“宏”→“录制宏”,出现“录制新宏”窗口,在“宏名”定义一个名称为:PasswordBreaker(图3),点击“确定”退出;

第二步:再点击“宏”→“查看宏”,选择“宏名”下的“PasswordBreaker”并点击“编辑”,打开“Microsoft Visual Basic”编辑器,用如下内容替换右侧窗口中的所有代码:
Sub PasswordBreaker()
Dim i As Integer, j As Integer, k As Integer
Dim l As Integer, m As Integer, n As Integer
Dim i1 As Integer, i2 As Integer, i3 As Integer
Dim i4 As Integer, i5 As Integer, i6 As Integer
On Error Resume Next
For i = 65 To 66: For j = 65 To 66: For k = 65 To 66
For l = 65 To 66: For m = 65 To 66: For i1 = 65 To 66
For i2 = 65 To 66: For i3 = 65 To 66: For i4 = 65 To 66
For i5 = 65 To 66: For i6 = 65 To 66: For n = 32 To 126
ActiveSheet.Unprotect Chr(i) & Chr(j) & Chr(k) & _
Chr(l) & Chr(m) & Chr(i1) & Chr(i2) & Chr(i3) & _
Chr(i4) & Chr(i5) & Chr(i6) & Chr(n)
If ActiveSheet.ProtectContents = False Then
MsgBox "One usable password is " & Chr(i) & Chr(j) & _
Chr(k) & Chr(l) & Chr(m) & Chr(i1) & Chr(i2) & _
Chr(i3) & Chr(i4) & Chr(i5) & Chr(i6) & Chr(n)
ActiveWorkbook.Sheets(1).Select
Range("a1").FormulaR1C1 = Chr(i) & Chr(j) & _
Chr(k) & Chr(l) & Chr(m) & Chr(i1) & Chr(i2) & _
Chr(i3) & Chr(i4) & Chr(i5) & Chr(i6) & Chr(n)
Exit Sub
End If
Next: Next: Next: Next: Next: Next
Next: Next: Next: Next: Next: Next
End Sub
第三步:再点击“宏”→“查看宏”,选择“宏名”下的“PasswordBreaker”并点击“执行”,密码就现形了(图4)。

第四步:切换“审阅”选项卡,点击“撤消工作表保护”,然后输入密码即可解除锁定。

Excel经常会因为各种原因出现错误值标识,比如“#DIV/0!”、“#N/A”等等。怎样才能使这些错误值标识不再显示出来呢?
一、使用条件格式
首先选中包含错误值的单元格区域,点功能区“开始”选项卡“样式”功能组中的“条件格式”下方的小三角形,在弹出的菜单中点“突出显示单元格规则→其它规则”命令,如图1所示。

打开“新建格式规则”对话框。在“选择规则类型”列表中点“只为包含以下内容的单元格设置格式”,点“只为满足以下条件的单元格设置格式”下方的下拉按钮,在列表中选择“错误”,如图2所示。

点右下方的“格式”按钮。打开“设置单元格格式”对话框,单击“字体”选项卡,点“颜色”下拉按钮,为单元格数值指定与背景相同的颜色,如图3所示,确定后就可以了。

我们也可以利用公式来设置条件格式。首先选中任意一个单元格(是否为错误值均可),如D3单元格,点“条件格式”功能按钮下方的小三角形,在弹出的菜单中点“新建规则”命令,打开如图2所示对话框。在上方的“选择规则类型”列表中选择“使用公式确定要设置格式的单元格”,在“为符合此公式的值设置格式”下方的输入框中输入公式“=ISERROR(D3)”,如图4所示。点“格式”按钮,在打开的对话框中设置的格式。

确定后选中该单元格(D3单元格),点功能区“开始”选项卡“剪帖板”功能组中的“格式刷”按钮,刷选其它要设置条件格式的单元格区域,将设置好的条件格式复制过去就可以了。
二、用IF函数和ISERROR函数
比如我们要用公式“=B2/A2”来计算B2单元格除以A2单元格所得的商。如果A2单元格为零或空值,就会显示“#DIV/0!”错误标识。但我们可以将该公式修改为“=IF(ISERROR(B2/A2),"", B2/A2)”,这样就不会有错误标识出现了。
ISERROR(B2/A2)的作用是判断B2/A2是否为任意错误值。如果是,那么就返回“True”,否则就返回“FALSE”。
IF函数的语法规则是IF(条件是否成立,条件成立时显示的结果,条件不成立时的显示结果)。所以,上例中=IF(ISERROR(B2/A2),"", B2/A2)其含义就是判断B2/A2是否返回错误值,如果是,那就显示””(不显示任何内容),如果不是,那么就显示B2/A2所得的结果。
三、用IFERROR函数
与上面的方法相比,IFERROR函数更为简单。假定我们仍然计算B2/A2。把公式写成“=IFERROR(B2/A2," ")”。那么,如果没有错误出现,就会显示B2/A2的结果;如果有错误产生,那么就不会显示任何内容。
地址:广州市天河区中山大道中989号迎海集团2楼
电话:020-85896881 85896883 22943186 22943187 22943189 传真:020-39797179
Copyright © 2000-2010 广州市正佳信息科技有限公司 粤ICP备07512623号
![]()