Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1728to1732
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Fehlende Finden und Ergänzen / löschen

Fehlende Finden und Ergänzen / löschen
15.12.2019 09:34:50
Gerhard
Guten Morgen!!!
Habe 2 Tabellen die miteinander verglichen und ergänzt werden sollen.
Sheet "Tabelle" enthält in Spalte C Namen , in Sheet "IMPORT" in Spalte A ebenfalls Namen.
Nun soll Sheet "Tabelle" mit Sheet "Import" abgeglichen werden und fehlende Namen UND Gruppe (Spalte B) in Sheet "Tabelle" ergänzt werden.
Danach soll Sheet Tabelle mit Sheet Import verglichen werden und nicht vorhandene Namen in Sheet Import in Sheet Tabelle gelöscht werden OHNE die Anzahl der Zeilen oder das Aussehen der Tabelle zu verändern.
Hab ne Beispieltabelle mit angefügt ind der Mehr Namen im Sheet Import sind und ein Name fehlt.
https://www.herber.de/bbs/user/133785.xlsx
Wäre toll wenn mir jemand helfen könnte!
Schönen Sonntag euch allen noch
Greetz Gerhard

11
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: zu Teil 1 Deiner Fragestellung ...
15.12.2019 10:09:50
neopa
Hallo Gerhard,
... dies wäre mit folgender Formel in C40 realisierbar:
=WENNFEHLER(INDEX(IMPORT!A:A;AGGREGAT(15;6;ZEILE(IMPORT!A$2:A99)/
(IMPORT!A$2:A99"")/(ZÄHLENWENN(C$3:C39;IMPORT!A$2:A99)=0);ZEILE(C1)));"")

und diese weit genug nach unten ziehend kopieren.
Zu "... OHNE die Anzahl der Zeilen oder das Aussehen der Tabelle zu verändern" was genau meinst Du damit?
Eine Möglichkeit wäre meinerseits (ohne VBA), diese Datenzeilen entweder zu filtern und zu löschen oder nur auszufiltern oder mit bedingter Formatierung unsichtbar darzustellen.
Gruß Werner
.. , - ...
Anzeige
AW: zu Teil 1 Deiner Fragestellung ...
15.12.2019 10:34:36
Gerhard
Danke Werner.
Das funktioniert ganz gut (ich habe noch nie so "Brocken" an Formel gesehen ;) )
Aber... Sorry das ich es ned erwähnt habe... Dieser "Abgleich" passiert jede Woche... Mal sind es mehr Namen , mal weniger. Was ich damit sagen will, es kann durchaus auch mal sein, das die Namensliste kürzer als Zeile C40 sein kann.
"OHNE die Anzahl der Zeilen oder das Aussehen der Tabelle zu verändern"
Damit meinte ich, das "Zeilen löschen" ned genommen werden sollte, da sich die Tabelle ja dann verkürzt. Es müssen immer 50 Plätze sein und die Tabelle sollte keine Lücken enthalten.
Gruß
Anzeige
AW: dann VBA-Lösung notwendig, thread offen owT
15.12.2019 10:40:04
neopa
Gruß Werner
.. , - ...
AW: dann VBA-Lösung notwendig, thread offen owT
15.12.2019 13:20:10
Gerhard
Trotzdem Danke für deine Hilfe, Werner!
Kann mir da jemand mit ner VBA Lösung evtl helfen?
Gruss
AW: Fehlende Finden und Ergänzen / löschen
15.12.2019 18:55:09
Nepumuk
Hallo Gerhard,
so?
Option Explicit

Public Sub Abgleichen()
    Dim avntValues As Variant
    Dim ialngIndex As Long
    Dim objCell As Range
    With Worksheets("IMPORT")
        avntValues = .Range(.Cells(2, 1), .Cells(.Rows.Count, 2).End(xlUp)).Value2
    End With
    With Worksheets("Tabelle")
        For ialngIndex = LBound(avntValues) To UBound(avntValues)
            Set objCell = .Columns(3).Find(What:=avntValues(ialngIndex, 1), _
                LookIn:=xlValues, LookAt:=xlWhole, MatchCase:=True)
            If objCell Is Nothing Then
                .Cells(.Rows.Count, 3).End(xlUp).Offset(1, 0).Resize(1, 2).Value = _
                    Array(avntValues(ialngIndex, 1), avntValues(ialngIndex, 2))
            Else
                Set objCell = Nothing
            End If
        Next
    End With
    With Worksheets("Tabelle")
        avntValues = .Range(.Cells(3, 3), .Cells(.Rows.Count, 3).End(xlUp)).Value2
    End With
    With Worksheets("IMPORT")
        For ialngIndex = LBound(avntValues) To UBound(avntValues)
            Set objCell = .Columns(1).Find(What:=avntValues(ialngIndex, 1), _
                LookIn:=xlValues, LookAt:=xlWhole, MatchCase:=True)
            If objCell Is Nothing Then
                Worksheets("Tabelle").Cells(ialngIndex + 2, 3).Resize(1, 2).Value = Empty
            Else
                Set objCell = Nothing
            End If
        Next
    End With
End Sub

Gruß
Nepumuk
Anzeige
AW: Fehlende Finden und Ergänzen / löschen nepumuk
16.12.2019 09:20:21
Gerhard
Hallo Nepumuk
Danke erstmal für deine Hilfe.
Als ich es das erste mal probiert habe, hats eigentlich funktioniert.
Ich habe lediglich die Zellen die auf Sheet Tabelle gelöscht werden sollen, um 2 weitere Zellen erweitert.
Wenn ich jetzt auf abgleichen drücke entfernt er mir zwar die in Sheet IMPORT nicht mehr vorhandenen, fügt mir aber die in Sheet IMPORT neu hinzugekommenen nicht mehr auf Sheet Tabelle ein.
Ich habe dir mal meine Mappe mi tangefügt. Vllt findest du meinen Fehler ja...
https://www.herber.de/bbs/user/133800.xlsm
Danke
Anzeige
AW: Fehlende Finden und Ergänzen / löschen nepumuk
16.12.2019 09:44:42
Nepumuk
Hallo Gerhard,
unterhalb der Tabelle "Tabelle" befinden sich Einträge in weiser Schrift. Lösch mal alles von Zeile 53 bis 100 (Entf).
Gruß
Nepumuk
AW: Fehlende Finden und Ergänzen / löschen nepumuk
16.12.2019 11:43:27
Gerhard
*facepalm...
Super danke...
Darf ich dir noch ne Frage stellen?
Aus der Spalte H soll der höchste Wert ermittelt werden und in Sheet "Seasonende" Zelle E11 geschrieben werden, aber nur wenn der neue Wert höher ist, als der in Zelle E11 schon drin steht.
Zum Saisonbeginn steht dort der Wert 0
Wäre toll wenn da noch ne Lösung für mich hättest ;)
LG Gerhard
AW: Fehlende Finden und Ergänzen / löschen nepumuk
16.12.2019 12:45:09
Nepumuk
Hallo Gerhard,
teste mal:
Option Explicit

Public Sub MaximumFinden()
    Dim lngMaximum As Long
    With Worksheets("Tabelle")
        lngMaximum = Application.Max(.Range(.Cells(3, 8), .Cells(52, 8)))
    End With
    With Worksheets("Seasonende")
        If .Cells(11, 5).Value < lngMaximum Then .Cells(11, 5).Value = lngMaximum
    End With
End Sub

Gruß
Nepumuk
Anzeige
AW: Fehlende Finden und Ergänzen / löschen nepumuk
16.12.2019 13:28:43
Gerhard
VIELEN DANK!!!
Auf die klitzekleine Gefahr hin, das ich nerve ;)
Eine Frage habe ich noch, dann geb ich Ruhe, versprochen!!!
Wenn ich zu dem gefundenen größten Wert noch den dazugehörigen Namen aus Sheet Tabelle Spalte C haben will, was muss da noch angefügt werden?
Nicht falsch verstehen. Ich wills ja lernen und mir den Code immer erst ansehen , in der Hoffnung es selbst ergänzen zu können...Was leider nicht immer der Fall ist :(
Gruß Gerhard
AW: Fehlende Finden und Ergänzen / löschen nepumuk
16.12.2019 13:58:27
Nepumuk
Hallo Gerhard,
so?
Option Explicit

Public Sub MaximumFinden()
    Dim lngMaximum As Long
    Dim objCell As Range
    With Worksheets("Tabelle")
        lngMaximum = Application.Max(.Range(.Cells(3, 8), .Cells(52, 8)))
        Set objCell = .Columns(8).Find(What:=lngMaximum, LookIn:=xlValues, LookAt:=xlWhole)
    End With
    With Worksheets("Seasonende")
        If .Cells(11, 5).Value < lngMaximum Then
            .Cells(11, 5).Value = lngMaximum
            .Cells(11, 6).Value = objCell.Offset(0, -5).Value2
        End If
    End With
End Sub

Gruß
Nepumuk
Anzeige

301 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige