ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
楼主: aenson

[求助] 不懂excel的语法,我知道算法是怎么样的,请大家帮忙.在线等....................

[复制链接]

TA的精华主题

TA的得分主题

发表于 2008-12-23 09:11 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
比如表2的字段2,是5 2 那么2 5算有?算无?是502 或是5和2?
都需要楼主予以明确

TA的精华主题

TA的得分主题

 楼主| 发表于 2008-12-23 12:37 | 显示全部楼层
原帖由 热带枯叶 于 2008-12-23 08:50 发表
5楼写的想法没错,我看楼主的意思是只要第二张表某一行的数据能在第一张表的对应列里找到,那么就写个“是”,对么?
如果这样的话,其实用countif就是在统计对应列里是否有与A2相同的数据,这样若干列的数据如果有 ...


首先感谢你的回答,但是我的意思不是这样.
把表改一下
比如
表1:
A           B           C         D
1           5            4          5
2           6            0          6
3           5            2          3

表2:
A          B          C           D           E
1          6           1           6           有
2          5           1           2           无
我的意思是表2 中 B列和D列数据同时和表1中某条记录的B列和D列相同,则相应的表2中那条记录的E列为"有"
比如表2第一条记录,B和D的值都为6在表1第二条记录B和D的值相同,则E为有
但按你的方法则表2第二条记录的E也是有.你看是不是?但是应该是没有,要无
按高级语言的算法来说.
做一个循环
          for (i=1;i<n;++i)          /*设有表1有N个记录
           {       if  表1!b(i)=表2!b2的值
                   { if 表1!d(i)=表2!d2的值   
                         表2!e2="有";
                                    i=n;
                            else  表2!e2="无";
                         }
                     else 表2!e2="无";
             }
         
我的语法也写的乱七八糟,大概是这个意思,excel中不知怎么做?

[ 本帖最后由 aenson 于 2008-12-23 13:12 编辑 ]

TA的精华主题

TA的得分主题

发表于 2008-12-23 14:34 | 显示全部楼层
哦,这样一说就明白了。
看看

Book2.rar

1.57 KB, 下载次数: 15

TA的精华主题

TA的得分主题

 楼主| 发表于 2008-12-23 17:04 | 显示全部楼层
原帖由 MicrosoftEH 于 2008-12-23 14:34 发表
哦,这样一说就明白了。
看看

=IF(SUM(--(B$2:B$4&D$2:D$4=B11&D11)),"有","无")


能不能解释一下为什么要用sum ,还有"--"是什么意思

TA的精华主题

TA的得分主题

 楼主| 发表于 2008-12-23 17:17 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
还有是$表示什么?
有没有比较好的excel教程

TA的精华主题

TA的得分主题

发表于 2008-12-23 18:26 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
回复楼主:
1.数组公式=IF(SUM(--(B$2:B$4&D$2:D$4=B11&D11)),"有","无")中“--”的意思为“负的负数”,那么就是正数了。目的是将B$4&D$2:D$4=B11&D11比较所产生的逻辑值TRUE、FALSE分别转化为1、0的数值以便于SUM函数来求和。当然也不一定非用“--”不可,用“*1”、“+0”.......等也可以实现同样的转化;
2.“$”的意思表示该引用为“绝对引用”,其目的是方便于公式复制到别的单元格时,其引用的范围不随结果单元格而变化。
以上是个人的浅见,未必正确,权当瞎话听之吧。
请问楼主,上述公式有没有解决你的问题呢??

TA的精华主题

TA的得分主题

 楼主| 发表于 2008-12-23 19:40 | 显示全部楼层
原帖由 MicrosoftEH 于 2008-12-23 18:26 发表
回复楼主:
1.数组公式=IF(SUM(--(B$2:B$4&D$2:D$4=B11&D11)),"有","无")中“--”的意思为“负的负数”,那么就是正数了。目的是将B$4&D$2:D$4=B11&D11比较所产生的逻辑值TRUE、FALSE分别转化为1、0的数值以便于SUM ...


没有解决我的问题,我把表传上去,你帮我看看.
表2的b,c,j,k,和表1的h,m q u 数据相同时,表2的m为已报,否则为未报 1234.rar (4.25 KB, 下载次数: 10)

TA的精华主题

TA的得分主题

发表于 2008-12-23 21:04 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
明白了。楼主测试不符的关键在于两表的日期表达方式并不一致,看着是相同的东西,Excel认为并不一样:
表1为文本格式,比如M2为20080123
表2为数字格式,比如M4为2008-1-23

统一之后应该没有问题的。

TA的精华主题

TA的得分主题

发表于 2008-12-23 21:16 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
再看看,对不对?

1234.rar

4.83 KB, 下载次数: 17

TA的精华主题

TA的得分主题

发表于 2009-12-9 23:38 | 显示全部楼层
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-11-23 18:28 , Processed in 0.044754 second(s), 8 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

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