八、VBA 排序 ,Range Sort
对数据透视表、单元格区域或活动区域(如果指定区域仅包含一个单元格)进行排序。
expression.Sort(Key1, Order1, Key2, Type, Order2, Key3, Order3, Header, OrderCustom, MatchCase, Orientation, SortMethod, DataOption1, DataOption2, DataOption3)
expression 必需。该表达式返回“应用于”列表中的对象之一。如 Range("A2:B2000")
Key1 Variant 类型,可选。第一个排序字段,可为文本(数据透视表字段或区域名)或者为 Range对象 (例如,“Dept”或Cells(1, 1)
)。
Order1 XlSortOrder 类型,可选。在 Key1 中指定的字段或区域的排序顺序。
XlSortOrder 可为以下 XlSortOrder 常量之一。 |
xlDescending 对 Key1 按降序排序。 |
xlAscending 默认值。对 Key1 按升序排序。 |
Key2 Variant 类型,可选。第二个排序字段,可为文本(数据透视表字段或区域名)或者为 Range对象。如果省略本参数,则没有第二个排序字段。对数据透视表进行排序时,不能使用本参数。
Type Variant 类型,可选。指定要排序的元素。仅在对数据透视表排序时才使用本参数。
XlSortType 可为以下 XlSortType 常量之一。 |
xlSortLabels 按标签对数据透视表排序。 |
xlSortValues 按值对数据透视表排序。 |
Order2 XlSortOrder 类型,可选。在 Key2 中指定的字段或区域的排序顺序。对数据透视表进行排序时,不能使用本参数。
XlSortOrder 可为以下 XlSortOrder 常量之一。 |
xlDescending 对 Key2 按降序排序。 |
xlAscending 默认值。对 Key2 按升序排序。 |
Key3 Variant 类型,可选。第三个排序字段,为文本(区域名)或者为 Range对象。如果省略本参数,则没有第三个排序字段。对数据透视表进行排序时,不能使用本参数。
Order3 XlSortOrder 类型,可选。在 Key3 中指定的字段或区域的排序顺序。对数据透视表进行排序时,不能使用本参数。
XlSortOrder 可为以下 XlSortOrder 常量之一。 |
xlDescending 对 Key3 按降序排序。 |
xlAscending 默认值。对 Key3 按升序排序。 |
Header XlYesNoGuess 类型,可选。指定第一行是否包含标题。对数据透视表进行排序时,不能使用本参数。
XlYesNoGuess 可为以下 XlYesNoGuess 常量之一。 |
xlGuess 由 Microsoft Excel 确定是否有标题,如果有,确定标题位于何处。 |
xlContinuous 默认值。(应对整个区域进行排序)。 |
xlYes (不应对整个区域进行排序)。 |
OrderCustom Variant 类型,可选。本参数是从 1 开始的整数,指定了在自定义排序顺序列表中的索引号。如果省略 OrderCustom参数,则使用常规排序。
MatchCase Variant 类型,可选。如果为 True,则进行区分大小写的排序;如果为 False,则排序时不区分大小写。对数据透视表进行排序时,不能使用本参数。
Orientation XlSortOrientation 类型,可选。排序方向。
XlSortOrientation 可为以下 XlSortOrientation 常量之一。 |
xlSortRows 默认值。按行排序。 |
xlSortColumns 按列排序。 |
SortMethod XlSortMethod 类型,可选。排序类型。对于所选择或安装的不同语言支持(例如:美国英语),以上某些常量可能不可用。
XlSortMethod 可为以下 XlSortMethod 常量之一。 |
xlStroke 按每个字符的笔划数量排序。 |
xlPinYin 默认值。按字符的汉语拼音顺序排序。 |
DataOption1 XlSortDataOption 类型,可选。指定如何对 key 1 中的文本进行排序。对数据透视表进行排序时,不能使用本参数。
XlSortDataOption 可为以下 XlSortDataOption 常量之一。 |
xlSortTextAsNumbers 将文本作为数字型数据排序。 |
xlSortNormal 默认值。分别对数字和文本数据进行排序。 |
DataOption2 XlSortDataOption 类型,可选。指定如何对 key 2 中的文本进行排序。对数据透视表进行排序时,不能使用本参数。
XlSortDataOption 可为以下 XlSortDataOption 常量之一。 |
xlSortTextAsNumbers 将文本作为数字型数据排序。 |
xlSortNormal 默认值。分别对数字和文本数据进行排序。 |
DataOption3 XlSortDataOption 类型,可选。指定如何对 key 3 中的文本进行排序。对数据透视表进行排序时,不能使用本参数。
XlSortDataOption 可为以下 XlSortDataOption 常量之一。 |
xlSortTextAsNumbers 将文本作为数字型数据排序。 |
xlSortNormal 默认值。分别对数字和文本数据进行排序。 |
说明
对于特定的工作表,每次使用本方法时,将保存对 Header、Order1、Order2、Order3、OrderCustom 和 Orientation 的设置。如果在下次调用本方法时不指定这些参数的值,则会使用这些保存的值。如果不使用这些保存的值,在每次使用 Sort方法时请明确设置这些参数的值。
不能转换为数字型数据的文本字符串按常规排序。
注意 如果使用 Sort方法时没有定义参数,则 Microsoft Excel 会对所选定的要排序的区域按升序排序。
Excel VBA教程:Sort方法·示例
本示例对工作表 Sheet1 上的单元格区域 A1:C20 进行排序,用单元格 A1 作为第一排序关键字,用单元格 B1 作为第二排序关键字。排序是按行以升序进行的,没有标题。本示例假定单元格区域 A1:C20 有数据存在。
Sub SortRange1()
Worksheets("Sheet1").Range("A1:C20").Sort _ Key1:=Worksheets("Sheet1").Range("A1"), _ Key2:=Worksheets("Sheet1").Range("B1")
End Sub
本示例对工作表 Sheet1 上包含单元格 A1 的区域(活动区域)进行排序,按第一列中的数据进行排序,并且自动使用标题行(如果存在)。本示例假定活动区域(包含单元格 A1)中有数据存在。Sort方法将自动确定活动区域。
Sub SortRange2()
Worksheets("Sheet1").Range("A1").Sort _ Key1:=Worksheets("Sheet1").Columns("A"), _ Header:=xlGuess
End Sub
在 A2 到 B2000 的 范围内,对 B2到B2000,进行倒序
Sheets("Sheet3").Range("A2:B2000").Sort key1:=Range("B2:B2000"), Order1:=xlDescending
九、VBA 调用 excel 自带函数
WorksheetFunction.Sum(Range())
相关推荐
Day1-跟着孙兴华学习Excel VBA 第二季
这篇“Excel VBA学习笔记”涵盖了多个关键知识点,下面将对这些内容进行详细讲解。 一、VBA基础 1. **环境介绍**:VBA开发环境包括VBE(Visual Basic Editor)编辑器,它提供了代码编辑器、项目浏览器、对象浏览器...
第二部分可能深入到VBA的高级主题,如错误处理(On Error)、事件处理程序(当特定事件发生时自动执行的代码)、对象模型(如Workbook、Worksheet、Range等对象)以及数组和集合的使用。这些高级概念将使你能够编写...
"VBA学习指南" 本教程旨在为CAD二次开发提供VBA教程,教程详细介绍了VBA的基础知识和实践应用,为CAD开发者提供了有价值的参考。 什么是Autocad VBA? Autocad VBA(Visual Basic for Applications)是一种功能...
### VBA学习基础知识点 #### 一、VBA概述 **1.1 VBA是什么** - **定义**:VBA(Visual Basic for Applications)是一种基于Visual Basic编程语言的子集,用于实现Microsoft Office等应用程序的自动化操作。它使得...
学习VBA二维数组重定义时,建议配合实践项目,如模拟数据处理、报表生成等,这样能更好地理解并运用这些知识。通过观看`VBA二维数组重定义.flv`这个视频教程,可以深入理解并掌握这一主题,同时结合实际编程练习,将...
总的来说,通过学习这个AutoCAD VBA二次开发教程,用户不仅能掌握编程基础知识,还能具备在AutoCAD环境中实现自定义功能的技能,从而提高工作效率,减少重复劳动,为专业设计工作带来显著的便利。无论是初学者还是有...
### VBA学习资料知识点概述 #### 一、VBA简介 - **VBA**(Visual Basic for Applications)是一种由微软开发的事件驱动编程语言,它作为Microsoft Office套件中的一个组成部分,广泛应用于Excel、Word等Office应用...
标题中的“VBA学习软件”指的是旨在帮助用户学习和掌握Visual Basic for Applications(VBA)的应用软件。VBA是一种编程语言,广泛应用于Microsoft Office等应用程序的宏编程和自定义自动化。该软件以免费的形式提供...
### VBA的学习总结 在VBA(Visual Basic for Applications)的学习过程中,基础知识和基本概念是构建高级应用的基石。本文将围绕如何使用VBA生成无重复无空值的数据有效性下拉列表这一主题展开,同时也涉及到了VBA...
VBA高级开发指南是一份专门针对有经验的VBA学习者的资源,旨在深入探索VBA的各种特性和应用。 一、VBA基础 在VBA中,你需要了解基本的编程概念,如变量、常量、数据类型(如Integer、String、Double等)、运算符和...
在"CATIA VBA二次开发入门与提高"的学习过程中,你将接触到以下几个关键知识点: 1. **VBA环境设置**:学习如何在CATIA中启用和配置VBA编辑器,以及创建和管理宏项目。 2. **对象模型探索**:理解CATIA的对象层次...
VBA学习笔记本(二)——两个表格数据匹配_DEMO 将excel中两个工作表中,数据进行一键同步的通用方法
**GIS 二次开发:ArcGIS VBA 入门指南** GIS(Geographic Information System,地理信息系统)二次开发是利用GIS软件提供的开发工具和技术,自定义功能、创建应用程序或解决特定地理问题的过程。在这个领域,ArcGIS...
本资料集旨在提供从入门到精通的EXCEL VBA学习精华,帮助用户深入理解和掌握这一强大的工具。 一、VBA基础 在开始VBA编程之前,首先需要了解基本概念,如变量、常量、数据类型(如Integer、Double、String等)、...
学习和掌握AutoCAD的VBA二次开发技术,不仅可以提升个人工作效率,还能为企业带来显著的竞争优势。VBA与AutoCAD的结合,使得设计者能够根据实际需求定制工具,简化工作流程,提高生产力。因此,对于AutoCAD用户尤其...
### VBA学习笔记关键知识点详解 #### 一、工作簿管理与操作 VBA(Visual Basic for Applications)是Microsoft Office套件中的一种编程语言,特别适用于自动化Excel、Word等应用程序的任务。以下是从“VBA自己学习...
### Word VBA 学习交流资料关键知识点解析 #### 一、Word VBA 对象模型 **1.1 Application对象** - **定义**: `Application` 是 Word 应用程序的顶级对象,它提供了对 Word 环境的访问点。 - **作用**: 通过 `...