b****o 发帖数: 403 | 1 请版主高抬贵手让本帖存活时间长一些
excel公式请教
我有一个如下表格
A B C D E F G
1 ID a ab aba aa aab abc
2 ia 5
3 ib 2
4 ic 6
5 id 8
6 ie 9
7 if 3
8 ig 7
9 ih 1
我想用公式做到如下查询:
给定一个字符串,该字符串是"a","ab",...."abc"(即b1:g1)中的任何一个,从b2:g9查
找包含数据的cell的个数,cell所在column的row 1必须是给定的字符串。
请各路高人不吝赐教。 |
c*******o 发帖数: 27734 | 2 你不会google?先捐版上10个包子,你天天来问。。。
【在 b****o 的大作中提到】![](/moin_static193/solenoid/img/up.png) : 请版主高抬贵手让本帖存活时间长一些 : excel公式请教 : 我有一个如下表格 : A B C D E F G : 1 ID a ab aba aa aab abc : 2 ia 5 : 3 ib 2 : 4 ic 6 : 5 id 8 : 6 ie 9
|
b****o 发帖数: 403 | 3 头一次来问,怎么就叫“天天”了?
能google到我还来干嘛?谁不知道mitbbs某些人以动不动就开骂为乐?
同事也全问遍了,没知道的。
【在 c*******o 的大作中提到】![](/moin_static193/solenoid/img/up.png) : 你不会google?先捐版上10个包子,你天天来问。。。
|
s*******e 发帖数: 15758 | |
b****o 发帖数: 403 | 5 我也不知道我有几个包子,包子和伪币是什么关系?如果你的方法work,10个伪币也可
以。
【在 s*******e 的大作中提到】![](/moin_static193/solenoid/img/up.png) : 我会,5个包子就够了
|
s*******e 发帖数: 15758 | 6 1个包子等于10个weibi
【在 b****o 的大作中提到】![](/moin_static193/solenoid/img/up.png) : 我也不知道我有几个包子,包子和伪币是什么关系?如果你的方法work,10个伪币也可 : 以。
|
b****o 发帖数: 403 | 7 也行。再多就不行了,我只够问3个问题。
【在 s*******e 的大作中提到】![](/moin_static193/solenoid/img/up.png) : 1个包子等于10个weibi
|
s*******e 发帖数: 15758 | |
b****o 发帖数: 403 | 9 不会啊,输入a,有两个cell符合条件,b3和b7,答案是2.
输入ab答案也是2。
这个表格行数远远大于列数,每行在b-g列中都只有唯一一个cell有数据。我举的例子
只是个简化的示例。
【在 s*******e 的大作中提到】![](/moin_static193/solenoid/img/up.png) : 我数了数,不管选哪个字符,结果都是1
|
b****o 发帖数: 403 | |
|
|
i****a 发帖数: 36252 | 11 1: add a SUM(B2:B6) at B7.
2: copy that SUM to C7, D7, E7...etc
3: use this formular
=HLOOKUP("aba", A1:G7, 7, FALSE)
update the range (A1:G7) and the returned value row index (7) to match
your data size.
【在 b****o 的大作中提到】![](/moin_static193/solenoid/img/up.png) : 请版主高抬贵手让本帖存活时间长一些 : excel公式请教 : 我有一个如下表格 : A B C D E F G : 1 ID a ab aba aa aab abc : 2 ia 5 : 3 ib 2 : 4 ic 6 : 5 id 8 : 6 ie 9
|
H******7 发帖数: 34403 | |
b****o 发帖数: 403 | 13 这个方法我知道,不过产生了额外的数据,占用额外的cell。
我的想法是只在一个cell里面用公式组合直接获得最终结果,保持表格清爽。
【在 i****a 的大作中提到】![](/moin_static193/solenoid/img/up.png) : 1: add a SUM(B2:B6) at B7. : 2: copy that SUM to C7, D7, E7...etc : 3: use this formular : =HLOOKUP("aba", A1:G7, 7, FALSE) : update the range (A1:G7) and the returned value row index (7) to match : your data size.
|
c*******o 发帖数: 27734 | 14 哈哈。。。
【在 s*******e 的大作中提到】![](/moin_static193/solenoid/img/up.png) : 我数了数,不管选哪个字符,结果都是1
|
i****a 发帖数: 36252 | 15 put the header row and sum into a separate worksheet then
on sheet2, header in row 1, and =SUM(Sheet1!A2:A5) in row 2
then you can use
=HLOOKUP("ab", Sheet2!A1:D2, 2, FALSE)
【在 b****o 的大作中提到】![](/moin_static193/solenoid/img/up.png) : 这个方法我知道,不过产生了额外的数据,占用额外的cell。 : 我的想法是只在一个cell里面用公式组合直接获得最终结果,保持表格清爽。
|
b****o 发帖数: 403 | 16 先下班了,晚上再看有没有人解决了我的问题,解决了就送5包子,没解决也不会让大
家白帮忙,也送伪币。 |
c*******o 发帖数: 27734 | 17 吃。
【在 b****o 的大作中提到】![](/moin_static193/solenoid/img/up.png) : 先下班了,晚上再看有没有人解决了我的问题,解决了就送5包子,没解决也不会让大 : 家白帮忙,也送伪币。
|
b****o 发帖数: 403 | 18 也算一个曲线解决方案,期待终极办法
【在 i****a 的大作中提到】![](/moin_static193/solenoid/img/up.png) : put the header row and sum into a separate worksheet then : on sheet2, header in row 1, and =SUM(Sheet1!A2:A5) in row 2 : then you can use : =HLOOKUP("ab", Sheet2!A1:D2, 2, FALSE)
|
H******7 发帖数: 34403 | 19 要表格清爽可以放到Sheet 2里,然后refer.你一个cell含长串公式自己看累都累死
【在 b****o 的大作中提到】![](/moin_static193/solenoid/img/up.png) : 这个方法我知道,不过产生了额外的数据,占用额外的cell。 : 我的想法是只在一个cell里面用公式组合直接获得最终结果,保持表格清爽。
|
i****a 发帖数: 36252 | 20 maybe you can somehow use =match to get the row number...
and is row number providing any real data value here? you can flatten the
table into just 2 rows if not...
发信人: iMaJia (iMac,iPod,iPad,i馬甲), 信区: Joke
标 题: Re: 这里人多,借块地请教问题
发信站: BBS 未名空间站 (Thu Apr 15 18:08:51 2010, 美东)
put the header row and sum into a separate worksheet then
on sheet2, header in row 1, and =SUM(Sheet1!A2:A5) in row 2
then you can use
=HLOOKUP("ab", Sheet2!A1:D2, 2, FALSE)
【在 b****o 的大作中提到】![](/moin_static193/solenoid/img/up.png) : 也算一个曲线解决方案,期待终极办法
|
|
|
b****o 发帖数: 403 | |
c******r 发帖数: 3778 | 22 不会啊,就一个column一个column地用if判断就是了。如果
是就count否则就column,否则就看下一个column。全不是
就输出0.
比如这样,你在A10输入要查询的字符串,在A11输出结果:
A11的cell就是:
=if(A10=B2,count
(B3,B9),(if(A10=C3,count(C3,C9)....,0)
【在 b****o 的大作中提到】![](/moin_static193/solenoid/img/up.png) : 估计没直接的解决办法了。谢谢各位
|
c******r 发帖数: 3778 | 23 发包子吧
A12是要search的字符,A13:
=IF(A12=B1,COUNT(B2:B10),IF(A12=C1,COUNT(C2:C10),IF(A12=D1,COUNT(D2:D10),IF(
A12=E1,COUNT(E2:E10),IF(A12=F1,COUNT(F2:F10),IF(A12=G1,COUNT(G2:G10),0)))))) |
b****o 发帖数: 403 | 24 我这个简化的表格都要这么长啊,我原本的数据一共16个column,200多row需要考虑,
此外,每个row除了这16个column之外,在第17,18两个column的数据也要符合某个条
件,用这个全体都if一遍的办法公式就要超级长了,不知道会不会拖的死机。不过还是
给你10块钱感谢辛苦费了。
IF(
))
【在 c******r 的大作中提到】![](/moin_static193/solenoid/img/up.png) : 发包子吧 : A12是要search的字符,A13: : =IF(A12=B1,COUNT(B2:B10),IF(A12=C1,COUNT(C2:C10),IF(A12=D1,COUNT(D2:D10),IF( : A12=E1,COUNT(E2:E10),IF(A12=F1,COUNT(F2:F10),IF(A12=G1,COUNT(G2:G10),0))))))
|
c******r 发帖数: 3778 | 25 呵呵,
首先我这个解决方法是excel可能唯一的办法,但是缺陷是不
能超过10个column。excel的functions内嵌不能超过10
层(还是12层?反正是有限制的),但是跟多少row没关系,
因为不内嵌。就是多count几行而已。
你要dynamic不是不可以,但是仅仅靠excel functions
是不行的。
原因是那个column和row的number不能calculate,必须
specify。比如A[11-2]是不行的。这就大大限制了你自动
搜索并且match back的能力。没有办法,excel不是万能
的。
当然也不是没有解决办法。最简单的是写个macro,其实也不
难,你试试看?
谢谢包子!
column,200多row需要考虑,
个column的数据也要符合某个条
道会不会拖的死机。不过还是
【在 b****o 的大作中提到】![](/moin_static193/solenoid/img/up.png) : 我这个简化的表格都要这么长啊,我原本的数据一共16个column,200多row需要考虑, : 此外,每个row除了这16个column之外,在第17,18两个column的数据也要符合某个条 : 件,用这个全体都if一遍的办法公式就要超级长了,不知道会不会拖的死机。不过还是 : 给你10块钱感谢辛苦费了。 : : IF( : ))
|