對於很多人來說,這可能很容易,但我是VBA新手; 以下是我的代碼將多個Excel文件值添加到一個主表。雖然我這樣做,我想更新關鍵值的值。通過查找匹配鍵值來更新值
Sub tekSheetMerging()
Dim masterSheet As Worksheet
Set masterSheet = sheets("KoMKo")
'Variable to save the used Range of the master sheet
Dim usedRangeMaster As Integer
Dim ws As Worksheet
'loop through each worksheet in current workbook
For Each ws In Worksheets
'If sheetname contains "data" (UCase casts the Name to upper case letters)
If InStr(1, UCase(ws.Name), "DATA", vbTextCompare) > 0 Then
'calculate the used range of the master sheet
usedRangeMaster = masterSheet.UsedRange.SpecialCells(xlCellTypeLastCell).Row + 1
'Variable to save the used Range of the sub sheet
Dim usedRangeSub As Integer
'calculate the used range of the sub sheet
usedRangeSub = ws.UsedRange.SpecialCells(xlCellTypeLastCell).Row
'copy relevant range from the subsheet
ws.Range("C1:C" & usedRangeSub).Copy
'paste the copied range after the used range in column a
masterSheet.Range("A" & usedRangeMaster).PasteSpecial
End If
Next ws
End Sub
所以,現在我有一個Excel表,其中包含列A中的鍵值和該行中其他列中的其他值。當我找到一個鍵是重複的鍵值之前添加的,我想刪除該單元格及其完整的行。通過這樣做,我想更新關於它們的關鍵值的值。如果我要添加另一個鍵,它應該留在列表中,儘管沒有問題。
我該怎麼做?
上述代碼是否正常工作或者您是否遇到錯誤?如果是這樣,請給我們錯誤代碼/消息,並在哪一行發生錯誤。如果代碼運行沒有錯誤,那麼請詳細說明(1)代碼的當前結果,以及(2)上述代碼的預期結果(以及它的不同之處)。目前我只在你的代碼中看到'.Copy'和'.PasteSpecial',我想知道你希望如何實現你正在討論的'.Delete'。 – Ralph