Thema Datum  Von Nutzer Rating
Antwort
Rot Zwei Tabellen vergleichen
13.06.2018 07:40:04 Marccore
NotSolved
13.06.2018 13:45:57 Gast27205
NotSolved
13.06.2018 19:13:29 Günther Mumme
NotSolved

Ansicht des Beitrags:
Von:
Marccore
Datum:
13.06.2018 07:40:04
Views:
796
Rating: Antwort:
  Ja
Thema:
Zwei Tabellen vergleichen

Hallo Leute,
ich hoffe ihr könnt mir helfen.
Ich habe schon Ewigkeiten das Net und das Forum durchsucht und ein paar Sachen gefunden.
Leider bin ich nicht an mein Ziel gekommen.

Ich habe eine Excel Datei mit zwei Blättern.

Jetzt möchte ich Tabelle 1 Spalte 2 mit
Tabelle zwei Spalte 4 vergleichen.
Dabei will ich ermitteln welche Werte ich Zellen von Tabelle 2, schon in Tabelle 1 vorhanden sind.
Und wenn diese vorhanden sind will ich in entsprechender Zeile , in Spalte 20 ein X setzten.

Genau das habe ich schon mit VBA gemacht,
das ganze klappt auch ganz gut.

Nur leider sind es pro Tabelle 200.000 Datensätze und das dauert mit VBA 25h.

Habt Ihr eine möglichkeit dieses schneller zu machen.

Grüße
Marco

 

''++++++++++++++++++++++++++++++++++++++++++++++++++++++++++        Deklartion
Dim Wks1 As Worksheet
Dim lngCounterColum As Long
Dim lngCounterRow_Clean As Long
Dim lngCounterRow_FileAll As Long
Dim CkeckBit As Boolean
Dim EndRow_Clean As Long
Dim EndColumn_Clean As Long
Dim EndRow_FileAll As Long
Dim EndColumn_FileAll As Long
Dim error As Integer
Dim OK As Integer
Dim Row As Long
Dim ColumnART As Long
Dim ColumnERP As Long
Dim Test1 As String
Dim Test2 As String
Dim FindString As String
Dim Rng As Range
Dim Cell As String
''++++++++++++++++++++++++++++++++++++++++++++++++++++++++++        Deklartion

Sub Search()


For Wks = 1 To Worksheets.Count
    If Worksheets(Wks).Name = "PDM_Daten" Then
    
            
        Set Wks_Clean = Sheets("PDM_Daten")
        Set Wks_FileAll = Sheets("fileAll00-0F")
        
        With Wks_Clean
        EndRow_Clean = .Cells(Rows.Count, 2).End(xlUp).Row                        '' Ermitteln letzte Zeile
        EndColumn_Clean = .Cells(2, Columns.Count).End(xlToLeft).Column           '' Ermittel letzte Spalte
        
        End With
        
        With Wks_FileAll
        EndRow_FileAll = .Cells(Rows.Count, 4).End(xlUp).Row                        '' Ermitteln letzte Zeile
        EndColumn_FileAll = .Cells(2, Columns.Count).End(xlToLeft).Column           '' Ermittel letzte Spalte
        
        End With


            For lngCounterRow_Clean = 1 To EndRow_Clean
            
        
                    FindString = Wks_Clean.Cells(lngCounterRow_Clean, 2).Value
                    
                    If Trim(FindString) <> "" Then
                        With Wks_FileAll.Range("D:D")
                            Set Rng = .Find(What:=FindString, _
                                            After:=.Cells(.Cells.Count), _
                                            LookIn:=xlValues, _
                                            LookAt:=xlWhole, _
                                            SearchOrder:=xlByRows, _
                                            SearchDirection:=xlNext, _
                                            MatchCase:=False)
                                                        
                            If Not Rng Is Nothing Then
                                Cell = Rng.Address
                                Cell = Right(Cell, Len(Cell) - 3)
                                Wks_FileAll.Cells(Cell, 20).Value = "X"
                                Wks_FileAll.Cells(2, 21).Value = lngCounterRow_Clean
                            ''Else
                                ''MsgBox "Nothing found"
                            End If
                        End With
                    End If
                 



                ''Next lngCounterRow_FileAll
    
            
            Next lngCounterRow_Clean
        
        
        
        
        
        
        Application.ScreenUpdating = False                                  '' Screen Update
           

        
End If
     


Next Wks

Exit Sub

End Sub

 


Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
Rot Zwei Tabellen vergleichen
13.06.2018 07:40:04 Marccore
NotSolved
13.06.2018 13:45:57 Gast27205
NotSolved
13.06.2018 19:13:29 Günther Mumme
NotSolved