excelvba专题

ExcelVBA之二维数组的应用

下面的过程产生一个二维数组,储存国家名称,货币名称和交换汇率。 Sub Exchange()Dim t As StringDim r As StringDim Ex(3, 3) As Variantt = Chr(9) 'tabr = Chr(13) 'EnterEx(1, 1) = "Japan"Ex(1, 2) = "Yen"Ex(1, 3) = 128.2Ex(2, 1)

ExcelVBA之6位Lotta程序

当你厌倦了选择你的幸运号码,你可以让VB为你选择。下面的过程Lotto使用1到51的六个数字填充数组: Sub Lotto()Const spins = 6Const minNum = 1Const maxNum = 51Dim t As Integer'looping variable in outer loop 外部循环变量Dim i As Integer'looping va

ExcelVBA之数组

因为数组也是变量,所以,你必须用声明其它变量的类似方法声明数组——使用Dim语句。当你声明一个数组时,你便设定了该数组储存数据所需要的内存空间。数组声明的例子: Dim cities(6) As StringDim daysOfWeek(7) As StringDim lotto(6) As IntegerDim exchange(5, 3) As Varian 注意,变量名称后面带有括

ExcelVBA 之For Next循环

当你知道你需要重复运行多少次某段语句时,可以使用For…Next语句。它的语法如下: For 计数器 = 开始 To 结束 [步长]语句1语句2语句NNext [计数器] 括号里面的代码是可选的。计数器是个储存反复次数的数字型变量,开始是你期望的起始计数点,结束则表明循环应该执行多少次。  当VB遇到关键字Next时,它将回到循环的开始处,并且再次执行循环里面的代码,直到计数器到达结

ExcelVBA之Case语句

有时候,作决定是基于测试表达式的条件,例如它是否大于,小于,等于或使用一些其它的关系运算符。关键字Is使你能够在Case子句里使用条件表达式。使用关键字Is的SelectCase语句的语法如下:   Select Case myNumberCase Is <10MsgBox "The number is less than 10"Case 11MsgBox "You entered ele

ExcelVBA之传递参数给一子程序以及如何将值从子程序传递回给主调过程

当你大VBA程序得越来越大,要很好地维护这么多的代码行是很困难的。要让你的程序容易编写、理解和改变,你就应该使用井井有条的结构化程序。你只要简单地将大问题分成一些可以同时执行的小问题就行。在VBA中,你可以通过创建一个主过程和一个或多个子过程来实现它。因为主过程和子过程都是子程序下面的例子显示过程AboutUser。该过程要求用户姓和名,并且将姓和名从全名中分离出来。最后的语句显示用户的姓,随后是

ExcelVBA之MsgBox函数的运行值结果

当你显示只有一个按钮的信息框时,可以点击确定按钮或者回车键将信息框从屏幕上移除,然而,当信息框有两个或以上的按钮时,你的程序需要知道按的是哪个按钮。你可以将信息框结果储存在一个变量上来实现:  程序如下: Sub MsgYesNo3()Dim question As StringDim myButtons As IntegerDim myTitle As StringDim myChoic

ExcelVBA 之可选参数

有时候,你也许要给函数提供额外的参数,例如,你有一个计算每个人膳食的函数。然而,有时你不希望函数进行相同的计算。在参数名称前面加上关键字Optional可以指明该参数不是必须的。可选参数在必须的参数之后,列在参数清单的最后;可选参数总是Variant数据类型,这意味着你不能使用关键字As来明确可选参数的类型。在前面部分,你创建了一个计算三个数值的平均值的函数,假设,你有时只想要计算两个数的均值,你

ExcelVBA之Case语句

有时候,作决定是基于测试表达式的条件,例如它是否大于,小于,等于或使用一些其它的关系运算符。关键字Is使你能够在Case子句里使用条件表达式。使用关键字Is的SelectCase语句的语法如下:   Select Case myNumberCase Is <10MsgBox "The number is less than 10"Case 11MsgBox "You entered ele

ExcelVBA Application对象介绍

Application对象代表Excel程序本身,它就像一棵树的根,Excel中所有的对象都以它为起点。实际编程时,会经常用到它的许多属性和方法。 1.用ScreenUpdating属性设置是否更新屏幕上的内容 在使用Excel解决一个问题时,往往需要执行多步操作或计算。无论是通过手动还是VBA代码完成这些操作,默认情况下,Excel都会将每步操作所得的结果显示在屏幕上。 Applicati