. : : ClassiClub ForuM : : .

会员中心 论坛帮助 日历事件 标记论坛已读
返回   精品技术论坛 » 技术论坛 » 『软件使用』

『软件使用』: 电脑软件推荐, 电脑软件使用, 经验分享



发表新主题 关闭主题
 
主题工具
nh_wzg
 
nh_wzg 的头像
核心会员
 
资 料:
注册日期: Jul 2000
帖子: 3,174 声望值: 3
精华: 5,解答: 9
#1 旧 2012-10-10, 14:31:43 默认 【求助】与EXCEL-vlookup类似的功能扩展是什么?
nh_wzg 当前离线  

excel中的vlookup函数公式能直接通过一列上面的编号,把不同区域内的有相同编号的两行记录对应起来。

现在工作中使用比较普通了。

现在我想请教的问题是:如果想与EXCEL-VLOOKUP功能类似,想通过相同的编号,把一行记录与另外的多行记录对应起来,如何实现?

在现实工作中的例子就是:
表一:PC装机配置表
PC配置1,4,台
PC配置2,5,台
PC配置3,6,台

PC配置1
配件1,1,套,10.00,元
配件2,2,套,20.00,元
配件3,3,套,30.00,元
PC配置2
配件4,1,套,10.00,元
配件5,2,套,20.00,元
配件6,3,套,30.00,元
PC配置3
配件7,1,套,10.00,元
配件8,2,套,20.00,元
配件9,3,套,30.00,元

想把表一的PC机配置表参照按相应配件明细表内数量进行汇总列出并计算配件总价,如何在EXCEL中合理实现?

就是一件东西,分散成多个小东西,再进行汇总、计算的操作实现。现在纯手工操作,太容易出错,而且非常不灵活。

数据拟合-输入-格式化处理(文本/数据)-汇总/分类/分层,我认为现在这个分层就是用户就现实的要求,把不同记录间关系进行定义/命名的过程,我的EXCEL水平比较低,在EXCEL中实现的过程不清晰,而且不灵活。就此请教!

BTW:
补点解决单元格显示"#N/A",而无法进行汇总求和的小技巧:VLOOKUP改用更完善的公式,=if(iserror(vlookup公式),0,vlookup公式),或者if(iserror(vlookup公式),"",vlookup公式),视单元格需要而定。如果是汇总,一般是数值,应该取0而不是“”。
上传的附件
文件类型: rar 配置表.rar (2.3 KB, 9 次查看)

此帖于 2013-01-08 20:52:26 被 nh_wzg 编辑. .


平和精确简约应成为精品成员的三大基本要求!!!
nh_wzg
lee1892
 
lee1892 的头像
荣誉版主
 
资 料:
注册日期: Sep 2001
帖子: 1,572 声望值: 14
精华: 4,解答: 10
#2 旧 2012-10-10, 14:36:41 默认
lee1892 当前离线  

作个例表附件上来...


行行复行行...人生路漫长...
白梦留
 
白梦留 的头像
热心会员
 
资 料:
注册日期: Feb 2002
帖子: 2,989 声望值: 4
精华: 0,解答: 1
#3 旧 2012-10-10, 19:51:15 默认
白梦留 当前离线  

hlookup?


天地之不可泯灭者,惟其理之正也!藏之于心,散于事情,虽或晦而未彰,抑而未扬,然是理之于人心自有隐然而不可诬者。是故伸屈有时而不同荣辱既久而自判。昔日之辱未必不为今日之荣;今日之屈未必不基后日之伸也。
nh_wzg
 
nh_wzg 的头像
核心会员
 
资 料:
注册日期: Jul 2000
帖子: 3,174 声望值: 3
精华: 5,解答: 9
#4 旧 2012-10-11, 08:12:32 默认
nh_wzg 当前离线  

引用:
作者: 白梦留 查看帖子
hlookup?
vlookup/hlookup在一一对应的场合适用,一对多的场合,不适用。
baomai
 
baomai 的头像
待认证激活
 
资 料:
注册日期: Feb 2002
帖子: 397 声望值: 2
精华: 0,解答: 12
#5 旧 2012-10-11, 09:06:08 默认
baomai 当前离线  

如果现实中的数据像你提供的表一样,那你在“明细表”给每个配置先设定一个合计数,然后在“汇总表”用VLOOKUP查找就得了啊。

又如果你的表并非如此,而是一个单纯二维表(即每一行都包含:配置X、配件Y、单价这几个元素),那就只能用SUMIF函数,将相同配置的SUM出来。


(@
: O
(@
baomai
 
baomai 的头像
待认证激活
 
资 料:
注册日期: Feb 2002
帖子: 397 声望值: 2
精华: 0,解答: 12
#6 旧 2012-10-11, 09:07:22 默认
baomai 当前离线  

BTW:数据源的格式很重要的,决定了后期汇总统计的计算难度,如果不科学,请先整理好。
nh_wzg
 
nh_wzg 的头像
核心会员
 
资 料:
注册日期: Jul 2000
帖子: 3,174 声望值: 3
精华: 5,解答: 9
#7 旧 2012-10-11, 09:28:28 默认
nh_wzg 当前离线  

引用:
作者: baomai 查看帖子
如果现实中的数据像你提供的表一样,那你在“明细表”给每个配置先设定一个合计数,然后在“汇总表”用VLOOKUP查找就得了啊。

又如果你的表并非如此,而是一个单纯二维表(即每一行都包含:配置X、配件Y、单价这几个元素),那就只能用SUMIF函数,将相同配置的SUM出来。
我明白用SUMIF实际就是在明细表的每行配件记录上面增加了一个对应PC配置的属性,然后根据这个条件进行成本汇总。

但除了成本的汇总,我还需要所有元件的汇总列表,这个现在我是明细中记录一个一个地复制到一个表中再汇总,与“配置表”数量与配置规格没有联动的,配置表中的变化,要手工反映到最后的汇总中,非常不灵活,而且容易出错。

还是哪个一分多的处理。
baomai
 
baomai 的头像
待认证激活
 
资 料:
注册日期: Feb 2002
帖子: 397 声望值: 2
精华: 0,解答: 12
#8 旧 2012-10-11, 09:44:56 默认
baomai 当前离线  

这样的话,你最好用数据透视表了,你可以同一个数据源设定若干个数据透视表,根据自己的喜好设定你分类汇总的标准,当然,前提就是你有一个完整的二维列表
nh_wzg
 
nh_wzg 的头像
核心会员
 
资 料:
注册日期: Jul 2000
帖子: 3,174 声望值: 3
精华: 5,解答: 9
#9 旧 2012-11-06, 08:54:02 默认
nh_wzg 当前离线  

对于这种总分一,现在暂时觉得最自然的处理方式还是学习一下sqlite3 + gui-tools,查询列表后导出EXCEL中进行格式控制与打印。

这样EXCEL就会变成收集数据的格式统一工具,与输出数据的格式控制与打印工具。

对用户要求有一定的数据库操作能力。
lee1892
 
lee1892 的头像
荣誉版主
 
资 料:
注册日期: Sep 2001
帖子: 1,572 声望值: 14
精华: 4,解答: 10
#10 旧 2012-11-14, 09:44:53 默认
lee1892 当前离线  

引用:
作者: nh_wzg 查看帖子
对于这种总分一,现在暂时觉得最自然的处理方式还是学习一下sqlite3 + gui-tools,查询列表后导出EXCEL中进行格式控制与打印。

这样EXCEL就会变成收集数据的格式统一工具,与输出数据的格式控制与打印工具。

对用户要求有一定的数据库操作能力。
数据量小的情况下,比如1万个,Excel+VBA完全能够胜任
数据量大的情况下,比如数百万个,直接上正经数据库了

你推荐的倒是可有可无的吧
nh_wzg
 
nh_wzg 的头像
核心会员
 
资 料:
注册日期: Jul 2000
帖子: 3,174 声望值: 3
精华: 5,解答: 9
#11 旧 2012-11-14, 12:04:04 默认
nh_wzg 当前离线  

谢谢版主的指点!

因为原来在工作中大量处理数据(主要是非规则列表数据的收集、汇总、归一)的机会不多,所以以往对EXCEL也只能用到普通小量处理的情况,对于VBA不作深入,然后发现用数据透视表等的数据处理方式与SQLITE类小型数据库的相比,不够自然。

现在的工作环境下面:EXCEL负责前端的非规则数据收集/统一格式,然后导入SQLITE数据库,用TKSQLITE一类支持REGEXP正则匹配的客户端进行表间列数据的匹配处理,非常的自然而方便,没有理解与操作数据透视表的不便。数据解构匹配完成,再输出一下到EXCEL中进行打印输出,这个倒是EXCEL的强项。

佩服版主的VBA功力,我们这些菜鸟用户,尽量还是什么方便用什么。

BTW:
现在这个SQLITE数据库的数据格式定义真是对用户太友善了,完全没有了以往MYSQL类数据库对列数据类型的严格限制。所以在现在的条件下面,可作为学习数据库知识与操作的基础平台。主要不方便的是没有一个对中文比较友善的客户端,因为SQLITE内部全部UTF-8编码化,没有对中文比较友善的客户端,普通用户导入导出数据库中的数据不方便。

此帖于 2012-11-14 12:12:23 被 nh_wzg 编辑. .
发表新主题 关闭主题

主题工具

论坛规则  发帖规则
不可以发表主题
不可以回复帖子
不可以上传附件
不可以编辑自己的帖子
论坛启用 vB 代码
版面启用 表情符号
版面启用 [IMG] 代码
版面禁用 HTML 代码


所有时间均为北京时间, 现在的时间是 17:17:33.

本论坛带宽由迅通网络提供
SSL证书由TrustAsia提供

Copyright © 2000 - 2019 ClassiClub Forum All Rights Reserved.
粤ICP备09123456号