首頁>Club>
5
回覆列表
  • 1 # gentle7663701557860


    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如果錄入的資訊(姓名)在原來的表格在原來表格裡面已經存在,則會彈出提示資訊,之後進行選擇。

    如果選擇“是”則執行替換原來的資訊;如果選擇“否”,則會新增一行資訊;如果選擇“取消”,則不會錄入資訊。

  • 中秋節和大豐收的關聯?
  • 雞肉卷皮怎麼做?