Registriert seit: 17.04.2014
Hallo,
Ich bräuchte einen Vba code.
Alles was ist Tabelle 2 Spalte A egal ob Text oder Zahl steht, soll in Tabelle 1 Spalte A die Zeile löschen und dann nach rutschen. Wäre sowas möglich? Ca. 54000zeilen muss er in der Tabelle 1 suchen.
Wäre supi von euch.
Registriert seit: 10.04.2014
Version(en): 2016 + 365
26.08.2015, 21:50
(Dieser Beitrag wurde zuletzt bearbeitet: 26.08.2015, 21:51 von Rabe.)
Hi Jürgen,
(26.08.2015, 21:28)Jürschen175 schrieb: Ich bräuchte einen Vba code.
Alles was ist Tabelle 2 Spalte A egal ob Text oder Zahl steht, soll in Tabelle 1 Spalte A die Zeile löschen und dann nach rutschen. Wäre sowas möglich? Ca. 54000zeilen muss er in der Tabelle 1 suchen.
kannst Du mal die Datei mit einem (kleinen) Teil der Zeilen zur Verfügung stellen?
Im Prinzip: wie ist es und wie soll es werden?
Hier steht, wie es geht:
Zur Vorwarnung: Anstatt Screenshots ist eine Datei oder ein Ausschnitt besser!
"Du gehst ja auch nicht in die Werkstatt und gibst ein Foto Deines kaputten Autos ab!"
Also stelle bitte (D)eine (Beispiel-)Tabelle als Excel-Datei zur Verfügung oder stelle die relevanten Ausschnitte hier dar, siehe die als
Wichtige Themen: markierten Forums-Beiträge.
Die
farbigen Texte sind anklickbare Links:
Beitrag 1
WICHTIG: Tabellenausschnitte und VBA-Codes im Forum einstellen Beitrag 2
WICHTIG: Arbeitsmappen zur Verfügung stellen
Registriert seit: 11.04.2014
Version(en): Office 2007
Hallo,
mal ein Ansatz.
Code:
Option Explicit
Sub prcLoeschen()
Dim rngTreffer As Range
Dim lngC As Long
'Tabellennamen bitte anpassen, Werte werden aus der Tabelle2 ab Zeile 2 genommen und falls vorhanden in der Tabelle1 gelöscht.
With Worksheets("Tabelle2")
For lngC = 2 To .Cells(.Rows.Count, 1).End(xlUp).Row
Set rngTreffer = Worksheets("Tabelle1").Columns(1).Find(.Cells(lngC, 1).Value, LookIn:=xlValues, lookat:=xlWhole)
If Not rngTreffer Is Nothing Then Worksheets("Tabelle1").Rows(rngTreffer.Row).Delete
Next lngC
End With
End Sub
Gruß Stefan
Win 10 / Office 2016
Registriert seit: 17.04.2014
Hallo zusammen,
anbei eine Beispieldatei.
[url=
Dateiupload bitte im Forum! So geht es: Klick mich!]
HalloMK_1521-95-95-99Friedendiese Daten in der Tabelle2 sollen in Tabelle1 gelöscht werden.
Registriert seit: 11.04.2014
Version(en): Office 2007
Hallo,
ich habe meinen Code in deiner Datei getestet. Es funktioniert.
Gruß Stefan
Win 10 / Office 2016
Registriert seit: 17.04.2014
(27.08.2015, 19:36)Steffl schrieb: Hallo,
ich habe meinen Code in deiner Datei getestet. Es funktioniert.
Hallo Stefan,
Danke dir. Werde morgen es gleich testen
Registriert seit: 17.04.2014
Hallo
leider geht es nicht. Ich habe deinen Code auf Tabelle6 umgeändert und das er die in der WH25 Spalte 2 löscht.
Leider ohne Erfolg. Was mach ich falsch?
Anschließend will ich das der Code das Tabellenblatt Löschungen auch in der WH 25 löscht.
Dazu stelle ich den Code einfach um oder?
Dateiupload bitte im Forum! So geht es: Klick mich!
Registriert seit: 11.04.2014
Version(en): Office 2007
Hallo,
die Begriffe sind also mehrfach in der Tabelle WH25 vorhanden? Wenn ja, versuchs mal so
Code:
Sub prcLoeschen()
Dim rngTreffer As Range, rngBereich As Range
Dim lngC As Long
Dim strAdresse As String
'Tabellennamen bitte anpassen, Werte werden aus der Tabelle2 ab Zeile 2 genommen und falls vorhanden in der Tabelle1 gelöscht.
With Worksheets("Tabelle6")
For lngC = 2 To .Cells(.Rows.Count, 1).End(xlUp).Row
Set rngTreffer = Worksheets("WH25").Columns(2).Find(.Cells(lngC, 1).Value, LookIn:=xlValues, lookat:=xlWhole)
If Not rngTreffer Is Nothing Then
strAdresse = rngTreffer.Address
Set rngBereich = rngTreffer
Do
Set rngBereich = Union(rngBereich, rngTreffer)
Set rngTreffer = Worksheets("WH25").Columns(2).FindNext(rngTreffer)
Loop While rngTreffer.Address <> strAdresse
rngBereich.EntireRow.Delete
Set rngBereich = Nothing
End If
Next lngC
End With
End Sub
Gruß Stefan
Win 10 / Office 2016
Registriert seit: 17.04.2014
29.08.2015, 13:12
(Dieser Beitrag wurde zuletzt bearbeitet: 29.08.2015, 15:58 von Rabe.
Bearbeitungsgrund: Zitat gekürzt, Original steht ein Beitrag höher
)
(28.08.2015, 22:26)Steffl schrieb: die Begriffe sind also mehrfach in der Tabelle WH25 vorhanden? Wenn ja, versuchs mal so
Hallo Stefan,
Besten Dank.
Ja können öfters vorkommen .
Im test Blatt funktioniert es super. Werde Montag in der Arbeit gleich probieren.
Besten Dank
Registriert seit: 17.04.2014
Hallo Stefan.
Leider stürzt excel bei cca.20000 zeilen ab
Bei 100 zeilen keine probleme.
Woran liegt das?
Kannst du mir helfen