EXCEL VBA窗体化编程
1、1,打开微软excel2007,点击红圈打开
2、2、将宏全性设置为“启用所有宏”。
3、3、点击红圈,打开VBA编程界面
4、4、插入—>用户窗体,出现如下界面
5、5、按图中caption 的Userform1 修改为“日记账登账界面”
6、6、鼠标双击窗体红圈位置
7、7、按图中1步在框是选择 Initialize ,出现第2这个过程代码
8、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、9、双击userform1,如图红圈,返回窗体
10、10、在窗体界面下,点击工具箱中的标签(如图红圈),再在窗体上生成“标签”如图蓝色圈位置
11、11、点击窗体中的“label1”,再在左边属性窗口中的caption的值“label1”修改为“日期:”,如此类推,生成“摘要:”、“收/付:”、“金额”,效果图如下
12、12、再按照添加“标签”的方法,添加4个文本框和1个“按钮”键,效果如下图:
13、13、按图顺序,1、点击按键;2、在左边属性框输入“确定”
14、14、点击窗体中的“按键”,出现过程代码,如图
15、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、16、保存文件,文件后缀为选择.xlsm格式,关闭文件再点击打开这文件,看效果如何?日记账程序可以运行了,你可以输入数据了。