设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

返回列表 发新帖
查看: 4251|回复: 7
打印 上一主题 下一主题

如何实理以A表中一个条件,查找出另B表中符合该条件的多行数据显示在A表中

[复制链接]
跳转到指定楼层
1#
发表于 2006-10-18 18:38:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式



请各位大侠帮忙邦忙!

VLOOKUP函数,只能查找出例出第一个符合条件的数据,却不能实现列出符合条件的所有数据!

请指教!!![em01]

本帖子中包含更多资源

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

x
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
2#
发表于 2006-10-19 04:39:00 | 只看该作者
用函数是可以的,不过本人想到的方法会麻烦复杂许多。

如果楼主确实要做而又没有其他更好的办法,可以试下本人以下比效麻烦复杂些的方法:

1、在B表A列前插入一列(原A─J列将往后顺延一列)后,在A1输入“=CONCATENATE(B2,IF(COUNTIF(B$2:B2,B2)<10,CONCATENATE("1000",COUNTIF(B$2:B2,B2)),IF(COUNTIF(B$2:B2,B2)<100,CONCATENATE("100",COUNTIF(B$2:B2,B2)),IF(COUNTIF(B$2:B2,B2)<1000,CONCATENATE("10",COUNTIF(B$2:B2,B2)),IF(COUNTIF(B$2:B2,B2)<10000,CONCATENATE("1",COUNTIF(B$2:B2,B2)),CONCATENATE("",COUNTIF(B$2:B2,B2)))))))”,然后往下拖,(20000行以内适宜)

2、在A表中

    A5=IF(ROW()-4<=COUNTIF(B表!B$2:B$10000,B$2),B$2,"")

    B5=IF(A5="","",VLOOKUP(IF(ROW()-4<10,CONCATENATE(A5,"1000",ROW()-4),IF(ROW()-4<100,CONCATENATE(A5,"100",ROW()-4),IF(ROW()-4<1000,CONCATENATE(A5,"10",ROW()-4),IF(ROW()-4<10000,CONCATENATE(A5,"1",ROW()-4),CONCATENATE(A5,ROW()-4))))),B表!$A$2K$20000,3,FALSE))

    C5=IF(A5="","",VLOOKUP(IF(ROW()-4<10,CONCATENATE(A5,"1000",ROW()-4),IF(ROW()-4<100,CONCATENATE(A5,"100",ROW()-4),IF(ROW()-4<1000,CONCATENATE(A5,"10",ROW()-4),IF(ROW()-4<10000,CONCATENATE(A5,"1",ROW()-4),CONCATENATE(A5,ROW()-4))))),B表!$A$2K$20000,4,FALSE))

    D5=IF(A5="","",VLOOKUP(IF(ROW()-4<10,CONCATENATE(A5,"1000",ROW()-4),IF(ROW()-4<100,CONCATENATE(A5,"100",ROW()-4),IF(ROW()-4<1000,CONCATENATE(A5,"10",ROW()-4),IF(ROW()-4<10000,CONCATENATE(A5,"1",ROW()-4),CONCATENATE(A5,ROW()-4))))),B表!$A$2K$20000,5,FALSE))

   …………

然后各列依次往下拖,(拖多少行看自己需要,一般20000行以内适宜)

以上函数楼主如觉得合适,麻烦回复打个招呼,给些意见。谢谢!


[此贴子已经被作者于2006-10-18 22:09:10编辑过]

3#
发表于 2006-10-19 05:36:00 | 只看该作者

TTT

You can try this file! Is it the result you need?
4#
发表于 2006-10-19 05:38:00 | 只看该作者

TTT

The file you need!

本帖子中包含更多资源

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

x
5#
发表于 2006-10-19 06:23:00 | 只看该作者
A表中A5=IF(ROW()-4<=COUNTIF(B表!B$2:B$10000,B$2),B$2,"") 的 $为新加上,再者在B表的A2的函数前加上IF(B2="","",…………)



见笑了!

本帖子中包含更多资源

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

x
6#
发表于 2006-10-24 05:06:00 | 只看该作者
谢谢各位师傅的指导!

强烈的谢谢
7#
发表于 2008-11-15 20:12:54 | 只看该作者
看看了解一下子
8#
发表于 2009-4-18 21:30:47 | 只看该作者
很好的东西
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-11-11 11:03 , Processed in 0.110652 second(s), 33 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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