当前位置:首页>维修大全>综合>

vba 录入语句

vba 录入语句

更新时间:2023-09-15 14:06:24

vba 录入语句


1/8在Excel表格表格的菜单栏上面点击【开发工具】,【Visual Basic】打开VBA编辑器。

2/8在VBA编辑器的菜单栏上面点击【插入】,【模块】。

3/8在代码框里面输入一下代码:

Sub MatchIput()

Dim i, j, m, k As Long '数据类型定义

Dim msg, style, title, ans

On Error Resume Next '如果运行过程中出错,则忽略

Set mysheet1 = ThisWorkbook.Worksheets("Sheet1") '定义工作表

Set mysheet2 = ThisWorkbook.Worksheets("Sheet2") '定义工作表

msg = "该用户信息已经存在,是否替换?"

style = vbYesNoCancel + vbDefaultButton3 '显示 “是” “否” “取消”三个按钮

title = "温馨提示"

m = Application.WorksheetFunction.Match(mysheet1.Cells(2, 2), mysheet2.Range("A1:A1000"), 0)

'计算单元格所在的位置

If m >= 1 Then '如果数据表里面已经存在,则弹出提示窗口,然后进行选择

ans = MsgBox(msg, style, title) '弹出提示

If ans = vbYes Then '如果选择“是”,则原来表格里面的数据将会被替换

For j = 1 To 4 '填充该单元格所在位置的1-4列

mysheet2.Cells(m, j) = mysheet1.Cells(j + 1, 2)

Next

End If

If ans = vbNo Then '如果选择“否”,则在原来表格里面找到空白的单元格写入

For k = 2 To 1000

If mysheet2.Cells(k, 1) = "" Then

For j = 1 To 4

mysheet2.Cells(k, j) = mysheet1.Cells(j + 1, 2)

Next

Exit For

End If

Next

End If

Else '如果不存在,则在原来数据表格里面找到一行空白进行填充

For k = 2 To 1000

If mysheet2.Cells(k, 1) = "" Then

For j = 1 To 4

mysheet2.Cells(k, j) = mysheet1.Cells(j + 1, 2)

Next

Exit For

End If

Next

End If

End Sub

4/8回到Sheet1工作表界面,点击菜单栏上面的【插入】,在形状里面选择“矩形”插入到表格上面,然后填充所需的颜色、文字。

5/8在已经绘制后的矩形图上面单击右键,选择“指定宏”。

6/8在“指定宏”对话框里面选择已经编写的VBA名称,如:MatchIput。

7/8在要录入信息的区域录入信息,然后点击“录入”即可录入信息。

8/8如果录入的信息(姓名)在原来的表格在原来表格里面已经存在,则会弹出提示信息,之后进行选择。

如果选择“是”则执行替换原来的信息;如果选择“否”,则会新增一行信息;如果选择“取消”,则不会录入信息。

更多栏目