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)
Exit For
Else '如果不存在,則在原來資料表格裡面找到一行空白進行填充
End Sub
4/8回到Sheet1工作表介面,點選選單欄上面的【插入】,在形狀裡面選擇“矩形”插入到表格上面,然後填充所需的顏色、文字。
5/8在已經繪製後的矩形圖上面單擊右鍵,選擇“指定宏”。
6/8在“指定宏”對話方塊裡面選擇已經編寫的VBA名稱,如:MatchIput。
7/8在要錄入資訊的區域錄入資訊,然後點選“錄入”即可錄入資訊。
8/8如果錄入的資訊(姓名)在原來的表格在原來表格裡面已經存在,則會彈出提示資訊,之後進行選擇。
如果選擇“是”則執行替換原來的資訊;如果選擇“否”,則會新增一行資訊;如果選擇“取消”,則不會錄入資訊。
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如果錄入的資訊(姓名)在原來的表格在原來表格裡面已經存在,則會彈出提示資訊,之後進行選擇。
如果選擇“是”則執行替換原來的資訊;如果選擇“否”,則會新增一行資訊;如果選擇“取消”,則不會錄入資訊。