EXCEL VBA窗体化编程
excel日常操作足以应付大量的数据处理需求?我告诉您,excel日常操作的数据处理能力的确很强大,但我个人认为,没有学习vba,你的excel操作能力不算高手。学会vba 这真是excel的另一高度,而熟悉VBA窗体化编程才算excel的进阶高手。下面介绍一下VBA窗体制作简单的日记登记小程序。
1,打开微软excel2007,点击红圈打开
2、将宏全性设置为“启用所有宏”。
3、点击红圈,打开VBA编程界面
4、插入—>用户窗体,出现如下界面
5、按图中caption 的Userform1 修改为“日记账登账界面”
6、鼠标双击窗体红圈位置
7、按图中1步在框是选择 Initialize ,出现第2这个过程代码
8、在工程代码中输入下面的代码
Private Sub UserForm_Initialize()
Application.WindowState = xlMaximized
ActiveWindow.WindowState = xlMaximized
UserForm1.Height = Application.Height
UserForm1.Width = Application.Width
Me.Left = 0
Me.Top = 0
End Sub
下图红圈中的代码
9、双击userform1,如图红圈,返回窗体
10、在窗体界面下,点击工具箱中的标签(如图红圈),再在窗体上生成“标签”如图蓝色圈位置
11、点击窗体中的“label1”,再在左边属性窗口中的caption的值“label1”修改为“日期:”,如此类推,生成“摘要:”、“收/付:”、“金额”,效果图如下
12、再按照添加“标签”的方法,添加4个文本框和1个“按钮”键,效果如下图:
13、按图顺序,1、点击按键;2、在左边属性框输入“确定”
14、点击窗体中的“按键”,出现过程代码,如图
15、要过程中输入如下代码:
Dim k As Integer
With ThisWorkbook.Sheets("sheet1")
If .Cells(1, 1) = "" Then
.Cells(1, 1) = "日期"
.Cells(1, 2) = "摘要"
.Cells(1, 3) = "借方"
.Cells(1, 4) = "贷方"
.Cells(1, 5) = "余额"
End If
End With
k = ThisWorkbook.Sheets("sheet1").End(xlUp).Row
With ThisWorkbook.Sheets("sheet1")
.Cells(k + 1, 1) = CDate(Me.TextBox1.Value)
.Cells(k + 1, 2) = Me.TextBox2.Value
If Me.TextBox3.Value = "收" Then
.Cells(k + 1, 3) = Val(Me.TextBox4.Value)
Else
.Cells(k + 1, 4) = Val(Me.TextBox4.Value)
End If
If k = 1 Then
.Cells(k + 1, 5) = Val(.Cells(k + 1, 3)) - Val(.Cells(k + 1, 4))
Else
.Cells(k + 1, 5) = Val(.Cells(k + 1, 3)) - Val(.Cells(k + 1, 4)) + Val(.Cells(k, 5))
End If
End With
MsgBox "本笔已录入"
不容质疑我的代码是否正确,绝对运行正常(我编程14年以上,熟练)效果如下:
16、保存文件,文件后缀为选择.xlsm格式,关闭文件再点击打开这文件,看效果如何?日记账程序可以运行了,你可以输入数据了。
版权声明:本站【趣百科】文章素材来源于网络或者用户投稿,未经许可不得用于商用,如转载保留本文链接:https://www.qubaik.com/life/177607.html