共 11 篇文章
显示摘要每页显示  条
VBA常用小代码303:用字典处理多条件查询问题。对于VBA来说,处理这样的问题总是有一个固定的套路,确定条件关系后,将明细数据循环装入字典,其中明细表的条件作为关键字(Key),需要查询的结果作为条目(Item),最后遍历查询表,根据提取相应的结果。s = brr(i, 1) &''''''''@''''...
把姓名写入key,因为结果需要保留重复姓名所以肯定不能直接把姓名写入key,如果能把姓名和星期合并起来写入key,把上班时间写入item,这样就不会有重复了。Dim d As Object, arr1, arr2, i%, j%, xx, n%.For i = 1 To UBound(arr1)d(arr1(i, 1) &'','' &arr2(1, j)) = Array(arr1(i, j 1)) ''把名字和星期合并...
d(arr(i, 1)) = Array(arr(i, 2), arr(i, 3), arr(i, 4))红色部分是把商品信息写入字典,我们可以看到利用数组的写法,可以把数组arr中的几个元素合并起来写进item中去,这样上面的难点就迎刃而解了。Dim d As Object, arr, i%, n%, arr1, m, o, A, B.d(arr(n, 1)) = Array(arr(n, 2), arr(n, 3), arr(n, 4))arr1 = d(arr(i, 1))d(arr(i, 1)) =...
思路:把姓名写入字典,如果字典中不存在该key,那就直接把该key写进去,item值为1,如果字典中存在该key,那就把字典中该key对应的值加1,这样得到的字典的kesy就是不重复的名字,items就是每个名字对应的加班次数。d(arr(i, 1)) = d(arr(i, 1)) 1.Dim d As Object, arr, rng, i.思路:把姓名和加班时间写入字典,遇到重复的就把字典中该key对...
字典应用实例三(每行都要去重复值)有的同学可能会想到,数据选项里有删除重复项,删除重复项只能针对一列数据,所以先要把每行数据转置成列,删除重复项,然后再转置。下面我们看下用字典如何实现每行去重复的效果呢?Dim arr1, arr2(1 To 17), i%, m%, d As Object.arr1 = Range(''''''''b2:r7''&#...
字典应用实例二(多表求不重复值)想要把上海、江苏、浙江、福建四个分公司的产品数据进行去重复并汇总到产品表中。Dim d As Object, sh As Worksheet, arr, i%.For Each sh In Worksheets.arr = sh.Range(''''''''a2'''''''', sh.[a2].怎么都出不来结果,按F8检查的过程中才...
把A、B两列的姓名和拜访时间先写入数组arr,然后把数组中的每个元素写入字典,因为字典不允许有重复的key,所以当遇到重复的姓名时,直接跳过,继续写入下一条,这样得到的字典中的项目对就是我们想要的结果。Add arr(i, 1), arr(i, 2)Transpose(d.keys)这里用到的是字典写入技巧中第二种办法,修改key对应的item值,如果字典中存在该key,那就...
VBA中字典的写入技巧!前面章节讲了字典的基本概念,调用方法以及字典的6个方法和4个属性,那在实际应用字典之前,我们总该了解下字典的写入技巧。Dim d As Object, arr, i%, arr1.arr1 = d.keys.Item(arr(i, 1)) = ''''''''''''''''Item(arr(i, 1)) = ''''&...
VBA中字典的属性和方法(二),收藏篇!上节我们讲了字典的六个方法,今天我们讲下字典的四个属性。d.comparemode = 1表示字典中的关键字是不区分大小写的,d.comparemode = 0表示字典中的关键字是区分大小写的。如上图,若d.comparemode = 1,则新增关键字''''''''a''''''''...
VBA中字典的属性和方法(一),收藏篇!上节课我们介绍了字典的基本概念及其调用方法,本节课我们讲解一下字典的属性和方法。''''''''第一:keys,注意字典中第一个key值默认起始位置为0,所以s.keys(0)为第一个key。以及keys和items方法,值得注意的是,keys和items中的第一种方法只能用于前期绑定法,直接创...
帮助 | 留言交流 | 联系我们 | 服务条款 | 下载网文摘手 | 下载手机客户端
北京六智信息技术股份有限公司 Copyright© 2005-2024 360doc.com , All Rights Reserved
京ICP证090625号 京ICP备05038915号 京网文[2016]6433-853号 京公网安备11010502030377号
返回
顶部