找回密码
 立即注册
搜索
楼主: 妮可宝贝

EXCEL技巧专辑..(欢迎参与,共同学习)

[复制链接]

75

主题

3917

回帖

5276

积分

网站编辑

积分
5276
发表于 2007-6-22 09:31:48 | 显示全部楼层
又添了新知识
事能知足心长惬,人到无求品自高!
回复

使用道具 举报

13

主题

171

回帖

257

积分

海星

积分
257
发表于 2007-7-2 14:36:37 | 显示全部楼层

回复 #134 阿郎 的帖子

太高了,居然把excel 用的和程序一样了。学不少,还要继续。。。
回复

使用道具 举报

94

主题

2326

回帖

3190

积分

论坛元老

积分
3190
发表于 2007-7-5 17:24:11 | 显示全部楼层

使用sumproduct函数实现多条件计数

虽然Excel提供了countif函数实现条件计数,但如果遇到多条件就不能用了。
如图,现在想得出籍贯分别是 新疆、北京、天津的男女人数。
请注意红框内的函数串。
因比较简单,就不上传Excel表格了。希望对大家有所帮助,呵呵。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
回复

使用道具 举报

3

主题

168

回帖

224

积分

海星

积分
224
发表于 2007-7-23 15:55:04 | 显示全部楼层
不错的帖子,很多很实用。谢谢
回复

使用道具 举报

623

主题

8454

回帖

7741

积分

版主

弱弱的海豚

积分
7741
 楼主| 发表于 2007-8-2 15:53:14 | 显示全部楼层
自己给自己备忘一个:



8.1
半夜有人突然提问想筛选QQ群的聊天记录, 只保留指定号码的..
QQ聊天管理器中拿到聊天文本后,因为本来信息量大, 所以考虑使用UE的正则式替换删除无用及不符合的信息,未果
后发现信息量小,改用EXCEL实现.


初.
EXCEL打开文本后,聊天信息很规律, 唯一1列A列, 去除标题信息后,正文内容
第1行为 信息时间+QQ名称+QQ号码
第2行为 聊天内容
第3行为 空行
以此类推.


细致观察发现,此聊天记录在记事本中,聊天内容无转行,全部内容为1行, 如果聊天中增加有回车符,在记事本中显示为黑色方块■
在EXCEL黑色方块■自动还原成为回车,所以上面规律被这样的聊天记录改变, 也就是说,聊天内容可能不为1行,可能2行或是多行,
后空行,再显示下一条聊天信息


*^&^*

在B列写如下公式:

从B2开始, 如果无第1行,增加1空行.
B2=IF(A2="","", IF(B1="", IF(RIGHT(A2,9)="(8652827)",A2,"" ) ,A2) )

公式为3层IF嵌套..
红色层为判断此行A列内容的最后QQ号码是否为指定QQ号码, YES:就显示A列到B列, NO就B列为空
蓝色层为判断B列上行是否为空, YES:则在此行判断A列内容, NO就显示A列到B列
紫色层为判断A列此行是否为空, YES:B列直接为空, NO才开始进行上面的判断


解释:
1.红色层使用RIGHT语句判断A列最后的数据是否为指定Q号,进行主要筛选工作.  其中的粗大数字串为Q号, 因为规则是Q号前后
   有括号,所以前面的粗大数字"9"为实际Q号位数+2
2.蓝色层因为红色判断后,如果显示的话,表示前行为聊天时间+Q名称+Q号码,所以此下行肯定为聊天内容,需显示
3.紫色层剔除空行,只进非空行进行判断



初步解决问题.



又.
摸摸及E仔细观察聊天记录后,发现聊天记录中有些多行聊天记录中间有空行,如果按照上面公式实现,可能这样的聊天记录就只会显
示空行前面部分内容,而造成内容不完整


然.
时间太晚了,洗澡睡觉ing.....




果.
今天无事,继续研究.. 发现规则是聊天记录之间都保留有唯一空行,如果出现2个以上的空行,都可视为是聊天内容中的空行,所以是可
以公式进行判断的..
条件是判断上2行的A列是否为相同内容,比如"空行"就能准确判断此行是聊天内容中的空行,还是聊天记录之间的空行
在增加2个空行后,写出B3单元格的公式如下: (因要判断前2行,所以增加2辅助行,以使行首数据不会判断失败)

B3=IF(A3="","",IF(A1=A2,A3,IF(B2="",IF(RIGHT(A3,9)="(2194202)",A3,""),A3)))



^&^

弱弱滴一想,其实也不完美...具体大家也可仔细想想...反正偶是不玩了..

BTW: 希望大家也能参与讨论, 让自己的思维更加理性..

[ 本帖最后由 妮可宝贝 于 2007-8-2 15:54 编辑 ]
其实我本来什么都没有....


俺是多尔的豌豆.. 俺是墙根...  俺还有那乌黑亮丽的长发...



上得了厅堂,下得了厨房,写得了代码,查得出异常,杀得了木马,翻得了围墙,开得起好车,买得起新房,斗得过二奶,打得过流氓
回复

使用道具 举报

0

主题

3

回帖

4

积分

新手上路

积分
4
发表于 2007-8-5 10:45:37 | 显示全部楼层
很有用啊。谢谢分享。
回复

使用道具 举报

27

主题

431

回帖

432

积分

中级会员

积分
432
发表于 2007-8-6 20:06:22 | 显示全部楼层
很少用到,但是很好
回复

使用道具 举报

1084

主题

1万

回帖

1万

积分

论坛元老

积分
17919
发表于 2007-8-13 09:46:57 | 显示全部楼层

怎么样来转换行&列的转换

使用TRANSPOSE函数,假设数据源为2行6列,转换为行的话以应该是6行2列,在数据源想法选中6行2列,然后单击编辑公式按钮,在"查找与引用"中选择TRANSPOSE函数,之后选定数据源区域,单击确定,这时在转换区域会出现报错,表慌*^_^*,在公式编辑栏里面按下ctrl+shift+enter告诉excel这个是数组就哦科了,同理,行数据转换为列数据的操作也一样
我的梦中情人 有一头乌黑亮丽的长发
回复

使用道具 举报

623

主题

8454

回帖

7741

积分

版主

弱弱的海豚

积分
7741
 楼主| 发表于 2007-8-13 09:51:37 | 显示全部楼层
:loveliness:

昨天讨论了半天,这是一个狠有用的数组函数..

平时EXCEL就有转置的功能,但是只能用到纯数值上..

使用这个数组函数就能方便的以公式形式得到转置的数据了..

感谢摸摸,同时还要感谢ritter, 他提供了一种不使用数组函数的方法, 不过冰雪聪明的妮可没有吃透.嘿嘿.
其实我本来什么都没有....


俺是多尔的豌豆.. 俺是墙根...  俺还有那乌黑亮丽的长发...



上得了厅堂,下得了厨房,写得了代码,查得出异常,杀得了木马,翻得了围墙,开得起好车,买得起新房,斗得过二奶,打得过流氓
回复

使用道具 举报

623

主题

8454

回帖

7741

积分

版主

弱弱的海豚

积分
7741
 楼主| 发表于 2007-8-24 22:21:00 | 显示全部楼层
备忘一下,  函数方式得到页码和总页码..


插入——名称——定义

TotalPage=GET.DOCUMENT(50)
Pagenumber=IF(ISERROR(MATCH(ROW(),GET.DOCUMENT(64),1)),1,MATCH(ROW(),GET.DOCUMENT(64),1)+1)
其实我本来什么都没有....


俺是多尔的豌豆.. 俺是墙根...  俺还有那乌黑亮丽的长发...



上得了厅堂,下得了厨房,写得了代码,查得出异常,杀得了木马,翻得了围墙,开得起好车,买得起新房,斗得过二奶,打得过流氓
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|海浩社区

GMT+8, 2025-9-14 19:08 , Processed in 0.076384 second(s), 19 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表