Dies könnte für viele von Ihnen einfach sein, aber ich bin neu in VBA; Im Folgenden finden Sie meinen Code zum Hinzufügen mehrerer Excel-Dateiwerte in einem Mastersheet. Während ich dies tue, möchte ich die Werte bezüglich ihres Schlüsselwertes aktualisieren.Aktualisieren von Werten durch Auffinden übereinstimmender Schlüsselwerte
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
So, jetzt habe ich eine Excel-Tabelle, die einen Schlüsselwert in Spalte A und andere Werte in anderen Spalten in dieser Zeile enthält. Wenn ich einen Schlüssel finde, der ein Duplikat des zuvor hinzugefügten Schlüsselwertes ist, möchte ich diese Zelle und ihre komplette Zeile löschen. Auf diese Weise möchte ich die Werte bezüglich ihres Schlüsselwerts aktualisieren. Wenn ich einen anderen Schlüssel hinzufügen würde, sollte es in der Liste ohne Problem bleiben.
Wie kann ich das tun?
Funktioniert der obige Code oder erhalten Sie einen Fehler? Wenn ja, geben Sie uns bitte den Fehlercode/Nachricht und an welcher Zeile der Fehler auftritt. Wenn der Code ohne Fehler läuft, dann erläutern Sie bitte (1), was das aktuelle Ergebnis des Codes ist und (2) was das erwartete Ergebnis des obigen Codes ist (und wie es sich unterscheidet). Momentan sehe ich nur '.Copy' und' .PasteSpecial' in deinem Code und ich frage mich, wie du das '.Delete' erreichen willst, von dem du in deinem Beitrag sprichst. – Ralph