本文主要是介绍VBA 初级 进阶 - 插入客户资料,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
1: 先看一下界面:
主要是实现:插入功能:
学习的知识点:
1:从最后一行插入:
Dim s1%
s1 =[a1048576].End(xlUp).Row + 1
注意,如果是以前的excel2003的版本,就是:
s1 = [a65536].End(xlUp).Row+ 1
2:指定到特定的worksheet:
DimwkSheet As Worksheet '定义工作表变量
Set wkSheet = ThisWorkbook.Worksheets("客户资料表")
3: 插入输入的字段:
wkSheet.Cells(s1, 1) = TextBox1.Text
4: 注意,插入后,要退出插入的form,这样友好点,所以在这个CommandButton1_Click()
里面最后要有unload me 声明。
5:今天调试form1的时候,有代码如下:
UserForm1.Show 0 报错,后来把后面的 0 去掉就可以了。
改成:UserForm1.Show
6: Combobox 里的增加的list, 要通过Userform_Initialize 来实现,否则编译后是空白
具体通过下面的这个就可以实现:
7:还有就是combobox 里面的值要怎么才能插入到Excel中:
wkSheet.Cells(s1, 3) =ComboBox1.Text
8:关于输入的值: 必须是数字,而且超过6位报警:
Dim strTemp As String
If Len(TextBox6.Text) > 0 Then '判断文本框是否有数值
'取得文本框最后一位数值
strTemp = Mid(TextBox6.Text,Len(TextBox6.Text), 1)
'判断最后一位数值是否是数字,不是数字将给出警告
If Asc(strTemp) < 48 Or Asc(strTemp)> 57 Then
MsgBox "请输入数字!"
'重新给文本框赋值,去掉最后一位不是数字的值
TextBox6.Text = Mid(TextBox6.Text,1, Len(TextBox4.Text) - 1)
'将光标重新放置在文本框内,等待用户继续输入
TextBox6.SetFocus
End If
'判断邮编是否超过6位
If Len(Trim(TextBox6.Text)) > 6 Then
'超过6位时给出警告
MsgBox "邮政编码过长,请修改!"
'将文本框的数值清空
TextBox6.Text = ""
'将光标重新放置在文本框内,等待用户继续输入
TextBox6.SetFocus
End If
End If
这篇关于VBA 初级 进阶 - 插入客户资料的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!