Aktuell kann es Probleme bei der Anmeldung mit dem Chrome oder Edge Browser geben. Ihr müsstet in die Einstellungen des Browsers gehen und Cache, Cookies und sofern vorhanden, gespeicherte Passwörter vom CEF löschen oder alternativ auf einen anderen Browser ausweichen. Ursache sind vermutlich kürzliche Browserupdates.
x
Zum Sachverhalt ich bekomme Quartalsweise eine gesamt Personalliste diese muss ich in einer anderen Tabelle einlesen, da diese Übersicht mittlerweile über 500 Datensätze enthält ist das Vergleichen per Hand sehr aufwendig.
Ich würde gern diese beiden Tabellen per VBA mit einander Vergleichen, hierbei sollen neue Daten am ende der Tabelle eingefügt werden und abweichende Daten z.B. gelöscht oder geändert sollen farblich markiert werden.
Angehangen die Beispiel Tabelle ich hoffe die reicht so aus ich musste allerdings alle Namen raus nehmen.
Also in der Tabelle wird in dem Reiter Alpha-Liste die gesamt Personalliste eingelesen und dient als Bezug für die Gesamte Tabelle. Das wichtigste ist der Reiter EVA hier müssen alle Daten der Alpha liste auftauchen, diese wird Quartalsweise aktualisiert. Dementsprechend muss die EVA liste auch angepasst werden, wichtig hierbei das nicht einfach Daten gelöscht werden da die eingetragenen Daten in der EVA Liste 3 Jahre bestand haben. Sprich tauchen in der Alpha liste gewisse PersNr´n nicht mehr auf so sollen diese in der EVA liste Rot markiert werden. Tauchen in de Alphaliste neue PersNr´n auf so sollen diese einfach ans ende der EVA liste gestellt werde.
Bitte nicht wundern in den Reitern sind zum teil noch Schaltflächen und Makros von der eigentlichen Tabelle bitte einfach ignorieren.
11.01.2018, 14:37 (Dieser Beitrag wurde zuletzt bearbeitet: 11.01.2018, 14:40 von Wastl.)
Hi,
so?
Code:
Option Explicit
Sub vergleic() Dim ListEva Dim Listalfa Dim intI As Integer Dim intJ As Integer Dim SuchNr Dim stimmt As Boolean Dim Plus As Integer Dim Ende As Integer
' suchen nach gefülltem Ende in Eva Ende = ThisWorkbook.Sheets("EVA").Cells(Rows.Count, 1).End(xlUp).Row
'Aufgabenstellung fehlende in Alfa rot zu markieren Plus = 1 ListEva = ThisWorkbook.Sheets("EVA").Cells(4, 1).CurrentRegion Listalfa = ThisWorkbook.Sheets("Alpha-Liste").Cells(4, 1).CurrentRegion For intI = 4 To Ende SuchNr = ListEva(intI, 1) stimmt = 0 For intJ = 3 To UBound(Listalfa) If SuchNr = Listalfa(intJ, 2) Then stimmt = 1 Exit For Else End If Next intJ If intJ = UBound(Listalfa) + 1 And stimmt = 0 Then ThisWorkbook.Sheets("EVA").Cells(intI, 1).Font.Color = -16776961 End If Next intI
'Aufgabenstellung fehlende in Eva unten zu ergänzen For intJ = 3 To UBound(Listalfa) SuchNr = Listalfa(intJ, 2) stimmt = 0 For intI = 4 To Ende If SuchNr = ListEva(intI, 1) Then stimmt = 1 Exit For Else End If Next intI If intI = Ende + 1 And stimmt = 0 Then ThisWorkbook.Sheets("EVA").Cells(Ende + Plus, 1) = SuchNr Plus = Plus + 1 End If Next intJ
End Sub
Folgende(r) 1 Nutzer sagt Danke an Wastl für diesen Beitrag:1 Nutzer sagt Danke an Wastl für diesen Beitrag 28 • David Lange
Na, dann hebe den Schutz programmatisch temporär auf und setze ihn zum Schluss wieder. Alternative: Setze den Schutz im Workbook_Open mit dem Parameter UserInterfaceOnly:=True
Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)