我们今天分享的内容是使用VBA代码实现多条件查询的功能。如下图所示,表名为“明细表”的数据是明细数据。再如下图所示,表名为“查询表”的数据是需要查询的数据。现在我们需要根据查询表的姓名和课目两个条件,在明细表中查询相关的成绩。对于VBA来说,处理这样的问题总是有一个固定的套路,确定条件关系后,将明细数据循环装入字典,其中明细表的条件作为关键字(Key),需要查询的结果作为条目(Item),最后遍历            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-06-05 14:42:53
                            
                                138阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            _______________________________大家好,今日继续和大家分享VBA编程中常用的常用“积木”过程案例。这些内容是我的经验的记录,来源于我多年的经验。分享成果,随喜正能量,把这些代码块作为一块块的积木,平时积累,用时拿来修正、组合,是一种编程的思路。最近代码多是出自第三套教程”VBA数组与字典解决方案”。今日分享的是第293期。Sub mynzsz_59()
 Dimran            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-09-11 11:47:01
                            
                                58阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            我的目标:让中国的大学生走出校门的那一刻就已经具备这些Office技能,让职场人士能高效使用Office为其服务。支持鹏哥,也为自己加油!VBA数组部分已经讲完了,前几天正好看到有群友提问的一道题目:要求:把左边的数据格式转化成右边的数据格式。没学VBA之前,我们会怎么解决呢?方法一:第一步:先把数据整理下,把姓名整理到一列,整理用的引用技巧也很值得学习。第二步:把公式去掉,多余的姓名列删除,进行            
                
         
            
            
            
            01 应用场景场景:碰到一个Excel表,大概有50万行的数据,手头有差不多1万个待查询的信息,需要到50万行数据中去匹配。用了Excel自带的vlookup,大概要等5分钟才能将1万行的数据匹配好。根据每个人使用电脑的不同,耗时可能有些出入。但更多的时候,我们要查询数据往往超过1万行,而Excel的支持就不那么友好了。02 介绍今天我来介绍下VBA的秘密武器——字典。可能跟想象的不太一样,一本字            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-09-29 08:55:03
                            
                                347阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
              VBA的对象是有很多共性的,抛开它们所在层次的不同,它们的很多操作特征是一样的,比如它们都包括子对象集合,都包括某些激活操作,删除操作等等。像简单的Activate,Delete,Cut类似的操作我就不详细说了。下面我先总结一下这些共性中出镜率最多的类型:Collection,然后分析一下与之类似的两种常用类型,总结它们的不同。选择集合的时候,要充分考虑它们的特性和实际的问题,采用合适的集合解            
                
         
            
            
            
            主程序:Sub mymain()
    Dim MainArr, t
    Application.ScreenUpdating = False
    t = timer
    With ThisWorkbook.Worksheets("排序")
        MainArr = .Range("a2: a" & Cells(Rows.Count, "a").End(xlUp).            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-10-12 16:38:42
                            
                                59阅读
                            
                                                                             
                 
                
                             
         
            
            
            
             最近工作中学到了很多东西,目前用得最多是的VB 2008,但是这个以后有空慢慢写东西总结归纳。这里先发一帖记录下Excel VBA中最重要最常用的一些概念和语句,都是前段时间刚刚学了就用的。  常用对象、Application、Workbook、Worksheet、Range几个基本对象的层次概念:Application -> Workbook -> W            
                
         
            
            
            
            VBA与宏 ======   刚开始的内容听起来很枯燥,请大家不要分心,耐着性子看下去,兴趣总是慢慢积累的。 ------------------------------------------------------------------------------        1、亲自动手,录制一段属于自己的宏   提到VBA,相信很多人想到的就是宏,但            
                
         
            
            
            
            excelperfect本文详细讲解Dictionary对象的一些基本操作。添加字典元素使用Add方法,添加字典元素项。其语法为:字典对象.Add Key, ItemAdd方法有两个参数。参数Key指定字典元素项的键值,参数Item指定字典元素项的值。如下面的代码:Sub testAddItem()
    Dim dict As Object
    Set dict =CreateObject            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-04-09 13:31:37
                            
                                851阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            我们先来说说应用背景:下面这样一个数据表我们要对B列的数据在A列中遍历查找符合条件1-4的后进行判断,来看C到F列符不符合条件,如果符合的话,就能在相应的位置写“OK”。注:点击下面蓝字可以跳转我们用之前学过的find方法可以实现。我们用之前学过的遍历方法可以实现。但是,如果数据特别多的话,几万条数据的遍历或者find,首先,遍历B列是一定得有的了,得在这个遍历中再嵌套A列的遍历,使得代码的执行效            
                
         
            
            
            
            大家好,今日我们继续讲解VBA数组与字典解决方案,今日讲解第61讲内容:利用字典,将只出现一次的数据提取出来.字典可以应用于有很多的实际工作场景,可以利用的方法也很多.最为基本的要注意理解键和键值的概念,注意理解Keys 和items 本身就是数组,是一个一维数组,这非常关键。可能在概念讲解的时候大家很清晰,但是实战中就会有所迷茫,所以我在各种实际场景的模拟中尽可能的会结合常见理解中一些误区给大家            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-10-01 09:40:52
                            
                                68阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            对sheet 进行保护:Sub 保护()
 Dim Sh As Worksheet
 For Each Sh In Worksheets
 Sh.Protect
 '加密码123
 Sh.Protect "123"Next
 MsgBox "OK"
 End SubSub 撤销保护()
 Dim Sh As Worksheet
 For Each Sh In Worksheets
 Sh.Unpr            
                
         
            
            
            
            最朴树的find例子:Range("G4") = Range("B:B").Find(Range("G3")).Row解释:  Range(“B:B”)表示要查找的位置在第B列  Find(Range(“G3”))表示要查找G3单元格中的值  Row返回查找到的位置的行数工作表函数Match例子Range("A1") = application.WorksheetFunction.Match(Ra            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-10-18 14:32:52
                            
                                87阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            大家好,今日我们继续讲解VBA数组与字典解决方案,今日讲解第53讲:提取字典ITEM值的方案比较.任何一个对象的引入都有其自身的特点,我们在应用的时候要根据这种对象自身的特点和实际需要灵活运用。今日要给大家讲解的是ITEM值提取问题,ITEM在一些资料中称为键值,有些资料称为项,我们要记住它是和KEY成对出现的,所有KEY组成了KEYS,所有ITEM组成了ITEMS,KEYS和ITE            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-06-19 07:34:51
                            
                                1050阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            游戏中很多配置文件都采用Excel保存数据。但实际使用时,可能需要对Excel数据再处理成我们需要的格式。基于此需求,学习了Excel的VBA来导出数据到文件中。开启VBAExcel中的开发工具默认都没有打开,此处需要百度一下如何打开对应版本的Excel。(注:高版本的开发工具需要专业版或商业版才能使用,最好不要使用过高版本,最低office excel 2007版)宏设置 Excel默认禁用所有            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-07-08 10:27:35
                            
                                62阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            看到这个标题,相信读者肯定非常不屑的任务我在故弄玄虚,客官莫急,我说说你听听,肯定会有新故事。字典对象是VBA中常用的对象之一,对于这种这种对象通常用两种绑定方式:前期绑定和后期绑定。 前期绑定需要在VBE中先引用相关扩展库,前期绑定的优势在于书写代码时可以智能提升相关属性和方法。 后期绑定使用CreateObject函数创建相关对象,后期绑定的优势在于,代码发布给用户后,用户无需引用相关扩展库,            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-03-21 11:07:04
                            
                                619阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            用VBA录制的查找,我想知道括号里面第一个逗号后面的各参数是真么作用?Cells.Find(What:="41.2",   After:=ActiveCell,   LookIn:=xlValues,   LookAt:=   _                   &            
                
         
            
            
            
            数组和字典也是VBA的常用到数据类型之一。但是我翻了有四五本VBA教程相关的书,里面都没有介绍到字典,数组到是在介绍数据类型时有介绍,而并没有提到字典。事实上,字典不是VBA内置的类型,它是Windows脚本语言的。但其实字典在VBA中也是非常重要的,它非常适用于需要进行非重复性数据的操作。我多次需要使用到字典,但很少用到数组。1. 数组如果有学过其它编程语言,应该对数组不陌生。其实数组就是多个变            
                
         
            
            
            
            字典的索引(keys)不能重复,常用字典来去重,字典是一个二维数组,其中keys不重复,每个keys对应一个值(item),值可以重复。vba中常用字典代替vlookup。'字典学习
 
'声明本模块中默认的比较方式,只能是text或者binary;如果不声明的的话,默认为二进制比较,但是对VBA字典中的比较方式没有影响。。
'Option Compare Text    '文本比较,不区分大小写            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-02-27 11:38:34
                            
                                180阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            Hi ,大家好,上一期介绍了VBA中集合的简单应用,了解到集合相对于数组,更适用于事先无法预知要保存多少数据项的情况,因为集合可以任意的添加删除数据项,没有数据项个数限制。但是我们也可以看到,集合在访问数据项的时候也有一些限制,常用的是通过索引号来访问数据项,但是如果这中间发生了数据项的删除或者添加,则索引号所对应的数据项就会发生变化,如果有些情况下没有注意到这种变化,则获取到的数据项可能不是预先            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-03-21 09:23:57
                            
                                443阅读
                            
                                                                             
                 
                
                                
                    