大家好,今日我们继续讲解数组与字典解决方案,今日讲解第47讲:利用字典和数组,实现按指定规则的排序。随着字典讲解的深入,我们发现字典真的很神奇,在VBA代码中,给人以十分清爽的感觉,在这套数组与字典解决方案中,我会尽可能的把经常用到的实例多多讲解给大家,让大家对于字典的理解更加深入.虽然这块内容利用其它方案都可以实现,但是字典确实能大大简化我们的代码.让我们对于VBA的理解更深入.今日实例是实现按
转载
2024-04-24 21:12:22
449阅读
问题提出:实际上自己感觉用处不是很大,非得需要将工作表进行排序吗?只要能访问不就可以吗?但既然提出来了,就看看吧,而且里面有个算法对我很有价值,就是排序算法,以前遇到需要排序的要求,心里就害怕,这次就借着这个问题,把它解决吧.Sub 工作表按升序排序() Dim i As Integer, j As Integer, n As Integer &n
转载
2024-03-22 21:07:12
241阅读
'1,VBA注释 'A,Rem 第一种注释方式(只能用于行收) 'B,'单引号为第二种注释方式 '例如: Rem 定义一个字符串变量 Dim wksName As String WksName = ActiveSheet.Name'获取当前活动的工作表名
原创
2011-09-17 11:59:07
1777阅读
'1,IF判断 Sub IfElseIfDemo() Dim Age As Integer Sheets("Sheet1").Select
原创
2011-09-17 19:59:10
1402阅读
目录使用 Do...Loop 语句直到条件为 True 时重复语句直到条件变成 True 才重复语句从循环内退出 Do...Loop 语句使用 For...Next 语句使用 For Each...Next 语句对某范围的单元格做循环在完成前退出 For Each...Next 循环使用 Do...Loop 语句可以使用 Do...Loop 语句去运行语句的块,而它所用掉的时间是不确定的。当条件为
转载
2024-06-03 22:50:16
631阅读
VBA语句集
(第1辑)
定制模块行为
(1) Option Explicit '强制对模块内所有变量进行声明
Option Private Module '标记模块为私有,仅对同一工程中其它模块有用,在宏对话框中不显示
Option Compare Text '字符串不区分大小写
Option Base 1 '指定数组的第一个下标为1
(2) On Error
转载
2012-07-24 21:55:40
935阅读
GoTo 语句无条件地转移到过程中指定的行。语法GoTo line必要的 line 参数可以是任意的行标签或行号。说明GoTo 只能跳到它所在过程中的行。注意 太多的 GoTo 语句,会使程序代码不容易阅读及调试。尽可能使用结构化控制语句(Do...Loop、For...Next、If...Then...Else、Select Case)。GoTo 语句示例本示例使用 GoTo 语句在一个过程内的
转载
2024-07-12 10:45:24
61阅读
vba基础知识汇总
1.工作簿事件写到THISWORKBOOK中,工作表事件写到sheet中,其他通用代码和函数子程序之类的写到模块中,窗体代码写到对应的窗体中,类相关的代码写到类模块中。2.If 句法,if 有两种写法,单行和块结构。 1、If 条件 Then 符合条件后的语句 2、If  
转载
2024-04-01 17:04:10
295阅读
系列列表前言在本系列的上一节已经介绍了如何读写 excel 数据,并快速进行汇总处理。但有些小伙伴看完之后有些疑惑:那只是简单读写数据而已,但有时候我需要设置 excel 的格式。我用透视表不用写代码,两三下也可以弄出结果来。今天,我就沿用上一节的数据,把需求升级一下,以解决上述的疑点。本文要点:使用 xlwings ,设置单元格格式使用 pandas 快速做高难度分组操作注意:虽然本文是"Pyt
转载
2024-05-31 09:37:58
69阅读
Sub 项目状态查询()'如果“项目状态”是未转运营那么实施状态是不能选择的,因为还没有实施。
'如果“项目状态”选择状态后,那么项目名称里面只显示该状态的项目名称。如果“项目状态”选择的不是未转运营,那么“实施状态”也要选择,并确定项目名称的选项。
'如果“统计值”是项目数,那么标题行就是客户角色。如果是实施时长,标题行就是实施的时间。
lst = Range("a1048576").End(x
转载
2024-02-23 12:36:49
234阅读
1. 赋值语句Variable = expression2. 循环语句a. For...Next语句(在指定次数的情况下进行重复操作)b. For Each ...Next语句(用于遍历集合中的每个元素重复元素,执行重复操作)c. Do...Loop语句(不知道循环次数时使用起来事半功倍(反之,可使用For...Next或For Each ...Next语句)) c1. D
转载
2023-06-27 17:39:55
307阅读
主程序: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阅读
'
'Date: 2012/05/04
'Author: xi wei cheng
'
'Option Explicit
Public Sub SqlInsert()
Dim flg As Boolean
flg = Worksheets("SQL-Tool&
原创
2012-05-10 09:24:33
3114阅读
今天有朋友留言反映,API改版后巨潮资讯爬虫失效了。之前正好更新了Kotlin版本的爬虫,由于各种语言实现的底层原理完全一致,移植到VBA也绝非难事。借此机会正好向大家具体展示 VBA爬虫的底层工具链以及VBA语言本身的魅力。问题分析改版之后巨潮资讯放弃了之前的服务器后台渲染的做法,采用可扩展性更好的JSON作为数据传递的媒介。简单抓包 response 返回的JSON字
转载
2024-07-08 07:16:33
127阅读
工作表内单元格数据的排序,使用Range.Sort 命令。但是后面的参数较多,新人一般采用录制宏时出来一大堆,也不知道该如何编辑。因此,我开这一个帖子,给新人普及一下:Range("待排序数据区域").Sort(Key1, Order1, Key2, Type, Order2, Key3, Order3, Header, O
转载
2024-02-13 13:26:19
266阅读
循环语句是很多人开始使用VBA的理由,因为在批量处理大量数据的多条件判断时,函数已经没办法满足我们的需求了。而VBA可以使用简单的循环完成这一工作。循环语句 1.For...Next语句 在上一篇我们介绍判断语句的时候,就使用了For..Next的循环语句,在这里简单的讲一下。 案例中循环语句的意义是,设置n=1到6的循环,每次循环分别在F2到
转载
2024-06-10 00:36:52
334阅读
Hi ,大家好,上一期介绍了VBA中集合的简单应用,了解到集合相对于数组,更适用于事先无法预知要保存多少数据项的情况,因为集合可以任意的添加删除数据项,没有数据项个数限制。但是我们也可以看到,集合在访问数据项的时候也有一些限制,常用的是通过索引号来访问数据项,但是如果这中间发生了数据项的删除或者添加,则索引号所对应的数据项就会发生变化,如果有些情况下没有注意到这种变化,则获取到的数据项可能不是预先
转载
2024-03-21 09:23:57
443阅读
未知的领域很广、风景很美,不要蜷缩在一小块自认为天堂的世界里。待到暮年时安于自欺欺人,要努力提高自己,学习是一件很辛苦的事。要有一颗充满生机的心,把握现在,这才是进取。机会总在等待中出现,越是有意义的事情,困难会越多。愿力决定始终,智慧决定成败。寻找心灵的平静;不管遇到什么,都是风景。怀善心,做善事。看淡纷争,看轻得失。茶,满也好,少也好,不要计较;浓也好,淡也好,其中自有值得品的味
VBA是现在可用的最容易学习、最容易使用同时也是最复杂的应用程序自动化语言(过去常常称为宏语言)之一。VBA语言的基础认识第一节:标识符一、定义标识符是一种标识变量、常量、过程、函数、类等语言构成单位的符号,利用它可以完成对变量、常量、过程、函数、类等引用。二、命名规则(1)字母打头,由字母、数字和下划线组成,如A987b_23Abc(2)字符长度小于40,(Excel2002以上中文版本等,可以
转载
2024-06-11 06:02:06
346阅读
小爬之前的文章 【Excel VBA中写SQL,这些问题你一定为此头痛过】中详细讨论了一些常见的VBA 中使用SQL遇到的问题,这里再补充两个常见的问题场景及对应的解决方案,希望你们看了后能够思路开阔些,少走些弯路。一、数据源Excel文件的工作表有些列的列名相同 我们知道,在商业数据库中创建表时,同一个表名下是不允许创建相同的字段的,且字段名要遵从一定规范。但在Excel文件中则无此限制,
转载
2024-07-25 14:13:15
246阅读