精华内容
下载资源
问答
  • VBA赋值给指定单元格

    2019-10-01 15:49:00
    这是一个Range对象基本操作实例,对指定单元格赋值,然后使用弹窗获取值。 代码如下: Sub test1() Worksheets("Sheet1").Range("A5").Value = 22 MsgBox "工作表Sheet1内单元格A5中的值为" _ & ...

    这是一个Range对象基本操作实例,对指定单元格赋值,然后使用弹窗获取值。

    代码如下:

    Sub test1()
    Worksheets("Sheet1").Range("A5").Value = 22
    MsgBox "工作表Sheet1内单元格A5中的值为" _
    & Worksheets("Sheet1").Range("A5").Value
    End Sub

     

    转载于:https://www.cnblogs.com/OliverQin/p/5753789.html

    展开全文
  • VBA数组赋值

    2012-04-05 23:30:05
    先说一下,刚才一个错误...数组是这样赋值的: Dim a2(10) As Integer '10是可以使用的最大上标,这和C语言不太一样 Dim a3(-2 To 10) As Integer '也可以定义下标 Dim a1() As Integer '定义变长数组...
    先说一下,刚才一个错误的操作,连保存的草稿都没了,这也太悬了。以后还是在本地写好了再放上来。
    数组是这样赋值的:
    Dim a2(10) As Integer
    '10是可以使用的最大上标,这和C语言不太一样
    Dim a3(-2 To 10) As Integer
    '也可以定义下标

    Dim a1() As Integer
    '定义变长数组 动态数组
    ReDim a1(10)
    '重新定义数组的长度
    如果需要保存原来的数组中的数据,则使用:
    ReDim Preserve a1(10)
    如有特殊需要要将下标默认定义为1,则需要声明:
    Option Base 1

    Debug.Print LBound(a1)
    Debug.Print UBound(a1)
    显示数组的上下界

    定义二维数组:
    Dim MyArray(-2 To 9, -8 To 12)

    当定义好了一个数组,可以直接赋值给另外一个
    MyArray2 = MyArray1

    清除数组
    erase MyArray2
    清除之后数组内部成为初始值,对于动态数组来说,在没有赋数组长度值时,没有上下界,清除之后也没有,如果使用UBound,运行时会出现错误。
    erase之后,动态数组并不是不存在了,这一点从可以继续redim就可以知道。这一点《Excel VBA 入门与应用典型实例》说错了。
    展开全文
  • 大家好,我们今日继续VBA数组与字典解决方案,今日讲解VBA数组的声明,一些朋友会问了:数组都讲了这么长时间了,怎么才讲声明啊?是的,有些知识不到一定的程度即使讲了,大家也不能深入的理解,只有到了一定的程度...

    大家好,我们今日继续VBA数组与字典解决方案,今日讲解VBA数组的声明,一些朋友会问了:数组都讲了这么长时间了,怎么才讲声明啊?是的,有些知识不到一定的程度即使讲了,大家也不能深入的理解,只有到了一定的程度,再次讲解,大家才能有真正的收获。

    一 我们先看看下面的声明方法

    1 Dim arr as Variant

    2 Dim arr(1 to 10, 1 to 2 )

    3 dim arr()

    4 ReDim arr(1 To k)

    我们分析一下各种声明方法:

    第一种:声明通常用于单元格直接装入数组如:

    arr =range("a9:c100")

    这种装入非常简单,直接用变量 = 单元格区域即可。但是这里要注意的是对于这种写入时数组的声明只能是:

    Dim arr as Variant

    这时,声明一个变量,不能声明其他数据类型。

    第二种:通常用于一个固定数组的声明,同时给出了数组的上下界。这种声明要注意的是不能一次性的装入单元格的数据,要靠循环

    第三种,是一个动态数组的声明,也就是说,我们在命名数组时还不知道数组的大小,要靠后期的再次定义

    第四种 是再次声明arr的大小,以正好盛下k数量的值。

    二 把单元格数据填入数组和数组数据的回填

    我们利用数组就是为了计算,下面我们看看把工作表中的数据填入数组,及计算后数组数据回填给工作表单元格的方法,看我给出的代码:

    Sub MyNZsz_31() '第31讲 数组的声明及赋值的回填

    Dim arr As Variant '注意此处的Variant

    Dim brr() '注意此处定义了一个动态数组

    Sheets("31").Select

    arr = Sheets("31").UsedRange 'Usedrange的行数和列数是未知的

    MsgBox UBound(arr, 1) '可以计算这个区域有多少行

    MsgBox UBound(arr, 2) '可以计算出这个区域有多少列

    ReDim brr(1 To UBound(arr, 1), 1 To UBound(arr, 2))

    For x = 1 To UBound(arr, 1) '通过循环在arr数组中循环

    For y = 1 To UBound(arr, 2)

    brr(x, y) = arr(x, y) * arr(x, y) '数组自身相乘

    Next

    Next

    '把数组放回到单元格中

    Range("A" & Range("A1").End(xlDown).Row + 2).Resize(UBound(arr, 1), UBound(arr, 2)) = brr

    End Sub

    代码截图:

    7c927a56883c05378682671c52875469.png

    代码的讲解:此代码在代码部分我都做了详细的注释,不再一一讲解了,仅看看下面的这句代码:

    Range("A" & Range("A1").End(xlDown).Row + 2).Resize(UBound(arr, 1), UBound(arr, 2)) = brr

    这句设定了数组回填的区域大小,注意这个区域必须和数组的大小要一致,不然会产生错误。所以我利用了Resize(UBound(arr, 1), UBound(arr, 2))来保证这一点。

    下面我们看代码的运行:

    运行前:

    36d59c741f435efca210bdb398b80d4c.png

    运行,先提示行数:

    48ade9ba4a43cc996711a9a1ee2c3dea.png

    再提示列数:

    260c4f63a5b4a8662f618b02556775be.png

    最后看结果:

    49eebd8fb64156b50c08089d1cf7169f.png

    今日内容回向:

    1 如何给数组声明?

    2 上述实例如果再次运行一下会有什么结果呢?

    展开全文
  • 从这一讲开始,我们开始进入VBA数组阶段,VBA数组和工作表数组有着不同的意义,在很大程度上,工作表数组的运算甚至可以看做是程序的运行,能够理解工作表数组的运算过程对于VBA代码的书写是非常有益的,但VBA数组在...

    bf6811edb62917433f638609e6b262d0.png

    大家好,我们今日继续讲解VBA数组与字典解决方案,今日讲解第18讲:VBA数组如何定义,又该如何创建呢?

    从这一讲开始,我们开始进入VBA数组阶段,VBA数组和工作表数组有着不同的意义,在很大程度上,工作表数组的运算甚至可以看做是程序的运行,能够理解工作表数组的运算过程对于VBA代码的书写是非常有益的,但VBA数组在大多数情况下,只是作为变量来存储数据。这点和工作表数组有很大的不同。

    一、什么是VBA数组 所谓VBA数组,就是共享一个名字,有着多个元素按顺序排列的变量。数组中的数据具有相同的类型和结构,元素通过索引加以区分。这里我把数组的元素看做变量来对待,大家要注意,这个观点在应用过程中是非常有意义的。    

    二、如何定义数组 数组在使用前必须要进行声明,声名数组同声明其他变量的方式一样,也是用Dim语句来声明。唯一不同的是数组有大小,即有多少个元素,或者说变量,还有就是要说明数组的维数。一般情况下使用较多的是一维数组和两维数组,需要注意的是数组要以字母开头,所用的字符仅限字母、数字和下下划线,不允许出现标点符号和空格。当声明了一个数组,便决定了这个数组用于存储数数据所用的内存空间。

    默认情况下数组是以0为下届,也就是Option Base 0大多数情况下我们都是遵守此默认情况的,并且在用数组时忽略数组的第一个元素,上届不能超过LONG数据类型的范围,而且上届值不能小于下届值。

    如果我们习惯了用1作为我们的下界,可以强制声明:Option Base 1,需要注意的是Option Base 0(1)必须放在所有模块之前。当然,我们也可以忽略这个强制声明,那我们就需要在声明数组时,指明数组的上界和下界,如:Dim arrSheetName(1 to 3) as String表明这个数组的上下界分别是1和3

    下面我们讲通过一个实例来说明数组的声明及赋值,如下面的代码:

     Sub Mynzsz() '第18讲 VBA数组的定义及创建

    Dim i As Integer, j As Integer

    Dim arr(1 To 10, 1 To 2) As Integer '定义一个10*2的二维数组(10行,2列)

    j = 1 '数组1 to 10的索引号

    For i = 1 To 20 Step 2

    arr(j, 1) = i '赋值

    arr(j, 2) = i + 1 '赋值

    j = j + 1 '索引号增加

    Next

    [a1:b65536].ClearContents '清除原有数据

    [a1].Resize(10, 2) = arr '将数组赋值给A1单元格向下10行,向右2列的区域

    End Sub

    代码截图:

    4a84bac17b4260efdb6ac6f12e7b5723.png

    代码讲解:

    1 Dim arr(1 To 10, 1 To 2) As Integer 这里给出了数组的范围最小的是arr(1, 1),最大的是

    arr(10, 2)

    2 [a1].Resize(10, 2) = arr 讲数组回填给工作表。大家是否理解arr的意义呢?我们看看下面的图:

    afa69db6b3b8bc0f0ac218cd71bdebf1.png

    arr 是一个集合。这个集合包括了20个元素(或者叫变量),分别是arr(1,1);arr(2,1);arr(1,2);arr(2,2);arr(1,3);arr(2,3);arr(1,4);arr(2,4);arr(1,5);arr(2,5);arr(1,6);arr(2,6);arr(1,7);arr(2,7);arr(1,8);arr(2,8);arr(1,9);arr(2,9);arr(1,10);arr(2,10)

    运行后:

    e50b02862740fb54572a1603a31a907b.png

    今日内容回向:

    1 什么是VBA数组。

    2 VBA数组如何声明?

    展开全文
  • 大家好,最近推出的内容是“VBA信息获取与处理”中的部分内容,这套教程面向中高级人员,涉及范围更广,实用性更强,现在的内容是第四个专题“EXCEL工作表数据的读取、回填和查找”的内容。第二节 将工作表数据写入...
  • 今日的内容是“VBA之EXCEL应用”的“第四章 单元格(Range)对象”中第一节“对单元格对象的赋值”。“VBA之EXCEL应用”这套教程从简单的录制宏的讲解,一直到窗体的搭建,内容丰富,案例众多。大家可以非常容易的...
  • VBA是利用Office实现个人小型办公自动化的有效手段(工具)。这些资料就是我多年经验的记录,都来源于我多年的实践。大家在学习VBA的时候,可以把这些代码块作为一块块的积木对待,平时积累,用时拿来修正、组合。这...
  • 从这一讲开始,我们开始进入VBA数组阶段,VBA数组和工作表数组有着不同的意义,在很大程度上,工作表数组的运算甚至可以看做是程序的运行,能够理解工作表数组的运算过程对于VBA代码的书写是非常有益的,但VBA数组在...
  • vba给数组赋值

    万次阅读 2016-02-24 11:41:05
    '向VBA数组中写入数据    '1、按编号(标)写入和读取     Sub t1() '写入一维数组   Dim x As Integer   Dim arr(1 To 10)  arr(2) = 190  arr(10) = 5   End Sub    Sub t2() '向二维数组写入数据和读取 ...
  • VBA练习Split Excel取值赋值 For循环 数组上限下限LBound UBound
  • 我是小白,按照自己的逻辑这样写了,可是不行:Sub ID赋值和日期赋值()Sheet3.Range ("C1")Sheet3.Range ("M1")Sheet3.Range ("W1")Sheet3.Range ("AG1")Sheet3.Range ("AQ1")Sheet3.Range ("BA1")Sheet3.Range (...
  • Hi ,大家好,通过此前的VBA编程基础和VBA编程应用的一些教程,大家对于VBA的编程和实际的应用,基本上已经有一些了解,并且应该是可以自行实现一些简单的应用了,属于基本上入门了。但是这些基础知识仅能部分的解决...
  • 大家好,今日继续和大家分享VBA编程中常用的常用“积木”过程代码。这些内容大多是我的经验的记录,来源于我多年的经验。今日分享的是NO.223-NO.224,内容是:NO. 223:计算数组的上标下标及元素的个数值NO. 224:...
  • ▌序在知乎上有很多朋友问VBA如何入门?看着代码密密麻麻看不进去。我想说,我刚开始看也是看着代码也是挠头,但是没办法,要解决批量处理excel的相关问题VBA再好不过。一定要坚持。我理解的入门,是看到问题,立马...
  • 职场中使用Excel VBA编程处理表格数据时,我们肯定会遇到过错误,《神奇的VBA》学习插件中介绍过VBA错误有语法错误,有运行时错误等等。语法错误在编程阶段编辑器会告知我们,这很方便,但是运行时错误有时候就有点...
  • 大家好,今日继续和大家分享VBA编程中常用的常用“积木”过程代码。... 226:将数组的值批量回填给工作表的办法VBA过程代码225:数组的赋值和回填工作表Sub Mynz () '创建数组,并赋值 Dim arr(1 To 60000), i ...
  • 什么是变量变量是一个存储数据的VBA代码结构,在代码中,通过变量名获取变量所代表...通用变量,即Variant类型变量,该变量的类型在程序运行过程中,根据赋值的数据自动指定。数组。 数组包含多个变量的集合对象。对...
  • VBA数组赋值(2/2)-- 二维数组

    千次阅读 2020-04-04 02:16:19
    以前的博客文章中讲过一些数组的使用技巧,经常会被网友问道如何给数组赋值,本文讲解如何为二维数组赋值(或者说如何创建二维数组)。
  • VBA数组赋值(1/2)-- 一维数组

    千次阅读 2020-04-04 02:15:16
    以前的博客文章中讲过一些数组的使用技巧,经常会被网友问道如何给数组赋值,本文讲解如何为一维数组赋值(或者说如何创建一维数组)。
  • 了解VBA的变量声明及赋值

    千次阅读 2019-03-06 00:21:31
    了解VBA的变量声明及赋值
  • 蓝字关注,加微信NZ9668获资料信息VBA解决方案 系列丛书作者头条百家平台 VBA资深创作者_______________________________大家好,后疫情时代一定会到来,各行各业,都将是一场战胜萧条的无声的战役。无论怎样,我们...
  • VBA-循环赋值CheckBox

    千次阅读 2013-11-15 16:36:40
    数据库ACCESS(log.accdb)中的“用户列表” '字段2-33为各省份权限...'循环使用Controls给各Checkbox赋值     Dim cnn As New ADODB.Connection Dim rst As New ADODB.Recordset Dim table As String, i As Integ
  • 在代码窗口,输入CalcCost过程,如下面所示。这个过程基于下述假设来计算购买一个计算器的价钱:计算器的价格为37 美元,销售税为8.5%。代码为: Sub CalcCost() slsPrice = 37 slsTax = 0.085 ...
  • 这是《Excel VBA:办公自动化》教程的第3节,介绍变量。1.变量的基本知识案例:在「单元格B3」输入不同的行号,然后点击「显示答案」按钮,程序就会自动计算右边相应题目的答案,如何实现?[备注]1.题目中F列的数据...
  • 主要内容一览本期主要包括以下几个方面的内容:VBA中的数据类型数据的储存数据的运算 数据类型Visual Basic有以下6种数据类型:数值型(Numeric)、字符串型(String)、布尔型(Boolean)、日期型(Date)、对象型(Object)...
  • 蓝字关注,加微信NZ9668获资料信息VBA解决方案 系列丛书作者头条百家平台 VBA资深创作者_______________________________谦虚为人,低调做人;寻找心灵的平静;学会选择,懂得放弃。幸福,由心不由境。不管遇到什么...
  • 展开全部可通过 “ = ” ...在VBA中对变量进行赋值可通过 “ = ” 符号或 “ Set ” 关键字进行。通过 “ = ” 符号对变量赋值的语法格式有以下几种。变量名=数据变量1=变量2 运算符 数据变量1=变量2 运算符 变量3...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 498
精华内容 199
关键字:

vba赋值