excel表格_excel函数公式大全_execl从入门到精通
EXCEL用户窗体2024-02-28 13:03:08
今天要给大家讲VBA的用户窗体
我VBA的启蒙就是用户窗体,
用户窗体的作用体现你在输入数据方面,
当时我碰到的情况是,我有一张10000行的数据库,每天我都得填入很多很多得数据,横向纵向找到表头,然后输入数据,虽然花的时间不多,但是着实让人看了满版得数据就头晕眼花的.
于是乎,我到处找方法,结果找到了用户窗体,
好处1:收放自如,不占篇幅空间.
好处2:不需要翻到最下面一行(例如我就是第将近第10000行),在窗体中输入数据,默认放置在最后一行(或者你想要的某个位置)
用户窗体中的控件和比较多,今天这个视频中主要给大家介绍3种控件的用法:
文本框
复合框
选择框
而代码需要思路清晰,特别是在大型的用户窗体制作当中,一些变量的设定需要反复被调取.
其中最核心的其实就是数据摆放的位置,数行是核心.
视频中的讲课件提供发放,需要的可以找我.
本章分为两个视频:
视频1:
02:59
视频2:
如果自行模拟去做,参考代码如下:
Private Sub CommandButton1_Click()Dim 单号重复 As StringDim 目标行数 As Integer目标行数 = Sheets("清单").Range("E1").Value + 1单号重复 = txt_计量单号If Application.WorksheetFunction.CountIf(Sheets("数据").Range("B列"), 单号重复) > 0 ThenMsgBox "此单号已存在", 0, "错误信息"Exit SubEnd If
Sheets("数据").Range("A6").Offset(目标行数, 1) = txt_计量单号Sheets("数据").Range("A6").Offset(目标行数, 0) = 目标行数Sheets("数据").Range("A6").Offset(目标行数, 2) = Combo_品名Sheets("数据").Range("A6").Offset(目标行数, 3) = Combo_收货单位Sheets("数据").Range("A6").Offset(目标行数, 4) = txt_运输方式Sheets("数据").Range("A6").Offset(目标行数, 5) = txt_车船号Sheets("数据").Range("A6").Offset(目标行数, 6) = txt_重量Sheets("数据").Range("A6").Offset(目标行数, 7) = txt_单价Sheets("数据").Range("A6").Offset(目标行数, 8) = Val(txt_重量) * Val(txt_单价)Sheets("数据").Range("A6").Offset(目标行数, 9) = txt_到站
If option_未到货 = False Then
Sheets("数据").Range("A6").Offset(目标行数, 10) = "到货"ElseSheets("数据").Range("A6").Offset(目标行数, 10) = "未到货"End If
MsgBox "输入完成", 0, "信息"
'Unload 用户窗体输入框架
End Sub
Private Sub CommandButton2_Click()Unload 用户窗体输入框架End Sub
利用每日的输入数据,我们可以结合DASH BOARD做成这样的样子:
当然这是工业化的流程DASH BOARD,通过时间转换,可以查找任意一天的槽罐显示,是不是很酷.
标签: Excel如何做交互窗体