ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

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

[函数公式] 多个结果合并到一个单元格 【 微积分+1】

  [复制链接]

TA的精华主题

TA的得分主题

发表于 2014-8-12 10:47 | 显示全部楼层 |阅读模式
本帖最后由 祝洪忠- 于 2014-8-19 08:19 编辑

如何将相同条件的多个结果合并在一个单元格内。
第一个公式:=IF(A2=A1,C1&","&B2,B2)
第二个公式:=LOOKUP(1,0/(D2=$A$1:$A$15),$C$1:$C$15)
练手附件: LOOKUP之合并数据.rar (4.05 KB, 下载次数: 982)
微博发布地址:http://weibo.com/1341556070/BiXIKjmRP
GIF:
LOOKUP合并多个结果.gif.gif





该贴已经同步到 看见星光的微博



评分

5

查看全部评分

TA的精华主题

TA的得分主题

发表于 2014-8-14 22:31 | 显示全部楼层
这个得试试,公式闪的太快,没有反应过来……

TA的精华主题

TA的得分主题

发表于 2014-8-14 22:39 | 显示全部楼层
公式一:=IF(A2=A1,C1&","&B2,B2)
公式二:=LOOKUP(1,0/($A$2:$A$15=D2),$C$2:$C$15)
A列必须将同一班的放在一起,否则会出错……
换句话说,如果第一列的各班没有排序整理在一起的话,可有解决办法?

TA的精华主题

TA的得分主题

发表于 2014-8-14 22:41 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
  问题具体如下图:
   1.jpg

TA的精华主题

TA的得分主题

 楼主| 发表于 2014-8-14 22:43 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
aoe1981 发表于 2014-8-14 22:41
  问题具体如下图:
  

这个方式是要求班级先排序的。如果班级不排序,合并名字,简单的方法还是用自定义函数contxt啦。

TA的精华主题

TA的得分主题

发表于 2014-8-14 22:55 | 显示全部楼层
看见星光 发表于 2014-8-14 22:43
这个方式是要求班级先排序的。如果班级不排序,合并名字,简单的方法还是用自定义函数contxt啦。

这个“自定义函数contxt”没有听说过,是Excel类似加载项里的,还是谁谁谁编写的?

TA的精华主题

TA的得分主题

 楼主| 发表于 2014-8-15 09:05 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
aoe1981 发表于 2014-8-14 22:55
这个“自定义函数contxt”没有听说过,是Excel类似加载项里的,还是谁谁谁编写的?

是常用的几个自定义函数之一,自定义函数啊,哥,你这月VB拿了4点技术分啊!! LOOKUP之合并数据.rar (9.05 KB, 下载次数: 331)

评分

2

查看全部评分

TA的精华主题

TA的得分主题

发表于 2014-8-15 18:19 | 显示全部楼层
本帖最后由 aoe1981 于 2014-8-15 20:51 编辑
看见星光 发表于 2014-8-15 09:05
是常用的几个自定义函数之一,自定义函数啊,哥,你这月VB拿了4点技术分啊!!

我这4点技术分啊,估计有这几个原因:
1.持续钻在了一点;
2.花了很长时间;
3.受到了睿智的香川和法师的帮助,碰到了一个感兴趣的好问题,并得到了适当的附件;
4.版主大人可怜我的坚持与所花的时间,并且给予大度的鼓励!!!
其实,我的VBA知识还是很不全面的,一些基础性的视频我也是亟须看看学习的……
多谢您的指点!

TA的精华主题

TA的得分主题

发表于 2014-8-15 21:15 | 显示全部楼层
  不好意思,帖一下您附件中的自定义函数的代码,擅自做了注,因为还不是完全了解,看了这段代码,才发觉,我以前写的所谓“自定义函数”都是幼儿园水平的……
  1. Public Function ConTxt(ParamArray args() As Variant) As Variant    '联结文本
  2. Dim tmptext As Variant, i As Variant, cellv As Variant
  3. Dim cell As Range
  4. tmptext = "" '连接字串变量初始化,无参数时返回该值
  5. For i = 0 To UBound(args) '遍历各参数取值并连接
  6.     If Not IsMissing(args(i)) Then '貌似检测参数是否传递,但是还是不太明白
  7.         Select Case TypeName(args(i)) '检测参数类型,根据不同类型选择不同处理
  8.             Case "Range" '针对单元格区域类型的参数
  9.                 For Each cell In args(i)
  10.                     tmptext = tmptext & cell
  11.                 Next cell
  12.             Case "Variant()" '试了下,参数为嵌套公式运算得到的结果时,在这儿连接
  13.                 For Each cellv In args(i)
  14.                     tmptext = tmptext & cellv
  15.                 Next cellv
  16.             Case Else '试了下,参数为直接输入的数字、文本时,在这儿连接
  17.                 tmptext = tmptext & args(i)
  18.         End Select
  19.     End If
  20. Next i
  21. ConTxt = tmptext
  22. End Function
复制代码

TA的精华主题

TA的得分主题

发表于 2014-8-15 21:17 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
本帖最后由 aoe1981 于 2014-8-15 21:25 编辑

  以及您在附件中的引用方法:
  1. =contxt(IF(D2=$A$2:$A$15,$B$2:$B$15&",",""))
复制代码
  注意到,这个自定义函数不是易失性函数,按F9键刷新不会引发自动重算……
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

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

GMT+8, 2024-12-25 02:44 , Processed in 0.039773 second(s), 12 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

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

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

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