[给新手]在VBA中使用Excel工作表函数

[给新手]在VBA中使用Excel工作表函数
[给新手]在VBA中使用Excel工作表函数

[给新手]在VBA中使用Excel工作表函数

很多朋友不知道怎样在VBA中使用工作表函数,在这里把Excel帮助中的相关内容贴出,希望对新手有所帮助

相关内容可以在VBE模式中按F1帮助中搜索“工作表函数”得到

其实我们在用VBA时很多不明白的东西在VBA帮助里都有一些详细的说明,在遇到困难时希望先看看帮助!

请参阅示例特性

在Visual Basic 语句中可以使用大多数Microsoft Excel 工作表函数。若要查看可以使用的工作表函数列表,请参阅Visual Basic 可使用的工作表函数列表。

注意一些工作表函数在Visual Basic 中是不实用的。例如:Concatenate 函数就不实用,因为在 Visual Basic 中可使用& 运算符来连接多个文本值。

从Visual Basic 中调用工作表函数

在Visual Basic 中,通过WorksheetFunction 对象可使用Microsoft Excel 工作表函数。

以下Sub 过程使用Min 工作表函数来决定在某个单元格区域中的最小值。首先,将变量myRange 声明为Range 对象,然后将其设置为Sheet1 上的A1:C10 单元格区域。指定另一个变量answer 为对myRange 应用Min 函数的结果。最后,answer 的值就被显示在消息框中。

Sub UseFunction()

Dim myRange As Range

Set myRange = Worksheets("Sheet1").Range("A1:C10")

answer = Application.WorksheetFunction.Min(myRange)

MsgBox answer

End Sub

如果您使用的工作表函数需要一个单元格区域引用作为参数,则必须指定一个Range 对象。例如:您可以用Match 工作表函数搜索单元格区域。可以在工作表单元格中输入公式,如“=MATCH(9,A1:A10,0)”。但是,您应在Visual Basic 过程中指定一个Range 对象来获取相同的结果。

Sub FindFirst()

myVar = Application.WorksheetFunction _

.Match(9, Worksheets(1).Range("A1:A10"), 0)

MsgBox myVar

End Sub

注意 Visual Basic 函数不使用WorksheetFunction 识别符。函数可能和Microsoft Excel 的函数同名但作用各异。例如:Application.WorksheetFunction.Log 和Log 将返回不同的值。

在单元格中插入工作表函数

若要在单元格中插入工作表函数,请指定函数作为相应的Range 对象的Formula 属性值。以下示例中,将RAND 工作表函数(可生成随机数)赋给了活动工作簿中Sheet1 上 A1:B3 单元格区域的Formula 属性。

Sub InsertFormula()

Worksheets("Sheet1").Range("A1:B3").Formula = "=R AND()"

End Sub

示例

本示例使用工作表函数Pmt 来计算住宅抵押贷款的支付额。请注意,本示例使用的是InputBox 方法,而不是InputBox 函数,因此该方法可以执行类型检查。Static 语句使Visual Basic 保留三个变量的值;当下次运行该程序时,这些变量将显示为默认值。

Static loanAmt

Static loanInt

Static loanTerm

loanAmt = Application.InputBox _

(Prompt:="Loan amount (100,000 for example)", _

Defaul t:=loanAmt, Type:=1)

loanInt = Application.InputBox _

(Prompt:="Annual interest rate (8.75 for example)", _

Defaul t:=loanInt, Type:=1)

loanTerm = Application.InputBox _

(Prompt:="Term in years (30 for example)", _

Defaul t:=loanTerm, Type:=1)

payment = Application.WorksheetFunction _

.Pmt(loanInt / 1200, loanTerm * 12, loanAmt)

MsgBox "Monthly payment is " & Format(payment, "Currency")

可用于Visual Basic 的工作表函数列表

A

Acos

Acosh

And

Asin

Asinh

Atan2

Atanh

AveDev Average

B BetaDist BetaInv BinomDist C

Ceiling ChiDist ChiInv ChiTest Choose Clean Combin Confidence Correl Cosh Count CountA CountBlank CountIf Covar

CritBinom D DAverage Days360 Db DCount DCountA Ddb Degrees DevSq DGet DMax DMin Dollar DProduct DStDev DStDevP DSum DVar DVarP

E

Even

ExponDist F

Fact

FDist

Find FindB FInv Fisher FisherInv Fixed Floor Forecast Frequency FTest

Fv

G GammaDist GammaInv GammaLn GeoMean Growth

H

HarMean HLookup HypGeomDist I

Irr

IsErr IsError IsLogical IsNA IsNonText IsNumber Ispmt IsText

J

K

Kurt

L

Large LinEst

Log

Log10 LogEst LogInv LogNormDist Lookup

M

Match

Max MDeterm Median

Min MInverse MIrr

MMult

Mode

N NegBinomDist NormDist NormInv NormSDist

NPer

Npv

O

Odd

Or

P Pearson Percentile PercentRank Permut Phonetic

Pi

Pmt Poisson Power Ppmt

Prob Product Proper

Pv

Q

R Radians Rank

Rate Replace ReplaceB Rept Roman Round RoundDown RoundUp RSq

RTD

S

Search SearchB Sinh

Skew

Sln

Slope Small

StDev StDevP StEyx Substitute Subtotal Sum SumIf SumProduct SumSq SumX2MY2 SumX2PY2 SumXMY2 Syd

T

Tanh

TDist

Text

TInv Transpose Trend

Trim

TTest

U USDollar V

Var VarP Vdb VLookup W Weekday Weibull

X

Y

Z ZTest

excelvba常见字典用法集锦及代码详解(全)

常见字典用法集锦及代码详解 前言 凡是上过学校的人都使用过字典,从新华字典、成语词典,到英汉字典以及各种各样数不胜数的专业字典,字典是上学必备的、经常查阅的工具书。有了它们,我们可以很方便的通过查找某个关键字,进而查到这个关键字的种种解释,非常快捷实用。 凡是上过EH论坛的想学习VBA里面字典用法的,几乎都看过研究过northwolves狼版主、oobird版主的有关字典的精华贴和经典代码。我也是从这里接触到和学习到字典的,在此,对他们表示深深的谢意,同时也对很多把字典用得出神入化的高手们致敬,从他们那里我们也学到了很多,也得到了提高。 字典对象只有4个属性和6个方法,相对其它的对象要简洁得多,而且容易理解使用方便,功能强大,运行速度非常快,效率极高。深受大家的喜爱。 本文希望通过对一些字典应用的典型实例的代码的详细解释来

给初次接触字典和想要进一步了解字典用法的朋友提供一点备查的参考资料,希望大家能喜欢。 给代码注释估计是大家都怕做的,因为往往是出力不讨好的,稍不留神或者自己确实理解得不对,还会贻误他人。所以下面的这些注释如果有不对或者不妥当的地方,请大家跟帖时指正批评,及时改正。 字典的简介 字典(Dictionary)对象是微软Windows脚本语言中的一个很有用的对象。 附带提一下,有名的正则表达式(RegExp)对象和能方便处理驱动器、文件夹和文件的(FileSystemObject)对象也是微软Windows脚本语言中的一份子。 字典对象相当于一种联合数组,它是由具有唯一性的关键字(Key)和它的项(Item)联合组成。就好像一本字典书一样,是

excelVBA常用函数

(1) Option Explicit '强制对模块内所有变量进行声明 Option Private Module '标记模块为私有,仅对同一工程中其它模块有用,在宏对话框中不显示 Option Compare Text '字符串不区分大小写 Option Base 1 '指定数组的第一个下标为1 (2) On Error Resume Next '忽略错误继续执行VBA代码,避免出现错误消息 (3) On Error GoTo ErrorHandler '当错误发生时跳转到过程中的某个位置 (4) On Error GoTo 0 '恢复正常的错误提示 (5) Application.DisplayAlerts=False '在程序执行过程中使出现的警告框不显示 (6) Application.ScreenUpdating=False '关闭屏幕刷新 Application.ScreenUpdating=True '打开屏幕刷新 (7) Application.Enable.CancelKey=xlDisabled '禁用Ctrl+Break中止宏运行的功能 工作簿 (8) Workbooks.Add() '创建一个新的工作簿 (9) Workbooks(“book1.xls”).Activate '激活名为book1的工作簿 (10) ThisWorkbook.Save '保存工作簿 (11) ThisWorkbook.close '关闭当前工作簿 (12) ActiveWorkbook.Sheets.Count '获取活动工作薄中工作表数 (13) https://www.360docs.net/doc/173179886.html, '返回活动工作薄的名称

EXCEL VBA 编程常用时间函数

时间函数 Now 返回一个Variant (Date),根据计算机系统设置的日期和时间来指定日期和时间。Date 返回包含系统日期的Variant (Date)。 Time 返回一个指明当前系统时间的Variant (Date)。 Timer 返回一个Single,代表从午夜开始到现在经过的秒数。 TimeSerial(hour, minute, second) 返回一个Variant (Date),包含具有具体时、分、秒的时间。DateDiff(interval, date1, date2[, firstdayofweek[, firstweekofyear]]) 返回Variant (Long) 的值,表示两个指定日期间的时间间隔数目 Second(time) 返回一个Variant (Integer),其值为0 到59 之间的整数,表示一分钟之中的某个秒 Minute(time) 返回一个Variant (Integer),其值为0 到59 之间的整数,表示一小时中的某分钟 Hour(time) 返回一个Variant (Integer),其值为0 到23 之间的整数,表示一天之中的某一钟点 Day(date) 返回一个Variant (Integer),其值为1 到31 之间的整数,表示一个月中的某一日 Month(date) 返回一个Variant (Integer),其值为1 到12 之间的整数,表示一年中的某月Year(date) 返回Variant (Integer),包含表示年份的整数。 Weekday(date, [firstdayofweek]) 返回一个Variant (Integer),包含一个整数,代表某个日期是星期几

Excel中的VBA内部函数有哪些

Excel中的VBA内部函数有哪些 一.测试函数 IsNumeric(x)‘是否为数字,返回Boolean结果,TrueorFalse IsDate(x)‘是否是日期,返回Boolean结果,TrueorFalse IsEmpty(x)‘是否为Empty,返回Boolean结果,TrueorFalse IsArray(x)‘指出变量是否为一个数组。 IsError(expression)‘指出表达式是否为一个错误值 IsNull(expression)‘指出表达式是否不包含任何有效数据(Null)。 IsObject(identifier)‘指出标识符是否表示对象变量 二.数学函数 Sin(X)、Cos(X)、Tan(X)、Atan(x)三角函数,单位为弧度 Log(x)返回x的自然对数 Exp(x)返回ex Abs(x)返回绝对值 Int(number)、Fix(number)都返回参数的整数部分,区别:Int 将-8.4转换成-9,而Fix将-8.4转换成-8 Sgn(number)返回一个Variant(Integer),指出参数的正负号 Sqr(number)返回一个Double,指定参数的平方根 VarType(varname)返回一个Integer,指出变量的子类型 Rnd(x)返回0-1之间的单精度数据,x为随机种子 三.字符串函数

Trim(string)去掉string左右两端空白 Ltrim(string)去掉string左端空白 Rtrim(string)去掉string右端空白 Len(string)计算string长度 Left(string,x)取string左段x个字符组成的字符串 Right(string,x)取string右段x个字符组成的字符串 Mid(string,start,x)取string从start位开始的x个字符组成的字符串 Ucase(string)转换为大写 Lcase(string)转换为小写 Space(x)返回x个空白的字符串 Asc(string)返回一个integer,代表字符串中首字母的字符代码 Chr(charcode)返回string,其中包含有与指定的字符代码相关的字符 四.转换函数 CBool(expression)转换为Boolean型 CByte(expression)转换为Byte型 CCur(expression)转换为Currency型 CDate(expression)转换为Date型 CDbl(expression)转换为Double型 CDec(expression)转换为Decemal型 CInt(expression)转换为Integer型

在Excel VBA中调用Excel自带函数

在Excel VBA中调用Excel自带函数-Excel VBA学习 2010-03-29 19:45:25| 分类: computer|字号订阅 最近在写一个VBA的程序,想自己生成一些报表.便遇到了在VBA中无法使用SUM函数.解决的方法如下: 前段时间为公司实验室编制测试数据库,其中遇到一个问题,怎样在VBA中使用Excel自带的一些函数呢?如min,max,average等等。 本以为能在Excel表格中直接使用的函数也能直接移植到VBA中,结果发现根本行不通,程序报错。后来通过多方查询发现,虽然不能直接引用,但是我们可以曲线救国,excel中表格可以用max函数,在VBA中也可以用,只需通过WorksheetFunction对象就可以引用,后面加函数名称,然后加range来引用单元格。举个例子: Application.WorksheetFunction.Max(range("A1:C5")) 下面就是能在VBA中使用excel自带函数: A__ Acos Acosh And Asin Asinh Atan2 Atanh AveDev Average B__ BetaDist BetaInv BinomDist C__ Ceiling ChiDist ChiInv ChiTest Choose Clean Combin Confidence Correl Cosh Count CountA CountBlank CountIf

Covar CritBinom D__ DAverage Days360 Db DCount DCountA Ddb Degrees DevSq DGet DMax DMin Dollar DProduct DStDev DStDevP DSum DVar DVarP E__ Even ExponDist F__ Fact FDist Find FindB FInv Fisher FisherInv Fixed Floor Forecast Frequency FTest Fv G__ GammaDist

vba常用代码大全

前言 我们平时在工作表单元格的公式中常常使用函数,Excel自带的常用的函数多达300多个,功能强大,丰富多彩,但是在VBA中不能直接应用,必须在函数名前面加上对象,比如:Application.WorksheetFunction.Sum(arg1,arg2,arg3)。 而能在VBA中直接应用的函数也有几十个,下面将逐一详细介绍常用的40个VBA函数,以供大家学习参考。 第1.1例 ASC函数 一、题目: 要求编写一段代码,运行后得到字符串”Excel”的首字母和”e”的ASCII值。 二、代码: Sub 示例_1_01() Dim myNum1%, myNum2% myNum1 = Asc("Excel") '返回69 myNum2 = Asc("e") '返回101 [a1] = "myNum1= ": [b1] = myNum1 [a2] = "myNum2= ": [b2] = myNum2 End Sub 三、代码详解 1、Sub 示例_1_01():宏程序的开始语句。 2、Dim myNum1%, myNum2%:变量myNum1和myNum2声明为整型变量。 也可以写为 Dim myNum1 As Integer 。Integer 变量存储为 16位(2 个字节)的数值形式,其范围为 -32,768 到 32,767 之间。Integer 的类型声明字符是百分比符 号 (%)。

3、myNum1 = Asc("Excel"):把Asc函数的值赋给变量myNum1。 Asc函数返回一个 Integer,代表字符串中首字母的字符的ASCII代码。 语法 Asc(string) 必要的 string(字符串)参数可以是任何有效的字符串表达式。如果 string 中没有包含任何字符,则会产生运行时错误。 4、myNum2 = Asc("e"):把Asc函数的值赋给变量myNum2。这里返回小写字母e 的ASCII代码101。 5、[a1] = "myNum1= ": [b1] = myNum1:把字符串“myNum1= “赋给A1单元格,把变量myNum1的值赋给B1单元格。 6、[a2] = "myNum2= ": [b2] = myNum2:把字符串“myNum2= “赋给A2单元格,把变量myNum2的值赋给B2单元格。 7、End Sub:程序的结束语句,和“Sub示例_1_01()”相对应。 第1.2例 Chr函数 一、题目"": 要求编写一段代码,运用Chr函数将ASCII值转换为对应的字符。 二、代码: Sub 示例_1_02() Dim myChar1$, myChar2$ myChar1 = Chr(69) ' 返回 E。 myChar2 = Chr(101) ' 返回 e。 [a1] = "myChar1= ": [b1] = myChar1 [a2] = "myChar2= ": [b2] = myChar2

Excel中最常用的300句VBA编程语句

最近研究了一下vba编程,主要是针对excel的,现在为了学习,特别从网上搜集了300句常用语句,以备不时之需,也留给网友,不方便的时候查询一下。 定制模块行为 (1) Option Explicit ‘强制对模块内所有变量进行声明 Option Private Module ‘标记模块为私有,仅对同一工程中其它模块有用,在宏对话框中不显示 Option Compare Text ‘字符串不区分大小写 Option Base 1 ‘指定数组的第一个下标为1 (2) On Error Resume Next ‘忽略错误继续执行VBA代码,避免出现错误消息 (3) On Error GoTo ErrorHandler ‘当错误发生时跳转到过程中的某个位置 (4) On Error GoTo 0 ‘恢复正常的错误提示 (5) Application.DisplayAlerts=False ‘在程序执行过程中使出现的警告框不显示 (6) Application.ScreenUpdating=False ‘关闭屏幕刷新 Application.ScreenUpdating=True ‘打开屏幕刷新 (7) Appli cation.Enable.CancelKey=xlDisabled ‘禁用Ctrl+Break中止宏运行的功能 工作簿 (8) Workbooks.Add() ‘创建一个新的工作簿 (9) Workbooks(“book1.xls”).Activate ‘激活名为book1的工作簿 (10) ThisWorkbook.Save ‘保存工作簿 (11) ThisWorkbook.close ‘关闭当前工作簿 (12) ActiveWorkbook.Sheets.Count ‘获取活动工作薄中工作表数 (13) https://www.360docs.net/doc/173179886.html, ‘返回活动工作薄的名称 (14) https://www.360docs.net/doc/173179886.html, ‘返回当前工作簿名称 ThisWorkbook.FullName ‘返回当前工作簿路径和名称 (15) ActiveWindow.EnableResize=False ‘禁止调整活动工作簿的大小 (16) Application.Window.Arrange xlArrangeStyleTiled ‘将工作簿以平铺方式排列 (17) ActiveWorkbook.WindowState=xlM aximized ‘将当前工作簿最大化 工作表 (18) https://www.360docs.net/doc/173179886.html,edRange.Rows.Count ‘当前工作表中已使用的行数 (19) Rows.Count ‘获取工作表的行数(注:考虑向前兼容性) (20) Sheets(Sheet1).Name= “Sum” ‘将Sheet1命名为Sum (21) ThisWorkbook.Sheets.Add Before:=Worksheets(1) ‘添加一个新工作表在第一工作表前 (22) ActiveSheet.Move After:=ActiveWorkbook. _ Sheets(ActiveWorkbook.Sheets.Count) ‘将当前工作表移至工作表的最后(23) Worksheets(Array(“sheet1”,”sheet2”)).Select ‘同时选择工作表1和工作表2 (24) Sheets(“sheet1”).Delete或Sheets(1).Delete ‘删除工作表1 (25) ActiveWorkbook.Sheets(i).Name ‘获取工作表i的名称 (26) ActiveWindow.DisplayGridlines=Not ActiveWindow.DisplayGridlines

VBA使用Excel工作表函数

在VBA如何使用Excel工作表函数 发布: | 作者: Microsoft | 来源: Microsoft | 查看: 5743次 摘自EXCEL帮助 在 Visual Basic 中使用 Microsoft Excel 工作表函数 在 Visual Basic 语句中可以使用大多数 Microsoft Excel 工作表函数。若要查看可以使用的工作表函数列表,请参阅可用于 Visual Basic 的工作表函数列表。 注释一些工作表函数在 Visual Basic 中是不实用的。例如:Concatenate 函数就不实用,因为在 Visual Basic 中可使用 & 运算符来连接多个文本值。 从 Visual Basic 中调用工作表函数 在 Visual Basic 中,通过 WorksheetFunction 对象可使 用 Microsoft Excel 工作表函数。 以下 Sub 过程使用 Min 工作表函数来决定在某个单元格区域中的最小值。首先,将变量 myRange 声明为 Range 对象,然后将其设置为 Sheet1 上 的 A1:C10 单元格区域。指定另一个变量 answer 为对 myRange 应用 Min 函数的结果。最后,answer 的值就被显示在消息框中。 Sub UseFunction() Dim myRange As Range Set myRange = Worksheets("Sheet1").Range("A1:C10") answer = Application.WorksheetFunction.Min(myRange) MsgBox answer End Sub 如果您使用的工作表函数需要一个单元格区域引用作为参数,则必须指定一 个 Range 对象。例如:您可以用 Match 工作表函数搜索单元格区域。可以在工作表单元格中输入公式,如“=MATCH(9,A1:A10,0)”。但是,您应 在 Visual Basic 过程中指定一个 Range 对象来获取相同的结果。

VBA中的CreateObject函数

Excel VBA之CreateObject 函数 先看一下下面的句子,体会一哈: Set d = CreateObject("") '建立字典对象变量d Set xlApp = CreateObject("") '建立Excel对象变量xlApp Set fso = CreateObject("") '建立文件系统对象变量fso CreateObject 函数创建并返回一个对 ActiveX 对象的引用。 语法 CreateObject(class,[servername]) CreateObject函数的语法有如下部分: class

说明 每个支持自动化的应用程序都至少提供一种对象类型。例如,一个字处理应用程序能会提供 Application对象,Document对象,以及 Toolbar对象。 要创建 ActiveX 对象,只需将 CreateObject返回的对象赋给一个对象变量:'声明一个对象变量来存放该对象 '的引用。Dim as Object 采用后期绑定方式。 Dim ExcelSheet As Object Set ExcelSheet = CreateObject("") 上述代码将启动该应用程序创建该对象,在本例中就是创建一个 Microsoft Excel 电子数据表。对象创建后,就可以在代码中使用自定义的对象变量来引用该对象。在下面的示例中,可以使用对象变量 ExcelSheet 来访问新建对象的属性和方法,以及访问Microsoft Excel 的其它对象,包括应用程序对象和单元格集合。 '设置 Application 对象使 Excel 可见 = True '在表格的第一个单元中写些文本 1).Value = "This is column A, row 1" '将该表格保存到C:\ 目录

常用VBA函数精选

常用VBA函数精选 前言 我们平时在工作表单元格的公式中常常使用函数,Excel自带的常用的函数多达300多个,功能强大,丰富多彩,但是在VBA中不能直接应用,必须在函数名前面加上对象,比如:Application.WorksheetFunction.Sum(arg1,arg2,arg3)。而能在VBA中直接应用的函数也有几十个,下面将逐一详细介绍常用的40个VBA函数,以供大家学习参考。 第1.1例ASC函数 一、题目: 要求编写一段代码,运行后得到字符串 ”Excel”的首字母和”e”的ASCII值。 二、代码: Sub 示例_1_01() Dim myNum1%, myNum2% myNum1 = Asc("Excel") '返回69 myNum2 = Asc("e") '返回101 [a1] = "myNum1= ": [b1] = myNum1 [a2] = "myNum2= ": [b2] = myNum2

End Sub 三、代码详解 1、Sub 示例_1_01():宏程序的开始语句。 2、Dim myNum1%, myNum2%:变量myNum1和myNum2声明为整型变量。 也可以写为Dim myNum1 As Integer 。Integer 变量存储为16位(2 个字节)的数值形式,其范围为-32,768 到32,767 之间。Integer 的类型声明字符是百分比符号(%)。 3、myNum1 = Asc("Excel"):把Asc函数的值赋给变量myNum1。 Asc函数返回一个Integer,代表字符串中首字母的字符的ASCII代码。 语法 Asc(string) 必要的string(字符串)参数可以是任何有效的字符串表达式。如果string 中没有包含任何字符,则会产生运行时错误。 4、myNum2 = Asc("e"):把Asc函数的值赋给变量myNum2。这里返回小写字母e的ASCII代码101。 5、[a1] = "myNum1= ": [b1] = myNum1:把字符串 “myNum1= “赋给A1单元格,把变量

excelvba常用的100条语法

VBA语句集 (第1辑) 定制模块行为 (1) Option Explicit '强制对模块内所有变量进行声明 Option Private Module '标记模块为私有,仅对同一工程中其它模块有用,在宏对话框中不显示 Option Compare Text '字符串不区分大小写 Option Base 1 '指定数组的第一个下标为1 (2) On Error Resume Next '忽略错误继续执行VBA代码,避免出现错误消息 (3) On Error GoTo ErrorHandler '当错误发生时跳转到过程中的某个位置 (4) On Error GoTo 0 '恢复正常的错误提示 (5) =False '在程序执行过程中使出现的警告框不显示 (6) =False '关闭屏幕刷新 =True '打开屏幕刷新 (7) '禁用Ctrl+Break中止宏运行的功能 工作簿 (8) () '创建一个新的工作簿 (9) Workbooks(“”).Activate '激活名为book1的工作簿 (10) '保存工作簿 (11) '关闭当前工作簿 (12) '获取活动工作薄中工作表数

(13) '返回活动工作薄的名称 (14) '返回当前工作簿名称 '返回当前工作簿路径和名称 (15) =False '禁止调整活动工作簿的大小 (16) xlArrangeStyleTiled '将工作簿以平铺方式排列 (17) =xlMaximized '将当前工作簿最大化 工作表 (18) '当前工作表中已使用的行数 (19) '获取工作表的行数(注:考虑向前兼容性) (20) Sheets(Sheet1).Name= “Sum” '将Sheet1命名为Sum (21) Before:=Worksheets(1) '添加一个新工作表在第一工作表前 (22) After:=ActiveWorkbook. _ Sheets '将当前工作表移至工作表的最后 (23) Worksheets(Array(“sheet1”,”sheet2”)).Select '同时选择工作表1和工作表2 (24) Sheets(“sheet1”).Delete或Sheets(1).Delete '删除工作表1 (25) (i).Name '获取工作表i的名称 (26) =Not '切换工作表中的网格线显示,这种方法也可以用在其它方面进行相互切换,即相当于开关按钮 (27) =Not '切换工作表中的行列边框显示 (28) '删除当前工作表中所有的条件格式 (29) '取消当前工作表所有超链接

excelVBA常用函数

Option Private Module '标记模块为私有,仅对同一工程中其它模块有用,在宏对话框中不显示 Option Compare Text '字符串不区分大小写 Option Base 1 '指定数组的第一个下标为1 (2) On Error Resume Next '忽略错误继续执行VBA代码,避免出现错误消息 (3) On Error GoTo ErrorHandler '当错误发生时跳转到过程中的某个位置 (4) On Error GoTo 0 '恢复正常的错误提示 (5) =False '在程序执行过程中使出现的警告框不显示 (6) =False '关闭屏幕刷新 =True '打开屏幕刷新 (7) '禁用Ctrl+Break中止宏运行的功能 工作簿 (8) () '创建一个新的工作簿 (9) Workbooks(“”).Activate '激活名为book1的工作簿 (10) '保存工作簿 (11) '关闭当前工作簿 (12) '获取活动工作薄中工作表数 (13) '返回活动工作薄的名称 (14) ‘返回当前工作簿名称

‘返回当前工作簿路径和名称 (15) =False ‘禁止调整活动工作簿的大小 (16) xlArrangeStyleTiled ‘将工作簿以平铺方式排列 (17) =xlMaximized ‘将当前工作簿最大化工作表 (18) ‘当前工作表中已使用的行数 (19) ‘获取工作表的行数(注:考虑向前兼容性) (20) Sheets(Sheet1).Name= “Sum” '将Sheet1命名为Sum (21) Before:=Worksheets(1) '添加一个新工作表在第一工作表前 (22) After:=ActiveWorkbook. _ Sheets '将当前工作表移至工作表的最后 (23) Worksheets(Array(“sheet1”,”sheet2”)).Select '同时选择工作表1和工作表2 (24) Sheets(“sheet1”).Delete或 Sheets(1).Delete '删除工作表1 (25) (i).Name '获取工作表i的名称 (26) =Not '切换工作表中的网格线显示,这种方法也可以用在其它方面进行相互切换,即相当于开关按钮 (27) =Not ‘切换工作表中的行列边框显示 (28) ‘删除当前工作表中所有的条件格式 (29) ‘取消当前工作表所有超链接 (30) 或 '将页面设置更改为横向

Excel中宏函数VBA常用语

Excel中宏函数 vba常用语句 (1)Option Explicit 强制对模块内所有变量进行声明 Option Private Module 标记模块为私有,仅对同一工程中其它模块有用,在宏对话框中不显示Option Compare Text 字符串不区分大小写 Option Base 1 指定数组的第一个下标为 1 (2)On Error Resume Next 忽略错误继续执行 VBA 代码,避免出现错误消息 (3)On Error GoTo ErrorHandler 当错误发生时跳转到过程中的某个位置 (4)On Error GoTo 0 恢复正常的错误提示 (5)Application.DisplayAlerts=False 在程序执行过程中使出现的警告框不显示 (6)Application.ScreenUpdating=False 关闭屏幕刷新 (7)Application.ScreenUpdating=True 打开屏幕刷新 (8)Application.Enable.CancelKey=xlDisabled 禁用 Ctrl+Break 中止宏运行的功能

(1)Workbooks.Add() 创建一个新的工作簿 (2)Workbooks("book1.xls").Activate 激活名为 book1 的工作簿 (3)ThisWorkbook.Save 保存工作簿 (4)ThisWorkbook.close 关闭当前工作簿 (5)ActiveWorkbook.Sheets.Count 获取活动工作薄中工作表数 (6)https://www.360docs.net/doc/173179886.html, 返回活动工作薄的名称 (7)https://www.360docs.net/doc/173179886.html, 返回当前工作簿名称 (8)ThisWorkbook.FullName 返回当前工作簿路径和名称 (9)ActiveWindow.EnableResize=False 禁止调整活动工作簿的大小 (10)A pplication.Window.Arrange xlArrangeStyleTiled 将工作簿以平铺方式排列 (11)A ctiveWorkbook.WindowState=xlMaximized 将当前工作簿最大化

Excel之VBA编程常用语句300句之一

Excel之VBA编程常用语句300句之一 定制模块行为 (1) Option Explicit '强制对模块内所有变量进行声明 Option Private Module '标记模块为私有,仅对同一工程中其它模块有用,在宏对话框中不显示 Option Compare Text '字符串不区分大小写 Option Base 1 '指定数组的第一个下标为1 (2) On Error Resume Next '忽略错误继续执行VBA代码,避免出现错误消息 (3) On Error GoTo ErrorHandler '当错误发生时跳转到过程中的某个位置 (4) On Error GoTo 0 '恢复正常的错误提示 (5) Application.DisplayAlerts=False '在程序执行过程中使出现的警告框不显示 (6) Application.ScreenUpdating=False '关闭屏幕刷新 Application.ScreenUpdating=True '打开屏幕刷新 (7) Application.Enable.CancelKey=xlDisabled '禁用Ctrl+Break中止宏运行的功能 工作簿 (8) Workbooks.Add() '创建一个新的工作簿 (9) Workbooks(“book1.xls”).Activate '激活名为book1的工作簿 (10) ThisWorkbook.Save '保存工作簿 (11) ThisWorkbook.close '关闭当前工作簿 (12) ActiveWorkbook.Sheets.Count '获取活动工作薄中工作表数 (13) https://www.360docs.net/doc/173179886.html, '返回活动工作薄的名称 (14) https://www.360docs.net/doc/173179886.html, ‘返回当前工作簿名称 ThisWorkbook.FullName ‘返回当前工作簿路径和名称 (15) ActiveWindow.EnableResize=False ‘禁止调整活动工作簿的大小 (16) Application.Window.Arrange xlArrangeStyleTiled ‘将工作簿以平铺方式排列 (17) ActiveWorkbook.WindowState=xlMaximized ‘将当前工作簿最大化 工作表 (18) https://www.360docs.net/doc/173179886.html,edRange.Rows.Count ‘当前工作表中已使用的行数 (19) Rows.Count ‘获取工作表的行数(注:考虑向前兼容性) (20) Sheets(Sheet1).Name= “Sum”'将Sheet1命名为Sum (21) ThisWorkbook.Sheets.Add Before:=Worksheets(1) '添加一个新工作表在第一工作表前 (22) ActiveSheet.Move After:=ActiveWorkbook. _ Sheets(ActiveWorkbook.Sheets.Count) '将当前工作表移至工作表的最后 (23) Worksheets(Array(“sheet1”,”sheet2”)).Select '同时选择工作表1和工作表2 (24) Sheets(“sheet1”).Delete或Sheets(1).Delete '删除工作表1 (25) ActiveWorkbook.Sheets(i).Name '获取工作表i的名称 (26) ActiveWindow.DisplayGridlines=Not ActiveWindow.DisplayGridlines '切换工作表中的网格线显示,这种方法也可以用在其它方面进行相互切换,即相当于开关按钮 (27) ActiveWindow.DisplayHeadings=Not ActiveWindow.DisplayHeadings ‘切换工作表中的行

excelvba常用代码总结1

Excel VBA常用代码总结1 改变背景色 Range("A1"). = xlNone ColorIndex一览 改变文字颜色 Range("A1"). = 1 获取单元格 Cells(1, 2) Range("H7") 获取范围 Range(Cells(2, 3), Cells(4, 5)) Range("a1:c3") '用快捷记号引用单元格Worksheets("Sheet1").[A1:B5]

选中某sheet Set NewSheet = Sheets("sheet1") 选中或激活某单元格 '“Range”对象的的Select方法可以选择一个或多个单元格,而Activate方法可以指定某一个单元格为活动单元格。 '下面的代码首先选择A1:E10区域,同时激活D4单元格: Range("a1:e10").Select Range("d4:e5").Activate '而对于下面的代码: Range("a1:e10").Select Range("f11:g15").Activate '由于区域A1:E10和F11:G15没有公共区域,将最终选择F11:G15,并激活F11单元格。 获得文档的路径和文件名 '路徑 '名稱 '路徑+名稱 '或将ActiveWorkbook换成thisworkbook 隐藏文档 = False 禁止屏幕更新 = False 禁止显示提示和警告消息 = False

文件夹做成 strPath = "C:\temp\" MkDir strPath 状态栏文字表示 = "计算中" 双击单元格内容变换 Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) If >= 5And <= 8) Then If = "●"Then = "" Else = "●" End If Cancel = True End If End Sub 文件夹选择框方法1 Set objShell = CreateObject("") Set objFolder = (0, "文件", 0, 0) If Not objFolder Is Nothing Then path= & "\" end if Set objFolder = Nothing Set objShell = Nothing

Excel VBA 常用代码50例

Excel VBA 常用代码50例 001。用命令按扭打印一个sheet1中B2:M30区域中的内容? 我想在Sheet2中制件一个命令按扭, 打印表Sheet1中的[B2:M30] 区域中的内容? 解答:可以将打印区域设为b2:m30,然后打印,如:sheets("sheet1").printarea="b2:m30" sheets("sheet1").printout 随手写的,你可以试试看。最简单的方法是:你先录制宏,在录制宏过程中,跑到页面设置里面,把打印范围设置到你想要的范围。 然后退出,停止录制宏,你就可以得到一些代码! 002。能否对一列中的文字统一去掉最后一个字?这些文字不统一,有些字数多,有些字数少。如何处理?我用{"&-}不行 解答:=REPLACE(A1,LEN(A1),1," ")(在过渡列进行) 003.能否根据单元格数值自动标记序号? 各位大佬,一工作表有两列,“序号”及“金额”,能否将金额不等于0的行自动标上序号呢?如无现成的函数,应怎样设置? 解答:Dim xuhao As Integer

xuhao = 1 Range("b2").Select Do While Selection <> "" If Selection <> 0 Then ActiveCell.Previous.Value = xuhao xuhao = xuhao + 1 End If ActiveCell.Offset(1, 0).Range("a1").Select Loop 004.求教自定义函数 查询了一些自定义函数的例子都是单变量的。自定义函数能否建立“(As Range) As Interger”的函数,应该可以的,请各位大师赐教!请以“∑x2”为例,万分感谢!(该用"For Each ...Next",就是还不知道如何引用Range中的每个值,请高手指点。) 解答:参数使用Range而函数值为Integer是可以的 用for each next循环思路也是对的,应该这样作: dim rg as range dim ivalue as integer for each rg in 参数区域 ivalue=ivalue+rg.value

excel中各种vba写法 - 彷徨豁然开朗 - 博客园

Excel中各种VBA写法- 彷徨......豁然开朗- 博客园 Excel中各种VBA写法 https://www.360docs.net/doc/173179886.html,/xioxu/archive/2007/09/19/898282. html 先贴一段网上找的excel的各种事件 工作簿对象事件一览表 当工作簿更改、工作簿中的任何工作表更改、加载宏更改或数据透视表更改时,将引发工作簿事件。工作簿上的事件在默认情况下是可用的。若要查看工作簿的事件过程,请用鼠标右键单击处于还原状态或最小化状态的工作簿窗口标题栏,再单击快捷菜单上的“查看代码”。在 “过程”下拉列表框内选择事件名称。 事件说明 Activate激活工作薄时 AddinInstall当工作簿作为加载宏安装时 AddinUninstall工作簿作为加载宏卸载时 BeforeClose关闭工作薄前 BeforePrint打印工作薄(或其中任何内容)之前

BeforeSave保存工作薄前 Deactivate工作簿从活动状态转为非活动状态时NewSheet在工作簿中新建工作表时 Open打开工作簿时 PivotTableCloseConnection在数据透视表关闭与其数据源的连接之后 PivotTableOpenConnection在数据透视表打开与其数据源的连接之后 SheetActivate激活任何一张表时SheetBeforeDoubleClick双击任何工作表时SheetBeforeRightClick鼠标右键单击任一工作表时SheetCalculate工作表重新计算时 SheetChange更改工作表中的单元格时SheetDeactivate任一工作表由活动状态转为非活动状态时SheetFollowHyperlink单击Microsoft Excel 中的任意超链接时 SheetPivotTableUpdate数据透视表的工作表更新之后SheetSelectionChange工作簿中的数据透视表更新之后WindowActivate工作簿的窗口激活时WindowDeactivate工作簿的窗口变为非活动状态时WindowResize工作簿窗口调整大小时工作表事件一览表工作表上的事件在默认情况下是可用的。若要查看工作表的

Excel常用VBA函数实用经典案例

Excel常用VBA函数实用经典案例 ASC函数 一、题目: 要求编写一段代码,运行后得到字符串”Excel”的首字母和”e”的ASCII值。 二、代码: S UB示例_1_01() D IM MY N UM1%, MY N UM2% MY N UM1 = A SC("E XCEL") '返回69 MY N UM2 = A SC("E") '返回101 [A1] = "MY N UM1= ": [B1] = MY N UM1 [A2] = "MY N UM2= ": [B2] = MY N UM2 E ND S UB 三、代码详解 1、Sub 示例_1_01():宏程序的开始语句。 2、Dim myNum1%, myNum2%:变量myNum1和myNum2声明为整型变量。也可以写为 Dim myNum1 As Integer 。Integer 变量存储为 16位(2 个字节)的数值形式,其范围 为 -32,768 到 32,767 之间。Integer 的类型声明字符是百分比符号 (%)。 3、myNum1 = Asc("Excel"):把Asc函数的值赋给变量myNum1。 Asc函数返回一个 Integer,代表字符串中首字母的字符的ASCII代码。语法 Asc(string) 必要的 string(字符串)参数可以是任何有效的字符串表达式。如果 string 中没有包含任何字符,则会产生运行时错误。 4、myNum2 = Asc("e"):把Asc函数的值赋给变量myNum2。这里返回小写字母e的ASCII 代码101。 5、[a1] = "myNum1= ": [b1] = myNum1:把字符串“myNum1= “赋给A1单元格,把变量myNum1的值赋给B1单元格。 6、[a2] = "myNum2= ": [b2] = myNum2:把字符串“myNum2= “赋给A2单元格,把变量myNum2的值赋给B2单元格。 7、End Sub:程序的结束语句,和“Sub示例_1_01()”相对应。 Chr函数 一、题目"": 要求编写一段代码,运用Chr函数将ASCII值转换为对应的字符。 二、代码: S UB示例_1_02()

相关文档
最新文档