返回目录:excel表格制作
这个题测出了你的Excel水平
大家好,今天和大家分享的“这个题测出了你的Excel水平",先申明,我这个也只是一个简单的测试,也不能说明什么问题和大家的水平,有兴趣的朋友可以往下看下去。我们只当做一次娱乐。测试一下自己的Excel水平在那一个等级,这里把Excel分为菜鸟级,初级,中级,高级。题目要求:动态统计不连续的A列,C列,F列“小老鼠”的个数。也就是这三列的数据会经常更新.更多Excel学习和问题请加群:289393114、570064677
一、菜鸟级别用户解法:
1、手动一个一个去数
2、通过查找功能去数
二、初级用户解法:
1、公式截图
2、公式
=COUNTIF(A:A,"小老鼠")+COUNTIF(C:C,"小老鼠")+COUNTIF(F:F,"小老鼠").卫星excel讲堂:搜youxin201606
3、公式解释
统计每一列用一个countif,这个公式的缺点就是如果统计的列多了,公式就很长了
用countif函数按条件统计个数,这个函数有2个参数,第1参数:要统计的单元格区域,第2参数:要统计的条件
三、中级用户的解法:
1、公式截图
2、公式
=SUM(COUNTIF(OFFSET(A:A,0,{0,2,5}),"小老鼠"))
3、公式解释
offset函数这里返回三列
返回的这三列作countif函数的第1参数,把这三列每一列都统计一次,因些countif返回3个结果,{1,2,3},所以最外面还在用sum求和一次
Offset函数这里用了3个参数,第4,第5参数省略了
OFFSET(A:A,0,{0,2,5})函数第1参数用了整列,大家看清楚是一整列,你是否想得这样的用法了,第2参数偏移的行,行不偏移,那还是指A列,第3参数偏移列,这里用了数组的用法,{0,2,5},0表示不偏移,还是指A列,2偏移2列指C列,5偏移5列指F列,也就是通过offset得到这三列作countif的第1参数
四、高级用户解法
自己编程写了一个查询功能的代码,
1、动画操作效果
2、代码
Option Explicit
Sub test()
Dim Rg As Range, ST, S, k
On Error Resume Next
ST = InputBox("请输入查找值", "佛山小老鼠:温馨提示", , 200, 4000)
If Err <> 0 Or ST = "" Then Exit Sub
Set Rg = Union([A:A], [C:C], [F:F]).Find(ST, lookat:=xlWhole)
If Rg Is Nothing Then MsgBox "找不到", 64, "提示": Exit Sub
S = Rg.Address
Do
Set Rg = Union([A:A], [C:C], [F:F]).Find(ST, Rg, lookat:=xlWhole)
k = k + 1
Loop While Rg.Address <> S
MsgBox "找到" & ST & "数量:" & k, 64, "结果"
End Sub
3、代码操作方法
快捷键alt+F11打开vba后台
插入菜单,插入模块
复制上面的代码,粘贴到模块的空白处
把光标点到代码任意一行,点按钮运行