当前位置:主页 > Office办公 > vba

vba

excel中怎么做vba循环
excel中怎么做vba循环

excel中怎么做vba循环?前面我们介绍过Excel的对象模型及一些常用的对象,也解过对象变量的概念及声明对象变量的方法。其实,在绝大多数情况下,我们都是通过使用Excel VBA操纵Excel对象来达到我们的目的。例如,我们可以操作工作表对象,为工作表命名、排序工作表、统计工作表个数;我们可以操作单元格对象,在单元格区域中填充内容、查找有指定内容的单元格;等等。为方便操控Excel对象,VBA提供了For Each-Next结构,可以在对象组成的集合中循环,给集合中的所有对象执行操作,或者集合中满足相关条件的对象执行操作。使用For Each-Next结构,我们无需知道集合中对象的数目,只需要声明相应的对象变量,编写执行操作的指令。For Each-Next结构的语法如下:For Each 对象变量In 对象集合[语句块][Exit For][语句块]Next [对象变量]说明:

Excel 2013是怎么调用VBA的
Excel 2013是怎么调用VBA的

Excel 2013调用VBA的方法方法一:1、我们打开Excel 2013,在默认菜单栏如下图。。点“文件”。2、点“选项”。3、点“自定义功能区”,如下图。把“开发工具”前面的打上√,如下图。

157 次浏览
VBA怎么做数据透视表
VBA怎么做数据透视表

上面有各种各样的信息,都是通过数据来表现这些信息的,例如学生的姓名、入学时间、考试分数、是否合格以及图片,这些都是数据。观察一下中的数据,我们可以将其分一下类:有些数据是数字,例如表示序号的1、2、…和表示分数的83.5、50.3、…等。有些数据是文本,例如表示姓名的张三、李四、…以及表头的标题如序号、姓名、入学时间、…等。有些数据是日期,例如表示入学时间的2011-9-6。有些数据是逻辑值,例如表示是否合格的True和False。在VBA中,数据也会被分成不同的类型,例如:处理数字的整型(Integer型)、长整型(Long型)、单精度浮点型(Single型)、双精度浮点型(Double型)。处理文本的字符串型(String型)。

如何使用VBA操控Excel界面
如何使用VBA操控Excel界面

如何使用VBA操控Excel界面?本文讲解操控工作表中一些界面元素的VBA代码。工作表中的行列隐藏和取消隐藏行标题隐藏和取消隐藏工作表行行高隐藏和取消隐藏工作表列列宽

341 次浏览
利用excel中vba代码随机生成姓名列表的方法
利用excel中vba代码随机生成姓名列表的方法

数字可以使用rand、RANDBETWEEN函数来随机生成。可是姓名如何弄呢,本文介绍使用VBA自动随机生成姓名。  具体的随机生成姓名如下介绍:  第一步,新建一个excel工作薄  这个工作薄里面包含两个工作表,分别是“姓名数据”和“生成随机姓名”。  其中的“姓名数据”工作表,有三列数据:百家姓、男子名、女子名,是我们之前已经输入好了的。  第二步,切换到“生成随机姓名”工作表,单击“生成随机姓名”按钮,excel会出现一个输入框,提示我们输入要生成的人名数。比如我们输入100,单击“确定”,此工作表A列就会随机生成姓名100个。  下面提供随机生成姓名的VBA代码,使用方法是按下ALT+F11组合键,打开VBE编辑器,插入——模块,复制下面的代码,然后为了操作方便,我们在“生成随机姓名”工作表中插入了一个按钮,将这段代码指定给按钮。Sub 随机生成姓名() Dim Arr, Arr2, Arr3, I%, N&, S As Boolean, Str$, Dic, A&, B& N = Val(InputBox("请输入要生成的人名数:"))     '输入要生成的随机人名数量 If N = 0 Then Exit Sub      '如果未输入或点了取消则退出程序 Set Dic = CreateObject("scripting.dictionary")  '创建字典项目,用于清除生成的重复的人名 With Sheet1     '从sheet1中读取数据并随机生成姓名     Arr = .Range(.[a2], .Cells(.Rows.Count, 1).End(3))  '读取百家姓放入数组     Arr2 = .Range(.[b2], .Cells(.Rows.Count, 2).End(3))    '读取男子名常用字放入数组     Arr3 = .Range(.[c2], .Cells(.Rows.Count, 3).End(3))     '读取女子名常用字放入数组     Do  '循环执行         Str = ""       '先清空用于存储生成的名字的变量         S = Rnd > 0.5   '用取得的随机数来判断生成男子名还是女子名         I = 2 + IIf(Rnd > 0.8, 0, 1)    '用随机数确定生成的名字的字符数(80%的几率为三个字)         If S Then   '如果是男子名,则             A = Int(Rnd * (UBound(Arr) - 2)) + 2    '取得姓对应的数组下标             B = Int(Rnd * (UBound(Arr2) - 2)) + 2   '取得名字的对应下数组下标             Str = Arr(A, 1) & Arr2(B, 1)    '串接名字             If I > 2 Then   '如果名字的字符数大于2,则再得一次名字的字符下标并串接给字符串变量                 B = Int(Rnd * (UBound(Arr2) - 2)) + 2                 Str = Str & Arr2(B, 1)             End If         Else    '如果是女子名,则取对应的女子名数组内容,处理方式同上             A = Int(Rnd * (UBound(Arr) - 2)) + 2             B = Int(Rnd * (UBound(Arr3) - 2)) + 2             Str = Arr(A, 1) & Arr3(B, 1)             If I > 2 Then                 B = Int(Rnd * (UBound(Arr3) - 2)) + 2                 Str = Str & Arr3(B, 1)             End If         End If         Dic(Str) = ""   '将随机姓名放入字典中     Loop Until Dic.Count = N    '如果字典项目数量达到输入的数值则跳出循环 End With With Sheet2     '将结果写入sheet2中     .Cells.Clear    '清空原有内容     If Dic.Count > 65536 Then   '防止数量太多时无法转置及数据超出单元格最大行号的情况         Arr = Dic.keys         For N = LBound(Arr) To UBound(Arr)             Cells((N Mod 65536) + 1, N \ 65536 + 1) = Arr(N)         Next N     Else    '数量少时直接转置         .[a1].Resize(Dic.Count, 1) = Application.Transpose(Dic.keys)    '转置字典的keys值     End If End With Set Dic = Nothing   '清空字典项目 End Sub

878 次浏览
怎样隐藏或取消隐藏Excel工作表
怎样隐藏或取消隐藏Excel工作表

 如果不希望工作表中的某些内容被其他用户看到,可以将工作表隐藏起来。隐藏工作表后,工作表标签会同时被隐藏。方法如下:    选择需要隐藏的工作表。Excel允许一次隐藏多个工作表,如果要同时隐藏多个工作表,可以用Ctrl键或Shift键选择多个工作表。    Excel 2003:    单击菜单“格式→工作表→隐藏”,工作表即被隐藏。        Excel 2007/2010:    方法一:在“开始”选项卡的“工作表”组中,单击“格式→隐藏和取消隐藏→隐藏工作表”。    方法二:右击所选择的工作表标签,在弹出的快捷菜单中选择“隐藏”即可。        要取消隐藏工作表 ,用下面的方法,但一次只能取消一个工作表的隐藏:

410 次浏览
excel中VBA基础入门介绍
excel中VBA基础入门介绍

什么是VBA?   VBA是Visual Basic for Applications 的简称,Visual Basic(VB)在office的应用版。VBA是与VB类似或者可以说是一样的语言,而VB是以易用易学著称。  宏有什么用?如果经常在 Microsoft Excel 中重复某项任务,那么可以用宏自动执行该任务。这是宏在Excel帮助中的用途,而宏的用处不仅仅在于此。就象有人说,VB能干什么?而有人回答,什么都可以!但个人认为,不一定什么东西非要用VBA,Excel中本身自带的很多功能都能解决很多的问题!但这些功能也都能通过代码的方式来表达。  怎么开始学习VBA?   录制宏的功能有何用?除了能生成一段宏外,我们还可以将操作的过程序变成宏后,再通过其代码来了解这过程的相关要用到的属性、方法等。其实,对于初学者,这是一个非常好的自学方法之一。   从哪可以看到宏代码?我们把宏录制好了,单击工具/宏/VBA编辑器或按Alt+F11,就可以进入VBA编辑器,在里面就可以看到我们录制好的代码。

334 次浏览
Excel中vba教程 设置行高实例
Excel中vba教程 设置行高实例

在excel工作表中对单元格进行行高设置操作,一般情况下,都是通过点击菜单:格式——行——行高,然后进行设置。  为了让大家逐渐熟悉Excel中vba基础知识,我们通过一系列的实例来加以介绍。  首先运行excel,新建一工作表,输入如下数据,详见下图:  输入完数据后,进行按钮的录入和VBA代码编写部分。  第一,依次单击菜单:视图——工具栏——窗体,调出窗体工具栏。   第二,单击窗体工具栏中的按钮,鼠标成为十字形状,然后在工作界面拖动一矩形框,松开鼠标,完成按钮的录入。   第三,松开鼠标后,会弹出“指定宏”对话框,单击其中的“新建”,出现Visual Basic代码编写界面。   第四,全选代码界面现有的代码,删除,并将下面一段代码复制进去: Sub 设置行高()     Dim h As Long, r As Long, i As Integer, n As Integer     Dim ws1 As Worksheet     h = Application.InputBox(prompt:="请输入所选行的高度:", _         Title:="输入行高", Type:=1)         Set ws1 = ActiveSheet     n = Selection.Rows.Count     r = ActiveCell.Row     For i = 1 To n         ws1.Rows(r + i - 1).RowHeight = h     Next     Set ws1 = Nothing End Sub   第五,单击保存,关闭Visual Basic代码编写界面,并右击该按钮,选中按钮上的文字,重命名为:设置行高。   第六,参考1-5步的操作,在页面新建另外一个按钮,并重命名为:自动设置行高。该按钮的代码为: Sub 自动调整行高()     Selection.Rows.AutoFit End Sub   第七,完成上面的操作,最后的界面就如上图所示的一样了。然后,当我们点击工作表中的“设置行高”按钮,就会弹出“输入行高”对话框,可以在这里输入数值来调整行高。也可以单击“自动设置行高”按钮,来清除所设定的行高。

484 次浏览
如何在Excel 2013/2016/2019中获取工作簿中每个工作表的数据大小
如何在Excel 2013/2016/2019中获取工作簿中每个工作表的数据大小

本文将讲述如何在Excel中获取到当前打开工作簿的每个工作表的数据大小。如何在Excel 2013/2016中获取工作簿中每个工作表的数据大小。假设您有一个包含多个工作表的工作簿,并且您想知道当前工作簿中每个工作表的数据大小。本文将向你演示两种获取工作数据数据大小的方法。您可以手动逐个获取每个工作表的数据大小,只需要在工作簿中复制Excel工作表的内容,然后创建一个新工作簿,并将内容粘贴到新工作簿中的sheet1中,然后将新工作簿保存到Windows文件夹。然后你可以得到这个新工作簿的大小。您可以重复上述步骤,在工作簿中逐个获取其他工作表的数据大小。如果要快速获取当前工作簿中每个工作表的数据大小,可以使用Excel VBA宏来完成它。只需执行以下步骤:步骤1:打开您的Excel工作簿,然后单击开发工具选项卡下的“Visual Basic”命令,或者只需按“ALT + F11”快捷方式。步骤2:然后将出现“Visual Basic编辑器”窗口。步骤3:单击“插入” – >“模块”以创建新模块。

1162 次浏览
excel vba对象是什么,包含些什么对象,以及常用VBA对象说明和含义
excel vba对象是什么,包含些什么对象,以及常用VBA对象说明和含义

VBA中有四个最基本的概念:对象、属性、方法与事件。   工作簿、工作表、单元格、批注、透视表、自选图形、名称等等都是对象,VBA正是用于处理这些对象的语言。第一,excel vba对象基本概念介绍  excel vba对象有很多,每个对象又有自己的属性和方法。  excel vba对象到底是什么呢?VBA是面向对象的一种程序语言。  Excel的操作几乎都是围绕工作簿、工作表、单元格展开的,这些就是Excel操作的核心对象,这些也是VBA的核心对象。  对于Excel来说,最外层的vba对象就是Application,代表整个Excel应用程序。  每个Excel文件,都对应一个Workbook;  文件中的每个Sheet工作表,都对应一个Worksheet;  表单中的单元格,对应的是Range对象。

783 次浏览
共计92条记录 上一页 1 2 3 4 5 6 7 ..10 下一页