当前位置:科普知识站>IT科技>

怎么用excel|vba(教你怎么用vba)

IT科技 阅读(2.09W)

右击excel的sheet也名称,点击查看代码,这时就打开了一个VBA窗口。 VBA都是由 Sub 宏名() 开始,End Sub 结束。 推荐你一本书《别怕,Excel VBA其实很简单》,简单通俗,适合初学者。这个在百度上都能搜得到电子版的。

VB、VBA?这其实都是编程的入门级语言。接下来为大家展示如何使用VBA。

怎么用excel vba(教你怎么用vba)

材料/工具

电脑、excle

手头电脑未装excel2007,某些用词可能不太准。供参考吧! 关键是在功能区中打开“开发工具”。 (窗口左上角)Office按钮-->Excel选项-->(其中有一项是打开“开发工具”) -->(功能区会增加“开发工具”)点击-->(出现“Visual Basic 编辑器”)

方法

打开一个Excel文件,鼠标右击下面的工作表(如sheet1)。选择“查看代码”,就可以打开VBA编辑界面。

漏参数了 语法 ROUNDDOWN(number, num_digits) ROUNDDOWN 函数语法具有下列参数 (参数:为操作、事件、方法、属性、函数或过程提供信息的值。): Number 必需。需要向下舍入的任意实数。 Num_digits 必需。四舍五入后的数字的位数。 说明 函数

怎么用excel vba(教你怎么用vba) 第2张

选择下拉菜单,选择“worksheet”。

Set 语句 请参阅 示例 特性 将对象引用赋给变量或属性。 语法 Set objectvar = {[New] objectexpression | Nothing} Set 语句的语法包含下面部分: 部分 描述 objectvar 必需的。变量或属性的名称,遵循标准变量命名约定。 New 可选的。通常在声

怎么用excel vba(教你怎么用vba) 第3张

选择对应的触发模式。这里选择BeforeDoubleClick,即在本工作表鼠标双击(之前),将触发下面的代码程序。

Join 函数,返回一个包含子字符串数组中的指定数量的字符串。这与 Split方法的作用完全相反。语法Join(List[,delimiter]) 1.List, 必需的参数。要加入包含属于子数组。2.delimiter, 一个可选的参数。字符就是返回的字符串,用作分隔符。缺省的分

(activate意思是说:在sheet表被选取的时候,就触发;Change意思是说:在这个模式下,只要sheet(工作表)发生变化,就将触发;Before Right Click是指在鼠标右击之前触发;SelectionChange是指在鼠标焦点发生变化时,触发。)

你是要运行EXCEL工作表函数还是要给在VBA中给单元格写公式 如果是要用函数 applivation.worksheetfunction. 如果是要给格写公式比如B4=A1+1 请用range("B4").Formula = "=A1+1"

怎么用excel vba(教你怎么用vba) 第4张

选择完成后,会看到下面出现了两条代码;这俩条代码其实是在声明一个函数。

监视窗口 当工程中有定义监视表达式定义时,就会自动出现。 可以: 重置列标头的大小,通过往右拖移边线来使它变大,或往左拖移边线来使它变校 拖动一个选取的变量,到立即窗口或监视窗口中。 可以按下关闭框,来关闭一个窗口。如果关闭框不是可

怎么用excel vba(教你怎么用vba) 第5张

将鼠标放置在这两行代码之间,我们写上执行语句:

打开你含VBA程序的EXCEL 文件 点击菜单中的 工具---宏---Visual Basic 编辑器 打开Visual Basic 编辑器 在Visual Basic 编辑器菜单中 点击 工具---VBAProject属性 打开VBAProject属性对话框 选择点击 保护选项卡 选择 查看时锁定工程 下面输入密

Sheet1.Cells(1, 3) = Sheet1.Cells(1, 1) + Sheet1.Cells(1, 2)

这个可以有 Sub chiefzjh() Dim xlApp, xlBook Set xlApp = CreateObject("excel.application") Set xlBook = xlApp.Workbooks.Open("E:My Document用宏汇总出入库数据.xls") xlApp.Visible = True End Sub

其中:sheet1.cells(1,3)就是指第一行第三列的这个单元格;Sheet1.Cells(1, 1)就是指第一行第一列的这个单元格;Sheet1.Cells(1, 2)就是指第一行第二列的单元格。执行语句的意思是:将cells(1,1)和cells(1,2)的值相加,并赋值给cells(1,3)

这个可以有 Sub chiefzjh() Dim xlApp, xlBook Set xlApp = CreateObject("excel.application") Set xlBook = xlApp.Workbooks.Open("E:My Document用宏汇总出入库数据.xls") xlApp.Visible = True End Sub

注意的是:写语句的时候,输入法一定要是输入字母的模式。要不然你的语句会报错

range("j"&j) range("k"&j) 、、、、 括号里是双引号里为列标,后面加个连接符号&和变量名称j

怎么用excel vba(教你怎么用vba) 第6张

然后点击保存,回到Excel的原始界面。在cells(1,1)和cells(1,2)中输入两个数值。(楼主输入的是:125895和78954)

Alt+F11,输入以下代码便可: Private Sub Worksheet_SelectionChange(ByVal Target As Range)For i = 1 To 100 '获取第一行的单元格数量 If Cells(1, i).Value = "" Then Exit For a = a + 1 Next i For i = 1 To 100 '获取第二行的单元格数量I

注意看:现在的cells(1,3)数值是空的

要调用某个CELL的数据,可以在VBA中写:(假设是B3单元) Dim temp As String temp = Range("B3").Value 或 temp = Cells(3,2).Value 或 temp = Cells(3, "B") 这里,即使EXCEL表格里是数字,到了VBA里面还是变成字符串。 然后,再判断temp

怎么用excel vba(教你怎么用vba) 第7张

在sheet1的工作表中,双击你的鼠标。你会发现,cells(1,3)的值变成了cells(1,1)和cells(1,2)的和。(204849=125895+78954)

举例说明。 第一步:点击office按钮-excel选项。如图: 第二步:对“在功能区显示”开发工具栏“ 打勾。如图: 第三步:点击开发工具-visual basic。如图: 第四步:插入模块。如图: 这样就可以开始编写代码了 。

怎么用excel vba(教你怎么用vba) 第8张

扩展阅读,以下内容您可能还感兴趣。

EXCEL VBA 大师请进 怎么在excel中利用VBA(宏)命令打开一个新的EXCEL

这个可以有

Sub chiefzjh()

Dim xlApp, xlBook

Set xlApp = CreateObject("excel.application")

Set xlBook = xlApp.Workbooks.Open("E:\My Document\用宏汇总出入库数据.xls")

xlApp.Visible = True

End Sub追问这才正解嘛,不过两点疑问:

1.Set xlBook = xlApp.Workbooks.Open("E:\My Document\用宏汇总出入库数据.xls")

可改为:xlApp.Workbooks.Open("E:\My Document\用宏汇总出入库数据.xls")吗?

为什么要赋给xlBook?

2.为什么打开后是隐藏的呀?即 要使用xlApp.Visible = True来显示。

EXCEL VBA的SUM函数怎么用啊

Application.Sum (Range("b8:b100"))

怎么用excel VBA range 函数来表示

range("j"&j)

range("k"&j)

、、、、

括号里是双引号里为列标,后面加个连接符号&和变量名称j追问range("j"&j)里j是代表行标吗追答前面的"J"是指J列的列标,因为range表示区域时,里面要加双引号的,比如 用range("a1:c1")来表示A1:C1区域,里面的字母不区分大小写,range("A1:C1")也是一样的

后面的j是指你定义的变量,代表行数,如果你定义了for j=1 to 10,那么range("j"&j)就是 J1、J2、J3、、、、、J10,循环到10之后就停止了。

range("j"&j)--range("j"&1)--range("j1")

range("j"&j)--range("j"&2)--range("j2")

里面的&连接符是把J列标和变量1、2、3给连接起来

怎么用EXCEL的VBA脚本进行行的操作

Alt+F11,输入以下代码便可:

 

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

For i = 1 To 100 '获取第一行的单元格数量

If Cells(1, i).Value = "" Then Exit For

a = a + 1

Next i

 

For i = 1 To 100 '获取第二行的单元格数量

If Cells(2, i).Value = "" Then Exit For

b = b + 1

Next i

 

For i = 1 To b

For j = 1 To a

Cells(3, k + 1) = Cells(2, i) & "->" & Cells(1, j)

k = k + 1

Next j

Next i

End Sub

 

 

结果:

 

怎么用VBA调用EXCEL里的数据?

要调用某个CELL的数据,可以在VBA中写:(假设是B3单元)

Dim temp As String

...

temp = Range("B3").Value 或 temp = Cells(3,2).Value 或 temp = Cells(3, "B")

这里,即使EXCEL表格里是数字,到了VBA里面还是变成字符串。

然后,再判断temp的内容,用 if...then... 语句就可以了:

......

If temp = "yes" Then

.....

Else

If temp = "no" Then

.....

Else

.....

End If

End If

......

语句不多,好像没有必要写一个SUB TEXT()。