EXCEL vba 求数字c两个集合的交集集

数字集合表格
用VBA自定义函数吧,使用方便按ALT+F11 打开代码窗口,在左边的格(工程资源管理器)内,右键,插入,模块,将下面的代码复制到右边窗口内(模块1的代码窗口),-----------Public Function iJH(iRng1 As Range,iRng2 As Range) As StringApplicat
就是看含有1的有多少个,即数集中已经有1,还需要从2,3,4,5,6中选出3个数,共有C(5,3)=5*4*3/(1*2*3)=10即1共出现10次.
“黑客_阻击手”:这叫三阶幻方第一行:+6、-15、0第二行:-9、-3、+3第三行:-6、+9、-12以上每行每列对角的和均为负9填幻方都有一定的规律,把1(或最小的数)放在第一行正中; 按以下规律排列剩下的n2-1个数:1)每一个数放在前一个数的右上一格; 2)如果这个数所要放的格已经超出了顶行那么就把它放在底行,
做文本框,这样可以随便把文本框放到任何位置,只要设该框的填充色为无色,边框为无色,即可.
以下VBA代码可以在Excel表格的A列返回结果,共3840行Sub qiuhe()f = 1For a = 1 To 11For b = 1 To 11For c = 1 To 11For d = 1 To 11For e = 1 To 11If a + b + c + d + e = 29 And a b And
表格2的A3输入:=点表格1中A3,回车.或=SHEET1!A3回车
假设数据在A列,选该列——菜单栏——格式——条件格式——公式:=COUNTIF(A$1:A1,A1)>1点“格式”——图案——选“颜色”——确定. 再问: 谢谢回答! 还有个问题是,我希望知道与哪一行的数字重复了,也就是说,希望被重复的数字也有提示,怎么弄? 再答: 也行,公式改为:=COUNTIF(A:A,A1)>1
定光标在C1,用这个函数:=IF(B1=A1,"",B1)回车,向下拖拉.所有相同的就不会显示了数据/筛选/在C列的下拉箭头下选择除空白外的其它所有/可以进行个修改你的数据了.改完之后.取消筛选/全部就OK了.
这个需求,貌似用公式是无法完成的,只有用VBA编程的帮你做了一个,你在A列试试输入你的数据楼主补充又补充,才10分悬赏,大家都是在15分钟里回答你的,如果被采纳,百度倒能奖励20分.可是,你不追问,通过补充的方式,大家就只能【完善回答】,这样,回答时间就被更新了.即便被采纳,奖励也木有了.给了你附件,你也不看看,枉费知
应该和”数据-分列“没有关系.操作如下:选择数据单元格→鼠标右键→设置单元格格式→选择”数字“标签页下面的”文本“,单击确定按钮.这时单元格并没有变化,双击单元格让单元格处于编辑状态,什么也不用改直接回车即可.这时发现单元格数字已经全部变为文本数字了.就这么简单,
最大的数字集合:复数集复数集分为:实数集和虚数集实数集分为:代数数集合和超越数集合代数数集分为:有理数集和代数无理数集代数无理数集加上超越数集合称无理数集有理数集分为:整数集和小数集整数集分为:正整数集和零和负整数集正整数集合加上零合称自然数集或者非负整数集正整数集分为:素数集和合数集整数集还可以分为:奇数集和偶数集以
右键——点击下侧的状态栏——选择求和.
=counta(a:a)
个位数是7,为3的倍数,那可能的只有2+7 = 95+7 = 128+7 = 15被3整除的有 27,57,87个位数是7本身为7的倍数,因此十位数为7的倍数则可被7整除因此被7整除的有 77两位数字集合为 27,57,77,87
选中这些单元格,数据有效性,(2010版以上是数据验证)允许 序列来源的输入 1,1.5,2,2.5,3确定即可 再问: 怎么用公式,函数来表示??? 再答: 公式函数不能约束单元格值的内容或者范围。 从名字上你就应该能理解才对。数据有效性, 指定有效范围,在这个有效范围的才能输入。
数集是数字的集合(可以简单的理解为X轴的数字集合)点集是点的集合(可以理解为XY轴横纵坐标交叉形成的点的集合)是两个不同的概念 再问: 一个点集可不可以看成一个元素?还有我上面写的一道题你还没有解答呢? 再答: 此题XYZ属于N说明都是自然数,这种题用代值法(答案不多时用,此题符合) 当X=0时有(1)Y=0 Z =2
4 7 8 1 6 41 5 1 9 5 94 1 9 6 2 8 5 2 7 6 8 27 8 3 3 6 3 9 7 2 5 3 4确实很难.
零售业对于零售的理解如下: 一、零售是变化 零售业无时无刻不在变化,变化是绝对的,不变是相对的.零售业随着经济的发展而发展,而相应的调整也要“与时俱进”,包括业态的、商品结构的,组织架构的等等,只有在变化中零售业才能发展,否则只能被市场竞争的巨浪而掀翻. 二、零售是方便 零售业是最大限度地为消费者提供方便.这种方便要体
不知道你具体指的是什么 ? 各种代码又很多种 html css javascript asp php jsp等.我想你需要的是一些基础,我贴个HTML 代码标签好了. 批注 ...普通卷动 ...滑动 ...预设卷动 ...来回卷动 ...向下卷动 ...向上卷动 向右卷动 向左卷动 ...卷动次数 ...设定宽度 .我要文库申报
查看: 4921|回复: 4
如何统计两列有重复数据的交集、并集、差集?
积分学习力
魅力值 影响力
消费券 Ti币好友
在线时间 小时
最后登录月度优秀 次管理次数 次
网站名称: Excel技巧网 | Excel专家栖息谷 | 微软中文技术社区合作伙伴站内采编:
署名作者: 天南地北
版权声明: 版权归本站与作者共有 除本站官方外非作者本人转载须经许可并注明出处
适用版本: 07&2003以前版本&
语言环境: 简体中文
学习方法: 掌握Excel技巧的关键是动手操作
下载 ≠ 知识
免费注册成为本站会员,享用更多功能,结识更多Office办公高手!
才可以下载或查看,没有帐号?
Q:如何统计两列有重复数据的交集、并集、差集?
A、B两列数据存在重复和空值情形,有要求统计A-B(A列有B列没有的),B-A(B列有A列没有的),A∩B(AB列都有的称为交集),A∪B(A或者B列有的称为并集)复制代码A:可以通过如下字典嵌套数组实现
Sub 差集交集并集_天南地北()& & 'F列输出满后再向G列输出的,但F列到 F65525 就向G列输出了?
& & On Error Resume Next
& & Dim arr, ar, i&, x&, y&, r&, k&, Crr1
& & t = Timer
& & Application.ScreenUpdating = False
& & Range(&C2:G& & Rows.Count).ClearContents
& & arr = Range(&A2:A& & Cells(Rows.Count, 1).End(3).Row)
& & ar = Range(&B2:B& & Cells(Rows.Count, 2).End(3).Row)
& & ReDim CRR(1 To UBound(arr) + UBound(ar), 0 To 3)
& & Set dic = CreateObject(&scripting.dictionary&)
& & Set d = CreateObject(&scripting.dictionary&)
& & For i = 1 To UBound(arr)
& && &&&dic(arr(i, 1)) = i
& && &&&d(arr(i, 1)) = &&
& && &&&CRR(i, 3) = arr(i, 1)& &&&'记入brr,合成部分
& & Next
& & For i = 1 To UBound(ar)
& && &&&If dic.exists(ar(i, 1)) Then
& && && && &y = y + 1
& && && && &CRR(y, 2) = ar(i, 1)& & '记入crr,AB共有
& && && && &d.Remove (ar(i, 1))& &&&'记入D,删除B在A的数,A有B没有部分
& && &&&Else
& && && && &x = x + 1
& && && && &dic(ar(i, 1)) = UBound(arr) + x
& && && && &CRR(UBound(arr) + x, 3) = ar(i, 1)&&'记入brr,合成部分
& && && && &CRR(x, 1) = ar(i, 1)& && && && && &'记入crr,B有A没有
& && &&&End If
& & Next
& & r = UBound(arr) + x
& & For Each ky In d.keys& &'遍历所有keys,放入数crr(i,0)中A有B没有部分
& && &&&J = J + 1
& && &&&CRR(J, 0) = ky
& & Next
& & d.RemoveAll
& & ReDim Crr1(1 To r, 1 To 5)
& & For J = 0 To 3
& && &&&Set d = CreateObject(&scripting.dictionary&)
& && &&&n = 0
& && &&&For i = 1 To r
& && && && &If CRR(i, J) && && Then
& && && && && & If Not d.exists(CRR(i, J)) Then
& && && && && && &&&n = n + 1
& && && && && && &&&d(CRR(i, J)) = n
& && && && && && &&&Crr1(n, J + 1) = CRR(i, J)
& && && && && & End If
& && && && &End If
& && &&&Next i
& & Next J
& & Erase CRR
& & r = n
& & If n & Rows.Count - 1 Then
& && &&&r = Rows.Count - 1
& && &&&col = 5
& && &&&For i = Rows.Count To n
& && && && &k = k + 1
& && && && &Crr1(k, 5) = Crr1(i, 4)
& && &&&Next i
& & End If
& &
& & Range(&C2&).Resize(r, col) = Crr1
& & Application.ScreenUpdating = True
& & MsgBox Format(Timer - t, &0.000秒&)
End Sub
23:02 上传
点击文件名下载附件
下载积分: 消费券 -5 Ti币
586.49 KB, 下载次数: 74, 下载积分: 消费券 -5 Ti币
学office,哪能不关注全网最大的Office类微博(新浪)
新鲜人, 积分 1, 距离下一级还需 9 积分
积分学习力
魅力值 影响力
消费券 Ti币好友
在线时间 小时
最后登录月度优秀 次
附件下载下来,宏运行不了,能修复一下吗,找了这个好久
学office,哪能不关注全网最大的Office类微博(新浪)
初级二, 积分 143, 距离下一级还需 107 积分
积分学习力
魅力值 影响力
消费券 Ti币好友
在线时间 小时
最后登录月度优秀 次
& && & 我也将附件下载下来运行试试,宏是运行不了,显示(可能是因为该宏在此工资薄中不可用,或者所有的宏都被禁用),但是我设置的宏是可以运行的,运行其他宏也是正常的,劳驾给看看是什么问题,谢谢
学office,哪能不关注全网最大的Office类微博(新浪)
初级二, 积分 143, 距离下一级还需 107 积分
积分学习力
魅力值 影响力
消费券 Ti币好友
在线时间 小时
最后登录月度优秀 次
我的也是,求您在假期有时间给看看是什么问题。谢谢
学office,哪能不关注全网最大的Office类微博(新浪)
初级二, 积分 143, 距离下一级还需 107 积分
积分学习力
魅力值 影响力
消费券 Ti币好友
在线时间 小时
最后登录月度优秀 次
我的也是,求您在假期有时间给看看是什么问题。谢谢
学office,哪能不关注全网最大的Office类微博(新浪)
Excel技巧网的会员探讨问题仅代表其个人意见,与网站的立场无关。任何违反国家和地方相关法律法规的言论,本站有义务协助政府相关部门追究发言者的责任!
本站中非注明转载文章与案例的版权为作者与Excel技巧网共有。若非原文作者,本站之外任何单位或个人未经允许,不得将其用于商业用途。
若非原文作者,任何形式的非商业性转载必须获得Excel技巧网或作者允许,并注明作者和出处。
会员发表的帖子如涉及版权纠纷,须自行负责。详情请参考注册时的网站服务条款。
本站特聘法律顾问:沈学律师
Powered by我要文库申报
查看: 7941|回复: 9
如何利用字典编写求两个数组的交集、并集和差集的函数?
积分学习力
魅力值 影响力
消费券 Ti币好友
在线时间 小时
最后登录月度优秀 次管理次数 次
网站名称: Excel技巧网 | Excel专家栖息谷 | 微软中文技术社区合作伙伴
署名作者: amulee
版权声明: 版权归本站与作者共有 除本站官方外非作者本人转载须经许可并注明出处
适用版本: 2010&
语言环境: 简体中文
学习方法: 掌握Excel技巧的关键是动手操作
下载 ≠ 知识
免费注册成为本站会员,享用更多功能,结识更多Office办公高手!
才可以下载或查看,没有帐号?
Q:如何利用字典编写求两个数组的交集、并集和差集的函数?
A:参考以下代码:
1、求交集Function JiaoJi(ByVal Arr1, ByVal Arr2) '½&¼&
& & Dim d, d1, Temp
& & Set d = CreateObject(&Scripting.Dictionary&)
& & Set d1 = CreateObject(&Scripting.Dictionary&)
& & For Each Temp In Arr1
& && &&&d1(Temp) = 1
& & Next
& & For Each Temp In Arr2
& && &&&If d1.exists(Temp) Then d(Temp) = 1
& & Next
& & JiaoJi = d.keys
End Function复制代码2、求并集Function BingJi(ByVal Arr1, ByVal Arr2) '²&¼&
& & Dim d, Temp
& & Set d = CreateObject(&Scripting.Dictionary&)
& & For Each Temp In Arr1
& && &&&d(Temp) = 1
& & Next
& & For Each Temp In Arr2
& && &&&d(Temp) = 1
& & Next
& & BingJi = d.keys
End Function复制代码3、求差集。所谓Arr1和Arr2差集,就是属于Arr1却不属于Arr2的数据集合:Function ChaJi(ByVal Arr1, ByVal Arr2) 'Arr1与Arr2差集。属于Arr1却不属于Arr2的集合
& & Dim d, d1, Temp
& & Set d = CreateObject(&Scripting.Dictionary&)
& & Set d1 = CreateObject(&Scripting.Dictionary&)
& & For Each Temp In Arr2
& && &&&d1(Temp) = 1
& & Next
& & For Each Temp In Arr1
& && &&&If Not d1.exists(Temp) Then d(Temp) = 1
& & Next
& & ChaJi = d.keys
End Function复制代码
(13.91 KB, 下载次数: 193)
10:50 上传
点击文件名下载附件
如何利用字典编写求两个数组的交集、并集和差集的函数?
小弟我刚想找这个,谢谢了
学office,哪能不关注全网最大的Office类微博(新浪)
积分学习力
魅力值 影响力
消费券 Ti币好友
在线时间 小时
最后登录月度优秀 次管理次数 次
都可以用REMOVE方法的吧。
比如交集:
Function JiaoJi(ByVal Arr1, ByVal Arr2) '½&¼&
& & Dim d, d1, Temp
& & Set d1 = CreateObject(&Scripting.Dictionary&)
& & For Each Temp In Arr1
& && &&&d1(Temp) = 1
& & Next
& & For Each Temp In Arr2
& && &&&If not d1.exists(Temp) Then d1.remove temp
& & Next
& & JiaoJi = d1.keys
End Function
复制代码
谢谢补充:)
学office,哪能不关注全网最大的Office类微博(新浪)
初级一, 积分 7, 距离下一级还需 43 积分
积分学习力
魅力值 影响力
消费券 Ti币好友
在线时间 小时
最后登录月度优秀 次
xue xi aaaaaaaa
学office,哪能不关注全网最大的Office类微博(新浪)
初级一, 积分 12, 距离下一级还需 38 积分
积分学习力
魅力值 影响力
消费券 Ti币好友
在线时间 小时
最后登录月度优秀 次
謝謝提供學習下載中
学office,哪能不关注全网最大的Office类微博(新浪)
初级一, 积分 10, 距离下一级还需 40 积分
积分学习力
魅力值 影响力
消费券 Ti币好友
在线时间 小时
最后登录月度优秀 次
老师,如果我要想找5个数组间的相互关系呢,也就是他们的交集,并集,差集。
我现在的问题是想找到这个5个数组间全部数据去掉重复项的数据,这如何实现呢,是不是可以用字典来编写呢
学office,哪能不关注全网最大的Office类微博(新浪)
新鲜人, 积分 0, 距离下一级还需 10 积分
积分学习力
魅力值 影响力
消费券 Ti币好友
在线时间 小时
最后登录月度优秀 次
学到一手,非常好!
学office,哪能不关注全网最大的Office类微博(新浪)
新鲜人, 积分 1, 距离下一级还需 9 积分
积分学习力
魅力值 影响力
消费券 Ti币好友
在线时间 小时
最后登录月度优秀 次
Remove好,少定义个字典
学office,哪能不关注全网最大的Office类微博(新浪)
初级一, 积分 14, 距离下一级还需 36 积分
积分学习力
魅力值 影响力
消费券 Ti币好友
在线时间 小时
最后登录月度优秀 次
学office,哪能不关注全网最大的Office类微博(新浪)
新鲜人, 积分 4, 距离下一级还需 6 积分
积分学习力
魅力值 影响力
消费券 Ti币好友
在线时间 小时
最后登录月度优秀 次
学office,哪能不关注全网最大的Office类微博(新浪)
新鲜人, 积分 8, 距离下一级还需 2 积分
积分学习力
魅力值 影响力
消费券 Ti币好友
在线时间 小时
最后登录月度优秀 次
感谢,非常不错,学习了。
学office,哪能不关注全网最大的Office类微博(新浪)
Excel技巧网的会员探讨问题仅代表其个人意见,与网站的立场无关。任何违反国家和地方相关法律法规的言论,本站有义务协助政府相关部门追究发言者的责任!
本站中非注明转载文章与案例的版权为作者与Excel技巧网共有。若非原文作者,本站之外任何单位或个人未经允许,不得将其用于商业用途。
若非原文作者,任何形式的非商业性转载必须获得Excel技巧网或作者允许,并注明作者和出处。
会员发表的帖子如涉及版权纠纷,须自行负责。详情请参考注册时的网站服务条款。
本站特聘法律顾问:沈学律师
Powered by查看: 1460|回复: 13
2个表格求交集
阅读权限10
在线时间 小时
各位高手好,帮忙写一个将2个表格的号码求交集。找出相同的号码 ,将结果输出在交集表格里面,谢谢。&&急用& &坐等& & 详细见附件& &
17:27 上传
点击文件名下载附件
492.96 KB, 下载次数: 17
阅读权限95
在线时间 小时
建议在附件里做示例解释需求,
具体没有看懂,帮顶吧
阅读权限10
在线时间 小时
liulang0808 发表于
建议在附件里做示例解释需求,
具体没有看懂,帮顶吧
你好 ,就是找出表1&&表2的& &相同号码& &&&,让显示在交集那个表格 里面,&&以后表1表2填入号码后,交集表格自动计算显示出交集的号码是那几个。
18:11 上传
点击文件名下载附件
494.01 KB, 下载次数: 28
阅读权限10
在线时间 小时
╰☆鎏曐音乐 发表于
你好 ,就是找出表1&&表2的& &相同号码& &&&,让显示在交集那个表格 里面,&&以后表1表2填入号码后,交集 ...
表1& & 表2的&&号码有重复,帮忙看下,谢谢
阅读权限95
在线时间 小时
Sub 按钮1_Click()
& & Application.ScreenUpdating = False
& & Set sh = Sheets(&交集结果&)
& & Set sh1 = Sheets(&表1&)
& & Set sh2 = Sheets(&表2&)
& & arr1 = sh1.UsedRange
& & arr2 = sh2.UsedRange
& & For j = 15 To UBound(arr1)
& && &&&a = 2
& && &&&For i = 2 To UBound(arr1, 2)
& && && && &If Len(arr1(j, i)) & 0 Then
& && && && && & If WorksheetFunction.CountIf(sh2.Rows(j), arr1(j, i)) & 0 Then
& && && && && && &&&If WorksheetFunction.CountIf(sh.Rows(j), arr1(j, i)) = 0 Then
& && && && && && && && &sh.Cells(j, a) = arr1(j, i)
& && && && && && && && &a = a + 1
& && && && && && &&&End If
& && && && && & End If
& && && && &End If
& && &&&Next i
& & Next j
& & Application.ScreenUpdating = True
阅读权限95
在线时间 小时
具体见附件内容,,,,
阅读权限10
在线时间 小时
liulang0808 发表于
具体见附件内容,,,,
如何使用啊& & 老师& &帮过做好& &发我下& & 谢谢
你把代码拷贝进去,直接运行就可以了&
阅读权限95
在线时间 小时
字典+数组法请参考:Sub Macro1()
& & Dim arr, brr(), m&, i&, d As Object, ds As Object
& & Set d = CreateObject(&scripting.dictionary&)
& & Set ds = CreateObject(&scripting.dictionary&)
& & arr = Sheets(&表1&).Range(&a3:a& & Sheets(&表1&).Cells(Rows.Count, 1).End(xlUp).Row)
& & For i = 1 To UBound(arr)
& && &&&d(arr(i, 1)) = &&
& & Next
& & arr = Sheets(&表2&).Range(&a3:a& & Sheets(&表2&).Cells(Rows.Count, 1).End(xlUp).Row)
& & ReDim brr(1 To UBound(arr), 1 To 1)
& & For i = 1 To UBound(arr)
& && &&&If d.Exists(arr(i, 1)) Then
& && && && &If Not ds.Exists(arr(i, 1)) Then
& && && && && & m = m + 1
& && && && && & ds(arr(i, 1)) = &&
& && && && && & brr(m, 1) = arr(i, 1)
& && && && &End If
& && &&&End If
& & Next
& & With Sheets(&交集结果&)
& && &&&.[a1].CurrentRegion.Offset(2).ClearContents
& && &&&If m & 0 Then .[a3].Resize(m) = brr
& & End With
End Sub复制代码
阅读权限95
在线时间 小时
& & & & & & & &
请测试附件
(226.67 KB, 下载次数: 60)
19:04 上传
点击文件名下载附件
阅读权限10
在线时间 小时
zhaogang1960 发表于
请测试附件
我随便填了几天测试了下& & 点击交集& &什么都没有
最新热点 /1
ExcelHome每周都有线上直播公开课,
国内一流讲师真身分享,高手贴身答疑,
赶不上直播还能看录像,
关键居然是免费的!
厚木哥们都已经这么努力了,
你还好意思说学不好Office。
玩命加载中,请稍候
玩命加载中,请稍候
Powered by
本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任! & & 本站特聘法律顾问:徐怀玉律师 李志群律师

我要回帖

更多关于 c两个集合的交集 的文章

 

随机推荐