Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1884to1888
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

Zelleninhalte Sheet1 in Sheet2 finden

Zelleninhalte Sheet1 in Sheet2 finden
24.05.2022 12:58:35
Kev

Hallo zusammen,
ich habe mich in den letzten Tagen vermehrt mit Macros und der Userform befasst und bin begeistert von diesem Forum. Nun bin ich auf ein Problem gestoßen zu dem ich leider nichts finde und auch über die Hilfe nicht weiter komme. Es wäre super, wenn mir hierbei jemand helfen würde. Es geht um folgendes:
Ich habe eine Arbeitsmappe mit Tabellenblatt 1 ("Materials") und Tabellenblatt 3 ("Finish Codes"). Im Tabellenblatt ("Materials") stehen in Spalte D ab Zeile 6 unterschiedlichste Texte (ebenfalls ab und an leere Zeilen dazwischen). Im Tabellenblatt ("Finish Codes") stehen in Spalte A von mir vorgegebene Texte, die ich bei Bedarf entsprechend erweitern kann. Nun soll jeder wert in der Tabelle ("Materials") ab der genannten Zelle "D6" bis zur letzten Zeile mit den Vorgaben in Tabellenblatt ("Finish Codes") verglichen werden. Wenn der Text im Tabellenblatt ("Materials") nicht in der Spalte A vom Tabellenblatt ("Finish Codes") aufgeführt ist, soll die entsprechende Zelle in der Tabelle ("Materials") rot markiert werden. Mein Ansatz ist folgender:


    Dim wks As Worksheet
Dim var As Variant
Dim iRow As Integer
Set wks = Worksheets("Finish Codes")
leZeile = Cells(Rows.Count, 4).End(xlUp).Row
For iRow = 6 To leZeile
var = Application.Match(Cells(iRow, 4).Value, wks.Columns(1), 0)
If IsError(var) _
And Cells(iRow, 4).Value <> "" Then
Cells(iRow, 4).Interior.ColorIndex = 3
End If
Next iRow
Soweit funktioniert das auch, aber er beachtet leider die Groß und Kleinschreibung hierbei nicht. Gibt es eine Möglichkeit damit der Inhalt der Zellen 1:1 überprüft werden, inkl. der Groß und Kleinschreibung?

Vielen Dank bereits im voraus.

Liebe Grüße

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hi Kev,

versuch mal so, ungetestet

Sub test()
Dim lshFC As Worksheet, lloRowFC As Long, lloRowM As Long, lboExist As Boolean
Set lshFC = Sheets("Finish Codes")
With Sheets("Materials")
For lloRowM = 6 To .Cells(.Rows.Count, 4).End(xlUp).Row
For lloRowFC = 1 To 1000 'beginnt in "Finish Codes" in Zeile 1, sucht bis Zeile 1000 --> wenn Start/Endzeile für "Finish Codes" nicht passt, dann anpassen!
If .Range("D" & lloRowM).Value <>"" And LCase(.Range("D" & lloRowM).Value) = LCase(lshFC.Range("A" & lloRowFC).Value) Then
lboExist = True
Exit For
End If
Next
If lboExist = True Then
lboExist = False
Else
.Range("D" & lloRowM).Interior.ColorIndex = 3
End If
Next
Next
Set lshFC = Nothing
End Sub
Hilfts?

Ciao
Thorsten

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hi Thorsten,
ich hab deinen Code mal probiert. Musste das letzte Next durch End With ersetzten.

    Dim lshFC As Worksheet, lloRowFC As Long, lloRowM As Long, lboExist As Boolean
Set lshFC = Sheets("Finish Codes")
With Sheets("Materials")
For lloRowM = 6 To .Cells(.Rows.Count, 4).End(xlUp).Row
For lloRowFC = 1 To 1000 'beginnt in "Finish Codes" in Zeile 1, sucht bis Zeile 1000 --> wenn Start/Endzeile für "Finish Codes" nicht passt, dann anpassen!
If .Range("D" & lloRowM).Value <> "" _
And LCase(.Range("D" & lloRowM).Value) = LCase(lshFC.Range("A" & lloRowFC).Value) Then
lboExist = True
Exit For
End If
Next
If lboExist = True Then
lboExist = False
Else
.Range("D" & lloRowM).Interior.ColorIndex = 3
End If
Next
End With
Set lshFC = Nothing
Leider markiert er leere Zellen, wobei ich jetzt auch nicht herausfinde, warum das so ist, weil du es ja durch

If .Range("D" & lloRowM).Value <> ""

verhinderst, oder?

Aber das generelle Problem, dass die Zellen 1:1 verglichen werden, ist leider damit auch nicht gelöst. Die Zellen in Tabelle "Materials" werden nicht markiert, wenn die Groß/Kleinschreibung anderst ist, als in Tabelle "Finish Codes".

Liebe Grüße
Kevin

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hi Kevin

dann zeig bitte per Upload ne Bsp-Datei mit Bsp-Daten in den richtigen Zeilen/Spalten/Tabellenblättern.

Ciao
Thorsten

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hallo,
versuch mal

Sub kev()
Dim arrMat, arrFC, lFC As Long, lMat As Long
With Sheets("Materials")
arrMat = .Range(.Cells(6, 4), .Cells(Rows.Count, 4).End(xlUp)).Value
End With
With Sheets("Finish Codes")
arrMat = .Range(.Cells(1, 1), .Cells(Rows.Count, 1).End(xlUp)).Value
End With
For lMat = 1 To UBound(arrMat)
If arrMat(lMat, 1) <> "" Then
For lFC = 1 To UBound(arrFC)
Select Case arrFC(lFC, 1)
Case arrMat(lMat, 1)
Sheets("Materials").Cells(lMat + 5, 4).Interior.Color = vbRed
Exit For
End Select
Next lFC
End If
Next lMat
End Sub
Gruß
Rudi

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hi Rudi + Kevin

(Rudi) immer diese schreibfaulen Kopierer :-))

Kevin, änder diesen Code...

With Sheets("Finish Codes")
arrMat = .Range(.Cells(1, 1), .Cells(Rows.Count, 1).End(xlUp)).Value
End With
...um in

With Sheets("Finish Codes")
arrFC = .Range(.Cells(1, 1), .Cells(Rows.Count, 1).End(xlUp)).Value
End With
wenns noch immer "hakt", gibt es noch einen Fehler im Code, den ich nicht getestet hab - ich sah nur auf den 1. Blick, dass arrMat 2x Empfänger für unterschiedliche Zellbereiche ist - und das funktioniert (auch?) nicht.

Ciao
Thorsten

nach oben  nach unten

Betrifft: danke für die Korrektur. owT


nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hi Rudi + Thorsten,

Bei Rudis Code ignoriert er sowohl Groß/Kleinschreibung, als auch Leerzeichen. Ich häng eine Beispiel Datei an. Vielleicht hab ich es auch einfach schlecht beschrieben.

https://www.herber.de/bbs/user/153240.xlsm

Ich versuch es nochmal ausführlich zu erklären:
in Tabelle ("Finish Codes") gebe ich in Spalte A Texte vor
in Tabelle ("Materials") sollen alle befüllten Zellen ab "D6" bis letzte mit den Vorgaben verglichen werden
wenn Unterscheidung (egal ob Groß/Kleinschreibung oder Leerzeichen oder anderes) soll Zelle in Tabelle ("Materials") rot hinterlegt werden
leere Zellen in Tabelle ("Materials") sollen ignoriert werden

Ich finde es klasse, dass ihr versucht mir zu helfen.
nochmal vielen Dank dafür.

Gruß
Kevin

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
hatte nen Logikfehler.

Sub kev()
Dim arrMat, arrFC, lFC As Long, lMat As Long
Dim bFOUND As Boolean
With Sheets("Materials")
.Columns(4).Interior.Color = xlNone
arrMat = .Range(.Cells(6, 4), .Cells(Rows.Count, 4).End(xlUp)).Value
End With
With Sheets("Finish Codes")
arrFC = .Range(.Cells(1, 1), .Cells(Rows.Count, 1).End(xlUp)).Value
End With
For lMat = 1 To UBound(arrMat)
bFOUND = False
If arrMat(lMat, 1) <> "" Then
For lFC = 1 To UBound(arrFC)
Select Case arrFC(lFC, 1)
Case arrMat(lMat, 1)
bFOUND = True
Exit For
End Select
Next lFC
If Not bFOUND Then
Sheets("Materials").Cells(lMat + 5, 4).Interior.Color = vbRed
End If
End If
Next lMat
End Sub
Gruß
Rudi

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hi Kevin,

sorry, aber dass Leerzeichen vorhanden/nicht vorhanden sein können in ansonsten gleichen Texten hattest du - NICHT! - erwähnt
Du hattest nur auf Leerzeilen hingewiesen.
So kann das auch nix werden :-/

Hier die korrigierte Version
https://www.herber.de/bbs/user/153242.xlsm

hab einige Kommentare im Code hinterlassen.

Vllt hilft ja schon Rudis Korrektur, aber ich hab auch für dich "gearbeitet" - will auch ein Feedback.

Ciao
Thorsten

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hi Thorstem,

tut mir leid, dass hier war mein erster Forumbeitrag und bin auch wie gesagt noch Anfänger, was Macros betrifft.

Ich habe mir deine überarbeitete Datei angesehen. Wenn ich es richtig sehe und verstehe "entfernst" du mit

                            'Inhalt aus Materials, Spalte D = nur Kleinschreibung und alle Leerzeichen entfernen
lstrM = LCase(Replace(.Range("D" & lloRowM).Value, " ", ""))
'Inhalt aus Finish Codes, Spalte A = nur Kleinschreibung und alle Leerzeichen entfernen
lstrFC = LCase(Replace(lshFC.Range("A" & lloRowFC).Value, " ", ""))
die Leerzeichen oder?

Das darf aber für meine Anforderung nicht so sein.
In deiner hochgeladenen Datei, sollte z.B. "D46" auch rot markiert werden, da Zelleninhalt Tabelle ("Materials"): R = Without surface treatment (mit Leerzeichen neben dem =) und Vergleich in Tabelle ("Finish Codes") : R=Without surface treatment (ohne Leerzeichen). Ebenfalls "D62" sollte rot markiert werden da r=Without surface treatment (in Tabelle("Materials")) <> r=Without surface treatment (in Tabelle("Finish Codes")).

Es soll wie gesagt jede Zelle in Tabelle("Materials") ab "D6" rot markiert werden, die in irgendeiner hinsicht von der Vorlage in Tabelle("Finish Codes") abweicht.
Das hat den Hintergrund, dass ich Fehler aufzeigen möchte.

Gruß
Kevin

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hi Kevin,

ich bin Thorsten, nich Thorstem
Aber ok, weil du hier Anfänger bist, lass ich das noch ma durchgehen :-)

aaaabeerrr...nich durchgehen lass ich, wenn jemand nich alle Fakten nennt, die für ihn wichtig sind ;-)

Ok, aber ich hatte wohl auch n Denkfehler - jep, mit lstrM (und ...FC) = usw entferne ich - alle Leerzeichen
Ich dachte, dir kommt es wirklich ganz allein nur darauf an, ob unterschiedliche Buchstaben/Zahlen enthalten sind - dass auch bei unterschiedlich gesetzten Leerzeichen = rot werden soll hatte ich nicht erkannt.

Ich versuch noch mal mein Glück...hach..es sei denn, ich war bei Peters Idee zu voreilig und er hat doch die Lösung für dich!
Ich wart mal auf deine Antwort zu seiner Idee.

Ciao
Thorsten

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hi Thorsten,

sorry für den Schreibfehler *Shame on me*

ja du hast vollkommen recht, das war mein Fehler, sorry.
Wenn ich wieder auf eine Frage stoße, dann nehme ich an, dass ich es ausführlicher erklären muss und gleich eine bsp Datei mit anhängen sollte.

Gruß Kevin

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hallo Kev,

probiere mal meine Lösung (bevor Du noch hundertmal Codeänderungen machst).

https://www.herber.de/bbs/user/153245.xlsm

Rückmeldung wäre schön.

Mit freundlichem Gruß
Peter Kloßek

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hi Peter,

und wo findet man in den Tabellen Werte mit gleichem Text aber unterschiedlicher Anzahl an....Leerzeichen?

Mist...jetzt hätte Kevin schon die 101. Codekorrektur^^...lalala

Ciao
Thorsten

nach oben  nach unten

Betrifft: vielleicht...
...nehm ich meine Klugscheißerei ^^ zurück :-)

Hi Peter,

mal sehen, was Kevin zu deiner Idee schreibt.

Ciao
Thorsten

nach oben  nach unten

Betrifft: ok, ich...
Hi Peter!

...bitte dich um Entschuldigung!
Kevin ist mit deiner Idee fast zufrieden - aber das "fast" bezieht sich auf eine neue Frage von ihm....das grundsätzliche Problem konntest du lösen.
Da war ich zu vorschnell mit meiner 1. Antwort an dich - tut mir leid.

Ciao
Thorsten

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hallo Thorsten,

von Texten mit einer unterschiedlichen Anzahl an Leerzeichen war in der Aufgabenstellung von Kev keine Rede - hab dort sowas jedenfalls nicht gesehen. Leere Zeilen können beliebig vorkommen. Gleiche Reihenfolge in beiden Tabellen ist ebenso nicht erforderlich.

M.f.G. Peter Kloßek

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hallo Peter,

hab deinen Code getestet und funktioniert auch super!
mit dem .Find habe ich auch zuvor schon mal einiges probiert, aber es dann doch gelassen, weil ich soweit einfach noch nicht bin.
Wenn ich das aber richtig verstehe, wird in deinem Code Zelle für Zelle ausgewählt und überprüft oder?
Wird es dann bei einer großen Datei nicht zu Performanceproblemen kommen?

Danke für deine Hilfe :)

Gruß Kevin

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hallo Kevin,

iich habe die Tabelle „FinishCodes“ im Makro2 auf 10.000 Zeilen ausgelegt. Wenn die Tabelle „Materials“ sehr lang ist, kann die Ausführung entsprechend dauern. Dies sollte aber in Kauf genommen werden, weil

1. der Vergleich über die gesamte Zelle geht
2. Groß und Kleinschreibung berücksichtigt wird
3. die Reihenfolge in den beiden Tabellen unterschiedlich sein kann
4. die Leerzeilen beliebig in beiden Tabellen vorkommen können

Die Leer- z e i c h e n gehören natürlich zu den Vergleichskriterien. Sollten hiervon einige zu viel vorhanden sein, können sie mit „TRIM“ eliminiert werden. Siehe hierzu
https://www.denisreis.com › excel-vba-leerzeichen-mit-trim-entfernen

Mit freundlichem Gruß
Peter Kloßek

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Berichtigung
Es muß heißen ...com/excel... in der Url, bitte berichtigen.
M.f.G. Peter Kloßek

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hallo Peter,

danke für deine ausführliche Antwort :)
Ich werde es einfach mal ausprobieren und mir das TRIM ebenfalls ansehen.

Damit ist meine Frage mit vollster Zufriedenheit beantwortet :)

Gruß Kevin

21
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zelleninhalte Sheet1 in Sheet2 finden
24.05.2022 12:58:35
Kev
Hi Kev,

versuch mal so, ungetestet

Sub test()
Dim lshFC As Worksheet, lloRowFC As Long, lloRowM As Long, lboExist As Boolean
Set lshFC = Sheets("Finish Codes")
With Sheets("Materials")
For lloRowM = 6 To .Cells(.Rows.Count, 4).End(xlUp).Row
For lloRowFC = 1 To 1000 'beginnt in "Finish Codes" in Zeile 1, sucht bis Zeile 1000 --> wenn Start/Endzeile für "Finish Codes" nicht passt, dann anpassen!
If .Range("D" & lloRowM).Value <>"" And LCase(.Range("D" & lloRowM).Value) = LCase(lshFC.Range("A" & lloRowFC).Value) Then
lboExist = True
Exit For
End If
Next
If lboExist = True Then
lboExist = False
Else
.Range("D" & lloRowM).Interior.ColorIndex = 3
End If
Next
Next
Set lshFC = Nothing
End Sub
Hilfts?

Ciao
Thorsten

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hi Thorsten,
ich hab deinen Code mal probiert. Musste das letzte Next durch End With ersetzten.

    Dim lshFC As Worksheet, lloRowFC As Long, lloRowM As Long, lboExist As Boolean
Set lshFC = Sheets("Finish Codes")
With Sheets("Materials")
For lloRowM = 6 To .Cells(.Rows.Count, 4).End(xlUp).Row
For lloRowFC = 1 To 1000 'beginnt in "Finish Codes" in Zeile 1, sucht bis Zeile 1000 --> wenn Start/Endzeile für "Finish Codes" nicht passt, dann anpassen!
If .Range("D" & lloRowM).Value <> "" _
And LCase(.Range("D" & lloRowM).Value) = LCase(lshFC.Range("A" & lloRowFC).Value) Then
lboExist = True
Exit For
End If
Next
If lboExist = True Then
lboExist = False
Else
.Range("D" & lloRowM).Interior.ColorIndex = 3
End If
Next
End With
Set lshFC = Nothing
Leider markiert er leere Zellen, wobei ich jetzt auch nicht herausfinde, warum das so ist, weil du es ja durch

If .Range("D" & lloRowM).Value <> ""

verhinderst, oder?

Aber das generelle Problem, dass die Zellen 1:1 verglichen werden, ist leider damit auch nicht gelöst. Die Zellen in Tabelle "Materials" werden nicht markiert, wenn die Groß/Kleinschreibung anderst ist, als in Tabelle "Finish Codes".

Liebe Grüße
Kevin

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hi Kevin

dann zeig bitte per Upload ne Bsp-Datei mit Bsp-Daten in den richtigen Zeilen/Spalten/Tabellenblättern.

Ciao
Thorsten

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hallo,
versuch mal

Sub kev()
Dim arrMat, arrFC, lFC As Long, lMat As Long
With Sheets("Materials")
arrMat = .Range(.Cells(6, 4), .Cells(Rows.Count, 4).End(xlUp)).Value
End With
With Sheets("Finish Codes")
arrMat = .Range(.Cells(1, 1), .Cells(Rows.Count, 1).End(xlUp)).Value
End With
For lMat = 1 To UBound(arrMat)
If arrMat(lMat, 1) <> "" Then
For lFC = 1 To UBound(arrFC)
Select Case arrFC(lFC, 1)
Case arrMat(lMat, 1)
Sheets("Materials").Cells(lMat + 5, 4).Interior.Color = vbRed
Exit For
End Select
Next lFC
End If
Next lMat
End Sub
Gruß
Rudi

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hi Rudi + Kevin

(Rudi) immer diese schreibfaulen Kopierer :-))

Kevin, änder diesen Code...

With Sheets("Finish Codes")
arrMat = .Range(.Cells(1, 1), .Cells(Rows.Count, 1).End(xlUp)).Value
End With
...um in

With Sheets("Finish Codes")
arrFC = .Range(.Cells(1, 1), .Cells(Rows.Count, 1).End(xlUp)).Value
End With
wenns noch immer "hakt", gibt es noch einen Fehler im Code, den ich nicht getestet hab - ich sah nur auf den 1. Blick, dass arrMat 2x Empfänger für unterschiedliche Zellbereiche ist - und das funktioniert (auch?) nicht.

Ciao
Thorsten

nach oben  nach unten

Betrifft: danke für die Korrektur. owT


nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hi Rudi + Thorsten,

Bei Rudis Code ignoriert er sowohl Groß/Kleinschreibung, als auch Leerzeichen. Ich häng eine Beispiel Datei an. Vielleicht hab ich es auch einfach schlecht beschrieben.

https://www.herber.de/bbs/user/153240.xlsm

Ich versuch es nochmal ausführlich zu erklären:
in Tabelle ("Finish Codes") gebe ich in Spalte A Texte vor
in Tabelle ("Materials") sollen alle befüllten Zellen ab "D6" bis letzte mit den Vorgaben verglichen werden
wenn Unterscheidung (egal ob Groß/Kleinschreibung oder Leerzeichen oder anderes) soll Zelle in Tabelle ("Materials") rot hinterlegt werden
leere Zellen in Tabelle ("Materials") sollen ignoriert werden

Ich finde es klasse, dass ihr versucht mir zu helfen.
nochmal vielen Dank dafür.

Gruß
Kevin

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
hatte nen Logikfehler.

Sub kev()
Dim arrMat, arrFC, lFC As Long, lMat As Long
Dim bFOUND As Boolean
With Sheets("Materials")
.Columns(4).Interior.Color = xlNone
arrMat = .Range(.Cells(6, 4), .Cells(Rows.Count, 4).End(xlUp)).Value
End With
With Sheets("Finish Codes")
arrFC = .Range(.Cells(1, 1), .Cells(Rows.Count, 1).End(xlUp)).Value
End With
For lMat = 1 To UBound(arrMat)
bFOUND = False
If arrMat(lMat, 1) <> "" Then
For lFC = 1 To UBound(arrFC)
Select Case arrFC(lFC, 1)
Case arrMat(lMat, 1)
bFOUND = True
Exit For
End Select
Next lFC
If Not bFOUND Then
Sheets("Materials").Cells(lMat + 5, 4).Interior.Color = vbRed
End If
End If
Next lMat
End Sub
Gruß
Rudi

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hi Kevin,

sorry, aber dass Leerzeichen vorhanden/nicht vorhanden sein können in ansonsten gleichen Texten hattest du - NICHT! - erwähnt
Du hattest nur auf Leerzeilen hingewiesen.
So kann das auch nix werden :-/

Hier die korrigierte Version
https://www.herber.de/bbs/user/153242.xlsm

hab einige Kommentare im Code hinterlassen.

Vllt hilft ja schon Rudis Korrektur, aber ich hab auch für dich "gearbeitet" - will auch ein Feedback.

Ciao
Thorsten

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hi Thorstem,

tut mir leid, dass hier war mein erster Forumbeitrag und bin auch wie gesagt noch Anfänger, was Macros betrifft.

Ich habe mir deine überarbeitete Datei angesehen. Wenn ich es richtig sehe und verstehe "entfernst" du mit

                            'Inhalt aus Materials, Spalte D = nur Kleinschreibung und alle Leerzeichen entfernen
lstrM = LCase(Replace(.Range("D" & lloRowM).Value, " ", ""))
'Inhalt aus Finish Codes, Spalte A = nur Kleinschreibung und alle Leerzeichen entfernen
lstrFC = LCase(Replace(lshFC.Range("A" & lloRowFC).Value, " ", ""))
die Leerzeichen oder?

Das darf aber für meine Anforderung nicht so sein.
In deiner hochgeladenen Datei, sollte z.B. "D46" auch rot markiert werden, da Zelleninhalt Tabelle ("Materials"): R = Without surface treatment (mit Leerzeichen neben dem =) und Vergleich in Tabelle ("Finish Codes") : R=Without surface treatment (ohne Leerzeichen). Ebenfalls "D62" sollte rot markiert werden da r=Without surface treatment (in Tabelle("Materials")) <> r=Without surface treatment (in Tabelle("Finish Codes")).

Es soll wie gesagt jede Zelle in Tabelle("Materials") ab "D6" rot markiert werden, die in irgendeiner hinsicht von der Vorlage in Tabelle("Finish Codes") abweicht.
Das hat den Hintergrund, dass ich Fehler aufzeigen möchte.

Gruß
Kevin

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hi Kevin,

ich bin Thorsten, nich Thorstem
Aber ok, weil du hier Anfänger bist, lass ich das noch ma durchgehen :-)

aaaabeerrr...nich durchgehen lass ich, wenn jemand nich alle Fakten nennt, die für ihn wichtig sind ;-)

Ok, aber ich hatte wohl auch n Denkfehler - jep, mit lstrM (und ...FC) = usw entferne ich - alle Leerzeichen
Ich dachte, dir kommt es wirklich ganz allein nur darauf an, ob unterschiedliche Buchstaben/Zahlen enthalten sind - dass auch bei unterschiedlich gesetzten Leerzeichen = rot werden soll hatte ich nicht erkannt.

Ich versuch noch mal mein Glück...hach..es sei denn, ich war bei Peters Idee zu voreilig und er hat doch die Lösung für dich!
Ich wart mal auf deine Antwort zu seiner Idee.

Ciao
Thorsten

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hi Thorsten,

sorry für den Schreibfehler *Shame on me*

ja du hast vollkommen recht, das war mein Fehler, sorry.
Wenn ich wieder auf eine Frage stoße, dann nehme ich an, dass ich es ausführlicher erklären muss und gleich eine bsp Datei mit anhängen sollte.

Gruß Kevin

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hallo Kev,

probiere mal meine Lösung (bevor Du noch hundertmal Codeänderungen machst).

https://www.herber.de/bbs/user/153245.xlsm

Rückmeldung wäre schön.

Mit freundlichem Gruß
Peter Kloßek

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hi Peter,

und wo findet man in den Tabellen Werte mit gleichem Text aber unterschiedlicher Anzahl an....Leerzeichen?

Mist...jetzt hätte Kevin schon die 101. Codekorrektur^^...lalala

Ciao
Thorsten

nach oben  nach unten

Betrifft: vielleicht...
...nehm ich meine Klugscheißerei ^^ zurück :-)

Hi Peter,

mal sehen, was Kevin zu deiner Idee schreibt.

Ciao
Thorsten

nach oben  nach unten

Betrifft: ok, ich...
Hi Peter!

...bitte dich um Entschuldigung!
Kevin ist mit deiner Idee fast zufrieden - aber das "fast" bezieht sich auf eine neue Frage von ihm....das grundsätzliche Problem konntest du lösen.
Da war ich zu vorschnell mit meiner 1. Antwort an dich - tut mir leid.

Ciao
Thorsten

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hallo Thorsten,

von Texten mit einer unterschiedlichen Anzahl an Leerzeichen war in der Aufgabenstellung von Kev keine Rede - hab dort sowas jedenfalls nicht gesehen. Leere Zeilen können beliebig vorkommen. Gleiche Reihenfolge in beiden Tabellen ist ebenso nicht erforderlich.

M.f.G. Peter Kloßek

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hallo Peter,

hab deinen Code getestet und funktioniert auch super!
mit dem .Find habe ich auch zuvor schon mal einiges probiert, aber es dann doch gelassen, weil ich soweit einfach noch nicht bin.
Wenn ich das aber richtig verstehe, wird in deinem Code Zelle für Zelle ausgewählt und überprüft oder?
Wird es dann bei einer großen Datei nicht zu Performanceproblemen kommen?

Danke für deine Hilfe :)

Gruß Kevin

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hallo Kevin,

iich habe die Tabelle „FinishCodes“ im Makro2 auf 10.000 Zeilen ausgelegt. Wenn die Tabelle „Materials“ sehr lang ist, kann die Ausführung entsprechend dauern. Dies sollte aber in Kauf genommen werden, weil

1. der Vergleich über die gesamte Zelle geht
2. Groß und Kleinschreibung berücksichtigt wird
3. die Reihenfolge in den beiden Tabellen unterschiedlich sein kann
4. die Leerzeilen beliebig in beiden Tabellen vorkommen können

Die Leer- z e i c h e n gehören natürlich zu den Vergleichskriterien. Sollten hiervon einige zu viel vorhanden sein, können sie mit „TRIM“ eliminiert werden. Siehe hierzu
https://www.denisreis.com › excel-vba-leerzeichen-mit-trim-entfernen

Mit freundlichem Gruß
Peter Kloßek

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Berichtigung
Es muß heißen ...com/excel... in der Url, bitte berichtigen.
M.f.G. Peter Kloßek

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hallo Peter,

danke für deine ausführliche Antwort :)
Ich werde es einfach mal ausprobieren und mir das TRIM ebenfalls ansehen.

Damit ist meine Frage mit vollster Zufriedenheit beantwortet :)

Gruß Kevin

Anzeige
AW: Zelleninhalte Sheet1 in Sheet2 finden
24.05.2022 12:58:35
Kev
Hi Thorsten,
ich hab deinen Code mal probiert. Musste das letzte Next durch End With ersetzten.

    Dim lshFC As Worksheet, lloRowFC As Long, lloRowM As Long, lboExist As Boolean
Set lshFC = Sheets("Finish Codes")
With Sheets("Materials")
For lloRowM = 6 To .Cells(.Rows.Count, 4).End(xlUp).Row
For lloRowFC = 1 To 1000 'beginnt in "Finish Codes" in Zeile 1, sucht bis Zeile 1000 --> wenn Start/Endzeile für "Finish Codes" nicht passt, dann anpassen!
If .Range("D" & lloRowM).Value <> "" _
And LCase(.Range("D" & lloRowM).Value) = LCase(lshFC.Range("A" & lloRowFC).Value) Then
lboExist = True
Exit For
End If
Next
If lboExist = True Then
lboExist = False
Else
.Range("D" & lloRowM).Interior.ColorIndex = 3
End If
Next
End With
Set lshFC = Nothing
Leider markiert er leere Zellen, wobei ich jetzt auch nicht herausfinde, warum das so ist, weil du es ja durch

If .Range("D" & lloRowM).Value <> ""

verhinderst, oder?

Aber das generelle Problem, dass die Zellen 1:1 verglichen werden, ist leider damit auch nicht gelöst. Die Zellen in Tabelle "Materials" werden nicht markiert, wenn die Groß/Kleinschreibung anderst ist, als in Tabelle "Finish Codes".

Liebe Grüße
Kevin

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hi Kevin

dann zeig bitte per Upload ne Bsp-Datei mit Bsp-Daten in den richtigen Zeilen/Spalten/Tabellenblättern.

Ciao
Thorsten

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hallo,
versuch mal

Sub kev()
Dim arrMat, arrFC, lFC As Long, lMat As Long
With Sheets("Materials")
arrMat = .Range(.Cells(6, 4), .Cells(Rows.Count, 4).End(xlUp)).Value
End With
With Sheets("Finish Codes")
arrMat = .Range(.Cells(1, 1), .Cells(Rows.Count, 1).End(xlUp)).Value
End With
For lMat = 1 To UBound(arrMat)
If arrMat(lMat, 1) <> "" Then
For lFC = 1 To UBound(arrFC)
Select Case arrFC(lFC, 1)
Case arrMat(lMat, 1)
Sheets("Materials").Cells(lMat + 5, 4).Interior.Color = vbRed
Exit For
End Select
Next lFC
End If
Next lMat
End Sub
Gruß
Rudi

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hi Rudi + Kevin

(Rudi) immer diese schreibfaulen Kopierer :-))

Kevin, änder diesen Code...

With Sheets("Finish Codes")
arrMat = .Range(.Cells(1, 1), .Cells(Rows.Count, 1).End(xlUp)).Value
End With
...um in

With Sheets("Finish Codes")
arrFC = .Range(.Cells(1, 1), .Cells(Rows.Count, 1).End(xlUp)).Value
End With
wenns noch immer "hakt", gibt es noch einen Fehler im Code, den ich nicht getestet hab - ich sah nur auf den 1. Blick, dass arrMat 2x Empfänger für unterschiedliche Zellbereiche ist - und das funktioniert (auch?) nicht.

Ciao
Thorsten

nach oben  nach unten

Betrifft: danke für die Korrektur. owT


nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hi Rudi + Thorsten,

Bei Rudis Code ignoriert er sowohl Groß/Kleinschreibung, als auch Leerzeichen. Ich häng eine Beispiel Datei an. Vielleicht hab ich es auch einfach schlecht beschrieben.

https://www.herber.de/bbs/user/153240.xlsm

Ich versuch es nochmal ausführlich zu erklären:
in Tabelle ("Finish Codes") gebe ich in Spalte A Texte vor
in Tabelle ("Materials") sollen alle befüllten Zellen ab "D6" bis letzte mit den Vorgaben verglichen werden
wenn Unterscheidung (egal ob Groß/Kleinschreibung oder Leerzeichen oder anderes) soll Zelle in Tabelle ("Materials") rot hinterlegt werden
leere Zellen in Tabelle ("Materials") sollen ignoriert werden

Ich finde es klasse, dass ihr versucht mir zu helfen.
nochmal vielen Dank dafür.

Gruß
Kevin

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
hatte nen Logikfehler.

Sub kev()
Dim arrMat, arrFC, lFC As Long, lMat As Long
Dim bFOUND As Boolean
With Sheets("Materials")
.Columns(4).Interior.Color = xlNone
arrMat = .Range(.Cells(6, 4), .Cells(Rows.Count, 4).End(xlUp)).Value
End With
With Sheets("Finish Codes")
arrFC = .Range(.Cells(1, 1), .Cells(Rows.Count, 1).End(xlUp)).Value
End With
For lMat = 1 To UBound(arrMat)
bFOUND = False
If arrMat(lMat, 1) <> "" Then
For lFC = 1 To UBound(arrFC)
Select Case arrFC(lFC, 1)
Case arrMat(lMat, 1)
bFOUND = True
Exit For
End Select
Next lFC
If Not bFOUND Then
Sheets("Materials").Cells(lMat + 5, 4).Interior.Color = vbRed
End If
End If
Next lMat
End Sub
Gruß
Rudi

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hi Kevin,

sorry, aber dass Leerzeichen vorhanden/nicht vorhanden sein können in ansonsten gleichen Texten hattest du - NICHT! - erwähnt
Du hattest nur auf Leerzeilen hingewiesen.
So kann das auch nix werden :-/

Hier die korrigierte Version
https://www.herber.de/bbs/user/153242.xlsm

hab einige Kommentare im Code hinterlassen.

Vllt hilft ja schon Rudis Korrektur, aber ich hab auch für dich "gearbeitet" - will auch ein Feedback.

Ciao
Thorsten

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hi Thorstem,

tut mir leid, dass hier war mein erster Forumbeitrag und bin auch wie gesagt noch Anfänger, was Macros betrifft.

Ich habe mir deine überarbeitete Datei angesehen. Wenn ich es richtig sehe und verstehe "entfernst" du mit

                            'Inhalt aus Materials, Spalte D = nur Kleinschreibung und alle Leerzeichen entfernen
lstrM = LCase(Replace(.Range("D" & lloRowM).Value, " ", ""))
'Inhalt aus Finish Codes, Spalte A = nur Kleinschreibung und alle Leerzeichen entfernen
lstrFC = LCase(Replace(lshFC.Range("A" & lloRowFC).Value, " ", ""))
die Leerzeichen oder?

Das darf aber für meine Anforderung nicht so sein.
In deiner hochgeladenen Datei, sollte z.B. "D46" auch rot markiert werden, da Zelleninhalt Tabelle ("Materials"): R = Without surface treatment (mit Leerzeichen neben dem =) und Vergleich in Tabelle ("Finish Codes") : R=Without surface treatment (ohne Leerzeichen). Ebenfalls "D62" sollte rot markiert werden da r=Without surface treatment (in Tabelle("Materials")) <> r=Without surface treatment (in Tabelle("Finish Codes")).

Es soll wie gesagt jede Zelle in Tabelle("Materials") ab "D6" rot markiert werden, die in irgendeiner hinsicht von der Vorlage in Tabelle("Finish Codes") abweicht.
Das hat den Hintergrund, dass ich Fehler aufzeigen möchte.

Gruß
Kevin

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hi Kevin,

ich bin Thorsten, nich Thorstem
Aber ok, weil du hier Anfänger bist, lass ich das noch ma durchgehen :-)

aaaabeerrr...nich durchgehen lass ich, wenn jemand nich alle Fakten nennt, die für ihn wichtig sind ;-)

Ok, aber ich hatte wohl auch n Denkfehler - jep, mit lstrM (und ...FC) = usw entferne ich - alle Leerzeichen
Ich dachte, dir kommt es wirklich ganz allein nur darauf an, ob unterschiedliche Buchstaben/Zahlen enthalten sind - dass auch bei unterschiedlich gesetzten Leerzeichen = rot werden soll hatte ich nicht erkannt.

Ich versuch noch mal mein Glück...hach..es sei denn, ich war bei Peters Idee zu voreilig und er hat doch die Lösung für dich!
Ich wart mal auf deine Antwort zu seiner Idee.

Ciao
Thorsten

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hi Thorsten,

sorry für den Schreibfehler *Shame on me*

ja du hast vollkommen recht, das war mein Fehler, sorry.
Wenn ich wieder auf eine Frage stoße, dann nehme ich an, dass ich es ausführlicher erklären muss und gleich eine bsp Datei mit anhängen sollte.

Gruß Kevin

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hallo Kev,

probiere mal meine Lösung (bevor Du noch hundertmal Codeänderungen machst).

https://www.herber.de/bbs/user/153245.xlsm

Rückmeldung wäre schön.

Mit freundlichem Gruß
Peter Kloßek

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hi Peter,

und wo findet man in den Tabellen Werte mit gleichem Text aber unterschiedlicher Anzahl an....Leerzeichen?

Mist...jetzt hätte Kevin schon die 101. Codekorrektur^^...lalala

Ciao
Thorsten

nach oben  nach unten

Betrifft: vielleicht...
...nehm ich meine Klugscheißerei ^^ zurück :-)

Hi Peter,

mal sehen, was Kevin zu deiner Idee schreibt.

Ciao
Thorsten

nach oben  nach unten

Betrifft: ok, ich...
Hi Peter!

...bitte dich um Entschuldigung!
Kevin ist mit deiner Idee fast zufrieden - aber das "fast" bezieht sich auf eine neue Frage von ihm....das grundsätzliche Problem konntest du lösen.
Da war ich zu vorschnell mit meiner 1. Antwort an dich - tut mir leid.

Ciao
Thorsten

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hallo Thorsten,

von Texten mit einer unterschiedlichen Anzahl an Leerzeichen war in der Aufgabenstellung von Kev keine Rede - hab dort sowas jedenfalls nicht gesehen. Leere Zeilen können beliebig vorkommen. Gleiche Reihenfolge in beiden Tabellen ist ebenso nicht erforderlich.

M.f.G. Peter Kloßek

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hallo Peter,

hab deinen Code getestet und funktioniert auch super!
mit dem .Find habe ich auch zuvor schon mal einiges probiert, aber es dann doch gelassen, weil ich soweit einfach noch nicht bin.
Wenn ich das aber richtig verstehe, wird in deinem Code Zelle für Zelle ausgewählt und überprüft oder?
Wird es dann bei einer großen Datei nicht zu Performanceproblemen kommen?

Danke für deine Hilfe :)

Gruß Kevin

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hallo Kevin,

iich habe die Tabelle „FinishCodes“ im Makro2 auf 10.000 Zeilen ausgelegt. Wenn die Tabelle „Materials“ sehr lang ist, kann die Ausführung entsprechend dauern. Dies sollte aber in Kauf genommen werden, weil

1. der Vergleich über die gesamte Zelle geht
2. Groß und Kleinschreibung berücksichtigt wird
3. die Reihenfolge in den beiden Tabellen unterschiedlich sein kann
4. die Leerzeilen beliebig in beiden Tabellen vorkommen können

Die Leer- z e i c h e n gehören natürlich zu den Vergleichskriterien. Sollten hiervon einige zu viel vorhanden sein, können sie mit „TRIM“ eliminiert werden. Siehe hierzu
https://www.denisreis.com › excel-vba-leerzeichen-mit-trim-entfernen

Mit freundlichem Gruß
Peter Kloßek

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Berichtigung
Es muß heißen ...com/excel... in der Url, bitte berichtigen.
M.f.G. Peter Kloßek

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hallo Peter,

danke für deine ausführliche Antwort :)
Ich werde es einfach mal ausprobieren und mir das TRIM ebenfalls ansehen.

Damit ist meine Frage mit vollster Zufriedenheit beantwortet :)

Gruß Kevin

Anzeige
AW: Zelleninhalte Sheet1 in Sheet2 finden
24.05.2022 12:58:35
Kev
Hi Kevin

dann zeig bitte per Upload ne Bsp-Datei mit Bsp-Daten in den richtigen Zeilen/Spalten/Tabellenblättern.

Ciao
Thorsten

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hallo,
versuch mal

Sub kev()
Dim arrMat, arrFC, lFC As Long, lMat As Long
With Sheets("Materials")
arrMat = .Range(.Cells(6, 4), .Cells(Rows.Count, 4).End(xlUp)).Value
End With
With Sheets("Finish Codes")
arrMat = .Range(.Cells(1, 1), .Cells(Rows.Count, 1).End(xlUp)).Value
End With
For lMat = 1 To UBound(arrMat)
If arrMat(lMat, 1) <> "" Then
For lFC = 1 To UBound(arrFC)
Select Case arrFC(lFC, 1)
Case arrMat(lMat, 1)
Sheets("Materials").Cells(lMat + 5, 4).Interior.Color = vbRed
Exit For
End Select
Next lFC
End If
Next lMat
End Sub
Gruß
Rudi

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hi Rudi + Kevin

(Rudi) immer diese schreibfaulen Kopierer :-))

Kevin, änder diesen Code...

With Sheets("Finish Codes")
arrMat = .Range(.Cells(1, 1), .Cells(Rows.Count, 1).End(xlUp)).Value
End With
...um in

With Sheets("Finish Codes")
arrFC = .Range(.Cells(1, 1), .Cells(Rows.Count, 1).End(xlUp)).Value
End With
wenns noch immer "hakt", gibt es noch einen Fehler im Code, den ich nicht getestet hab - ich sah nur auf den 1. Blick, dass arrMat 2x Empfänger für unterschiedliche Zellbereiche ist - und das funktioniert (auch?) nicht.

Ciao
Thorsten

nach oben  nach unten

Betrifft: danke für die Korrektur. owT


nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hi Rudi + Thorsten,

Bei Rudis Code ignoriert er sowohl Groß/Kleinschreibung, als auch Leerzeichen. Ich häng eine Beispiel Datei an. Vielleicht hab ich es auch einfach schlecht beschrieben.

https://www.herber.de/bbs/user/153240.xlsm

Ich versuch es nochmal ausführlich zu erklären:
in Tabelle ("Finish Codes") gebe ich in Spalte A Texte vor
in Tabelle ("Materials") sollen alle befüllten Zellen ab "D6" bis letzte mit den Vorgaben verglichen werden
wenn Unterscheidung (egal ob Groß/Kleinschreibung oder Leerzeichen oder anderes) soll Zelle in Tabelle ("Materials") rot hinterlegt werden
leere Zellen in Tabelle ("Materials") sollen ignoriert werden

Ich finde es klasse, dass ihr versucht mir zu helfen.
nochmal vielen Dank dafür.

Gruß
Kevin

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
hatte nen Logikfehler.

Sub kev()
Dim arrMat, arrFC, lFC As Long, lMat As Long
Dim bFOUND As Boolean
With Sheets("Materials")
.Columns(4).Interior.Color = xlNone
arrMat = .Range(.Cells(6, 4), .Cells(Rows.Count, 4).End(xlUp)).Value
End With
With Sheets("Finish Codes")
arrFC = .Range(.Cells(1, 1), .Cells(Rows.Count, 1).End(xlUp)).Value
End With
For lMat = 1 To UBound(arrMat)
bFOUND = False
If arrMat(lMat, 1) <> "" Then
For lFC = 1 To UBound(arrFC)
Select Case arrFC(lFC, 1)
Case arrMat(lMat, 1)
bFOUND = True
Exit For
End Select
Next lFC
If Not bFOUND Then
Sheets("Materials").Cells(lMat + 5, 4).Interior.Color = vbRed
End If
End If
Next lMat
End Sub
Gruß
Rudi

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hi Kevin,

sorry, aber dass Leerzeichen vorhanden/nicht vorhanden sein können in ansonsten gleichen Texten hattest du - NICHT! - erwähnt
Du hattest nur auf Leerzeilen hingewiesen.
So kann das auch nix werden :-/

Hier die korrigierte Version
https://www.herber.de/bbs/user/153242.xlsm

hab einige Kommentare im Code hinterlassen.

Vllt hilft ja schon Rudis Korrektur, aber ich hab auch für dich "gearbeitet" - will auch ein Feedback.

Ciao
Thorsten

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hi Thorstem,

tut mir leid, dass hier war mein erster Forumbeitrag und bin auch wie gesagt noch Anfänger, was Macros betrifft.

Ich habe mir deine überarbeitete Datei angesehen. Wenn ich es richtig sehe und verstehe "entfernst" du mit

                            'Inhalt aus Materials, Spalte D = nur Kleinschreibung und alle Leerzeichen entfernen
lstrM = LCase(Replace(.Range("D" & lloRowM).Value, " ", ""))
'Inhalt aus Finish Codes, Spalte A = nur Kleinschreibung und alle Leerzeichen entfernen
lstrFC = LCase(Replace(lshFC.Range("A" & lloRowFC).Value, " ", ""))
die Leerzeichen oder?

Das darf aber für meine Anforderung nicht so sein.
In deiner hochgeladenen Datei, sollte z.B. "D46" auch rot markiert werden, da Zelleninhalt Tabelle ("Materials"): R = Without surface treatment (mit Leerzeichen neben dem =) und Vergleich in Tabelle ("Finish Codes") : R=Without surface treatment (ohne Leerzeichen). Ebenfalls "D62" sollte rot markiert werden da r=Without surface treatment (in Tabelle("Materials")) <> r=Without surface treatment (in Tabelle("Finish Codes")).

Es soll wie gesagt jede Zelle in Tabelle("Materials") ab "D6" rot markiert werden, die in irgendeiner hinsicht von der Vorlage in Tabelle("Finish Codes") abweicht.
Das hat den Hintergrund, dass ich Fehler aufzeigen möchte.

Gruß
Kevin

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hi Kevin,

ich bin Thorsten, nich Thorstem
Aber ok, weil du hier Anfänger bist, lass ich das noch ma durchgehen :-)

aaaabeerrr...nich durchgehen lass ich, wenn jemand nich alle Fakten nennt, die für ihn wichtig sind ;-)

Ok, aber ich hatte wohl auch n Denkfehler - jep, mit lstrM (und ...FC) = usw entferne ich - alle Leerzeichen
Ich dachte, dir kommt es wirklich ganz allein nur darauf an, ob unterschiedliche Buchstaben/Zahlen enthalten sind - dass auch bei unterschiedlich gesetzten Leerzeichen = rot werden soll hatte ich nicht erkannt.

Ich versuch noch mal mein Glück...hach..es sei denn, ich war bei Peters Idee zu voreilig und er hat doch die Lösung für dich!
Ich wart mal auf deine Antwort zu seiner Idee.

Ciao
Thorsten

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hi Thorsten,

sorry für den Schreibfehler *Shame on me*

ja du hast vollkommen recht, das war mein Fehler, sorry.
Wenn ich wieder auf eine Frage stoße, dann nehme ich an, dass ich es ausführlicher erklären muss und gleich eine bsp Datei mit anhängen sollte.

Gruß Kevin

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hallo Kev,

probiere mal meine Lösung (bevor Du noch hundertmal Codeänderungen machst).

https://www.herber.de/bbs/user/153245.xlsm

Rückmeldung wäre schön.

Mit freundlichem Gruß
Peter Kloßek

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hi Peter,

und wo findet man in den Tabellen Werte mit gleichem Text aber unterschiedlicher Anzahl an....Leerzeichen?

Mist...jetzt hätte Kevin schon die 101. Codekorrektur^^...lalala

Ciao
Thorsten

nach oben  nach unten

Betrifft: vielleicht...
...nehm ich meine Klugscheißerei ^^ zurück :-)

Hi Peter,

mal sehen, was Kevin zu deiner Idee schreibt.

Ciao
Thorsten

nach oben  nach unten

Betrifft: ok, ich...
Hi Peter!

...bitte dich um Entschuldigung!
Kevin ist mit deiner Idee fast zufrieden - aber das "fast" bezieht sich auf eine neue Frage von ihm....das grundsätzliche Problem konntest du lösen.
Da war ich zu vorschnell mit meiner 1. Antwort an dich - tut mir leid.

Ciao
Thorsten

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hallo Thorsten,

von Texten mit einer unterschiedlichen Anzahl an Leerzeichen war in der Aufgabenstellung von Kev keine Rede - hab dort sowas jedenfalls nicht gesehen. Leere Zeilen können beliebig vorkommen. Gleiche Reihenfolge in beiden Tabellen ist ebenso nicht erforderlich.

M.f.G. Peter Kloßek

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hallo Peter,

hab deinen Code getestet und funktioniert auch super!
mit dem .Find habe ich auch zuvor schon mal einiges probiert, aber es dann doch gelassen, weil ich soweit einfach noch nicht bin.
Wenn ich das aber richtig verstehe, wird in deinem Code Zelle für Zelle ausgewählt und überprüft oder?
Wird es dann bei einer großen Datei nicht zu Performanceproblemen kommen?

Danke für deine Hilfe :)

Gruß Kevin

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hallo Kevin,

iich habe die Tabelle „FinishCodes“ im Makro2 auf 10.000 Zeilen ausgelegt. Wenn die Tabelle „Materials“ sehr lang ist, kann die Ausführung entsprechend dauern. Dies sollte aber in Kauf genommen werden, weil

1. der Vergleich über die gesamte Zelle geht
2. Groß und Kleinschreibung berücksichtigt wird
3. die Reihenfolge in den beiden Tabellen unterschiedlich sein kann
4. die Leerzeilen beliebig in beiden Tabellen vorkommen können

Die Leer- z e i c h e n gehören natürlich zu den Vergleichskriterien. Sollten hiervon einige zu viel vorhanden sein, können sie mit „TRIM“ eliminiert werden. Siehe hierzu
https://www.denisreis.com › excel-vba-leerzeichen-mit-trim-entfernen

Mit freundlichem Gruß
Peter Kloßek

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Berichtigung
Es muß heißen ...com/excel... in der Url, bitte berichtigen.
M.f.G. Peter Kloßek

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hallo Peter,

danke für deine ausführliche Antwort :)
Ich werde es einfach mal ausprobieren und mir das TRIM ebenfalls ansehen.

Damit ist meine Frage mit vollster Zufriedenheit beantwortet :)

Gruß Kevin

Anzeige
AW: Zelleninhalte Sheet1 in Sheet2 finden
24.05.2022 12:58:35
Kev
Hallo,
versuch mal

Sub kev()
Dim arrMat, arrFC, lFC As Long, lMat As Long
With Sheets("Materials")
arrMat = .Range(.Cells(6, 4), .Cells(Rows.Count, 4).End(xlUp)).Value
End With
With Sheets("Finish Codes")
arrMat = .Range(.Cells(1, 1), .Cells(Rows.Count, 1).End(xlUp)).Value
End With
For lMat = 1 To UBound(arrMat)
If arrMat(lMat, 1) <> "" Then
For lFC = 1 To UBound(arrFC)
Select Case arrFC(lFC, 1)
Case arrMat(lMat, 1)
Sheets("Materials").Cells(lMat + 5, 4).Interior.Color = vbRed
Exit For
End Select
Next lFC
End If
Next lMat
End Sub
Gruß
Rudi

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hi Rudi + Kevin

(Rudi) immer diese schreibfaulen Kopierer :-))

Kevin, änder diesen Code...

With Sheets("Finish Codes")
arrMat = .Range(.Cells(1, 1), .Cells(Rows.Count, 1).End(xlUp)).Value
End With
...um in

With Sheets("Finish Codes")
arrFC = .Range(.Cells(1, 1), .Cells(Rows.Count, 1).End(xlUp)).Value
End With
wenns noch immer "hakt", gibt es noch einen Fehler im Code, den ich nicht getestet hab - ich sah nur auf den 1. Blick, dass arrMat 2x Empfänger für unterschiedliche Zellbereiche ist - und das funktioniert (auch?) nicht.

Ciao
Thorsten

nach oben  nach unten

Betrifft: danke für die Korrektur. owT


nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hi Rudi + Thorsten,

Bei Rudis Code ignoriert er sowohl Groß/Kleinschreibung, als auch Leerzeichen. Ich häng eine Beispiel Datei an. Vielleicht hab ich es auch einfach schlecht beschrieben.

https://www.herber.de/bbs/user/153240.xlsm

Ich versuch es nochmal ausführlich zu erklären:
in Tabelle ("Finish Codes") gebe ich in Spalte A Texte vor
in Tabelle ("Materials") sollen alle befüllten Zellen ab "D6" bis letzte mit den Vorgaben verglichen werden
wenn Unterscheidung (egal ob Groß/Kleinschreibung oder Leerzeichen oder anderes) soll Zelle in Tabelle ("Materials") rot hinterlegt werden
leere Zellen in Tabelle ("Materials") sollen ignoriert werden

Ich finde es klasse, dass ihr versucht mir zu helfen.
nochmal vielen Dank dafür.

Gruß
Kevin

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
hatte nen Logikfehler.

Sub kev()
Dim arrMat, arrFC, lFC As Long, lMat As Long
Dim bFOUND As Boolean
With Sheets("Materials")
.Columns(4).Interior.Color = xlNone
arrMat = .Range(.Cells(6, 4), .Cells(Rows.Count, 4).End(xlUp)).Value
End With
With Sheets("Finish Codes")
arrFC = .Range(.Cells(1, 1), .Cells(Rows.Count, 1).End(xlUp)).Value
End With
For lMat = 1 To UBound(arrMat)
bFOUND = False
If arrMat(lMat, 1) <> "" Then
For lFC = 1 To UBound(arrFC)
Select Case arrFC(lFC, 1)
Case arrMat(lMat, 1)
bFOUND = True
Exit For
End Select
Next lFC
If Not bFOUND Then
Sheets("Materials").Cells(lMat + 5, 4).Interior.Color = vbRed
End If
End If
Next lMat
End Sub
Gruß
Rudi

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hi Kevin,

sorry, aber dass Leerzeichen vorhanden/nicht vorhanden sein können in ansonsten gleichen Texten hattest du - NICHT! - erwähnt
Du hattest nur auf Leerzeilen hingewiesen.
So kann das auch nix werden :-/

Hier die korrigierte Version
https://www.herber.de/bbs/user/153242.xlsm

hab einige Kommentare im Code hinterlassen.

Vllt hilft ja schon Rudis Korrektur, aber ich hab auch für dich "gearbeitet" - will auch ein Feedback.

Ciao
Thorsten

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hi Thorstem,

tut mir leid, dass hier war mein erster Forumbeitrag und bin auch wie gesagt noch Anfänger, was Macros betrifft.

Ich habe mir deine überarbeitete Datei angesehen. Wenn ich es richtig sehe und verstehe "entfernst" du mit

                            'Inhalt aus Materials, Spalte D = nur Kleinschreibung und alle Leerzeichen entfernen
lstrM = LCase(Replace(.Range("D" & lloRowM).Value, " ", ""))
'Inhalt aus Finish Codes, Spalte A = nur Kleinschreibung und alle Leerzeichen entfernen
lstrFC = LCase(Replace(lshFC.Range("A" & lloRowFC).Value, " ", ""))
die Leerzeichen oder?

Das darf aber für meine Anforderung nicht so sein.
In deiner hochgeladenen Datei, sollte z.B. "D46" auch rot markiert werden, da Zelleninhalt Tabelle ("Materials"): R = Without surface treatment (mit Leerzeichen neben dem =) und Vergleich in Tabelle ("Finish Codes") : R=Without surface treatment (ohne Leerzeichen). Ebenfalls "D62" sollte rot markiert werden da r=Without surface treatment (in Tabelle("Materials")) <> r=Without surface treatment (in Tabelle("Finish Codes")).

Es soll wie gesagt jede Zelle in Tabelle("Materials") ab "D6" rot markiert werden, die in irgendeiner hinsicht von der Vorlage in Tabelle("Finish Codes") abweicht.
Das hat den Hintergrund, dass ich Fehler aufzeigen möchte.

Gruß
Kevin

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hi Kevin,

ich bin Thorsten, nich Thorstem
Aber ok, weil du hier Anfänger bist, lass ich das noch ma durchgehen :-)

aaaabeerrr...nich durchgehen lass ich, wenn jemand nich alle Fakten nennt, die für ihn wichtig sind ;-)

Ok, aber ich hatte wohl auch n Denkfehler - jep, mit lstrM (und ...FC) = usw entferne ich - alle Leerzeichen
Ich dachte, dir kommt es wirklich ganz allein nur darauf an, ob unterschiedliche Buchstaben/Zahlen enthalten sind - dass auch bei unterschiedlich gesetzten Leerzeichen = rot werden soll hatte ich nicht erkannt.

Ich versuch noch mal mein Glück...hach..es sei denn, ich war bei Peters Idee zu voreilig und er hat doch die Lösung für dich!
Ich wart mal auf deine Antwort zu seiner Idee.

Ciao
Thorsten

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hi Thorsten,

sorry für den Schreibfehler *Shame on me*

ja du hast vollkommen recht, das war mein Fehler, sorry.
Wenn ich wieder auf eine Frage stoße, dann nehme ich an, dass ich es ausführlicher erklären muss und gleich eine bsp Datei mit anhängen sollte.

Gruß Kevin

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hallo Kev,

probiere mal meine Lösung (bevor Du noch hundertmal Codeänderungen machst).

https://www.herber.de/bbs/user/153245.xlsm

Rückmeldung wäre schön.

Mit freundlichem Gruß
Peter Kloßek

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hi Peter,

und wo findet man in den Tabellen Werte mit gleichem Text aber unterschiedlicher Anzahl an....Leerzeichen?

Mist...jetzt hätte Kevin schon die 101. Codekorrektur^^...lalala

Ciao
Thorsten

nach oben  nach unten

Betrifft: vielleicht...
...nehm ich meine Klugscheißerei ^^ zurück :-)

Hi Peter,

mal sehen, was Kevin zu deiner Idee schreibt.

Ciao
Thorsten

nach oben  nach unten

Betrifft: ok, ich...
Hi Peter!

...bitte dich um Entschuldigung!
Kevin ist mit deiner Idee fast zufrieden - aber das "fast" bezieht sich auf eine neue Frage von ihm....das grundsätzliche Problem konntest du lösen.
Da war ich zu vorschnell mit meiner 1. Antwort an dich - tut mir leid.

Ciao
Thorsten

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hallo Thorsten,

von Texten mit einer unterschiedlichen Anzahl an Leerzeichen war in der Aufgabenstellung von Kev keine Rede - hab dort sowas jedenfalls nicht gesehen. Leere Zeilen können beliebig vorkommen. Gleiche Reihenfolge in beiden Tabellen ist ebenso nicht erforderlich.

M.f.G. Peter Kloßek

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hallo Peter,

hab deinen Code getestet und funktioniert auch super!
mit dem .Find habe ich auch zuvor schon mal einiges probiert, aber es dann doch gelassen, weil ich soweit einfach noch nicht bin.
Wenn ich das aber richtig verstehe, wird in deinem Code Zelle für Zelle ausgewählt und überprüft oder?
Wird es dann bei einer großen Datei nicht zu Performanceproblemen kommen?

Danke für deine Hilfe :)

Gruß Kevin

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hallo Kevin,

iich habe die Tabelle „FinishCodes“ im Makro2 auf 10.000 Zeilen ausgelegt. Wenn die Tabelle „Materials“ sehr lang ist, kann die Ausführung entsprechend dauern. Dies sollte aber in Kauf genommen werden, weil

1. der Vergleich über die gesamte Zelle geht
2. Groß und Kleinschreibung berücksichtigt wird
3. die Reihenfolge in den beiden Tabellen unterschiedlich sein kann
4. die Leerzeilen beliebig in beiden Tabellen vorkommen können

Die Leer- z e i c h e n gehören natürlich zu den Vergleichskriterien. Sollten hiervon einige zu viel vorhanden sein, können sie mit „TRIM“ eliminiert werden. Siehe hierzu
https://www.denisreis.com › excel-vba-leerzeichen-mit-trim-entfernen

Mit freundlichem Gruß
Peter Kloßek

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Berichtigung
Es muß heißen ...com/excel... in der Url, bitte berichtigen.
M.f.G. Peter Kloßek

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hallo Peter,

danke für deine ausführliche Antwort :)
Ich werde es einfach mal ausprobieren und mir das TRIM ebenfalls ansehen.

Damit ist meine Frage mit vollster Zufriedenheit beantwortet :)

Gruß Kevin

Anzeige
AW: Zelleninhalte Sheet1 in Sheet2 finden
24.05.2022 12:58:35
Kev
Hi Rudi + Kevin

(Rudi) immer diese schreibfaulen Kopierer :-))

Kevin, änder diesen Code...

With Sheets("Finish Codes")
arrMat = .Range(.Cells(1, 1), .Cells(Rows.Count, 1).End(xlUp)).Value
End With
...um in

With Sheets("Finish Codes")
arrFC = .Range(.Cells(1, 1), .Cells(Rows.Count, 1).End(xlUp)).Value
End With
wenns noch immer "hakt", gibt es noch einen Fehler im Code, den ich nicht getestet hab - ich sah nur auf den 1. Blick, dass arrMat 2x Empfänger für unterschiedliche Zellbereiche ist - und das funktioniert (auch?) nicht.

Ciao
Thorsten

nach oben  nach unten

Betrifft: danke für die Korrektur. owT


nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hi Rudi + Thorsten,

Bei Rudis Code ignoriert er sowohl Groß/Kleinschreibung, als auch Leerzeichen. Ich häng eine Beispiel Datei an. Vielleicht hab ich es auch einfach schlecht beschrieben.

https://www.herber.de/bbs/user/153240.xlsm

Ich versuch es nochmal ausführlich zu erklären:
in Tabelle ("Finish Codes") gebe ich in Spalte A Texte vor
in Tabelle ("Materials") sollen alle befüllten Zellen ab "D6" bis letzte mit den Vorgaben verglichen werden
wenn Unterscheidung (egal ob Groß/Kleinschreibung oder Leerzeichen oder anderes) soll Zelle in Tabelle ("Materials") rot hinterlegt werden
leere Zellen in Tabelle ("Materials") sollen ignoriert werden

Ich finde es klasse, dass ihr versucht mir zu helfen.
nochmal vielen Dank dafür.

Gruß
Kevin

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
hatte nen Logikfehler.

Sub kev()
Dim arrMat, arrFC, lFC As Long, lMat As Long
Dim bFOUND As Boolean
With Sheets("Materials")
.Columns(4).Interior.Color = xlNone
arrMat = .Range(.Cells(6, 4), .Cells(Rows.Count, 4).End(xlUp)).Value
End With
With Sheets("Finish Codes")
arrFC = .Range(.Cells(1, 1), .Cells(Rows.Count, 1).End(xlUp)).Value
End With
For lMat = 1 To UBound(arrMat)
bFOUND = False
If arrMat(lMat, 1) <> "" Then
For lFC = 1 To UBound(arrFC)
Select Case arrFC(lFC, 1)
Case arrMat(lMat, 1)
bFOUND = True
Exit For
End Select
Next lFC
If Not bFOUND Then
Sheets("Materials").Cells(lMat + 5, 4).Interior.Color = vbRed
End If
End If
Next lMat
End Sub
Gruß
Rudi

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hi Kevin,

sorry, aber dass Leerzeichen vorhanden/nicht vorhanden sein können in ansonsten gleichen Texten hattest du - NICHT! - erwähnt
Du hattest nur auf Leerzeilen hingewiesen.
So kann das auch nix werden :-/

Hier die korrigierte Version
https://www.herber.de/bbs/user/153242.xlsm

hab einige Kommentare im Code hinterlassen.

Vllt hilft ja schon Rudis Korrektur, aber ich hab auch für dich "gearbeitet" - will auch ein Feedback.

Ciao
Thorsten

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hi Thorstem,

tut mir leid, dass hier war mein erster Forumbeitrag und bin auch wie gesagt noch Anfänger, was Macros betrifft.

Ich habe mir deine überarbeitete Datei angesehen. Wenn ich es richtig sehe und verstehe "entfernst" du mit

                            'Inhalt aus Materials, Spalte D = nur Kleinschreibung und alle Leerzeichen entfernen
lstrM = LCase(Replace(.Range("D" & lloRowM).Value, " ", ""))
'Inhalt aus Finish Codes, Spalte A = nur Kleinschreibung und alle Leerzeichen entfernen
lstrFC = LCase(Replace(lshFC.Range("A" & lloRowFC).Value, " ", ""))
die Leerzeichen oder?

Das darf aber für meine Anforderung nicht so sein.
In deiner hochgeladenen Datei, sollte z.B. "D46" auch rot markiert werden, da Zelleninhalt Tabelle ("Materials"): R = Without surface treatment (mit Leerzeichen neben dem =) und Vergleich in Tabelle ("Finish Codes") : R=Without surface treatment (ohne Leerzeichen). Ebenfalls "D62" sollte rot markiert werden da r=Without surface treatment (in Tabelle("Materials")) <> r=Without surface treatment (in Tabelle("Finish Codes")).

Es soll wie gesagt jede Zelle in Tabelle("Materials") ab "D6" rot markiert werden, die in irgendeiner hinsicht von der Vorlage in Tabelle("Finish Codes") abweicht.
Das hat den Hintergrund, dass ich Fehler aufzeigen möchte.

Gruß
Kevin

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hi Kevin,

ich bin Thorsten, nich Thorstem
Aber ok, weil du hier Anfänger bist, lass ich das noch ma durchgehen :-)

aaaabeerrr...nich durchgehen lass ich, wenn jemand nich alle Fakten nennt, die für ihn wichtig sind ;-)

Ok, aber ich hatte wohl auch n Denkfehler - jep, mit lstrM (und ...FC) = usw entferne ich - alle Leerzeichen
Ich dachte, dir kommt es wirklich ganz allein nur darauf an, ob unterschiedliche Buchstaben/Zahlen enthalten sind - dass auch bei unterschiedlich gesetzten Leerzeichen = rot werden soll hatte ich nicht erkannt.

Ich versuch noch mal mein Glück...hach..es sei denn, ich war bei Peters Idee zu voreilig und er hat doch die Lösung für dich!
Ich wart mal auf deine Antwort zu seiner Idee.

Ciao
Thorsten

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hi Thorsten,

sorry für den Schreibfehler *Shame on me*

ja du hast vollkommen recht, das war mein Fehler, sorry.
Wenn ich wieder auf eine Frage stoße, dann nehme ich an, dass ich es ausführlicher erklären muss und gleich eine bsp Datei mit anhängen sollte.

Gruß Kevin

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hallo Kev,

probiere mal meine Lösung (bevor Du noch hundertmal Codeänderungen machst).

https://www.herber.de/bbs/user/153245.xlsm

Rückmeldung wäre schön.

Mit freundlichem Gruß
Peter Kloßek

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hi Peter,

und wo findet man in den Tabellen Werte mit gleichem Text aber unterschiedlicher Anzahl an....Leerzeichen?

Mist...jetzt hätte Kevin schon die 101. Codekorrektur^^...lalala

Ciao
Thorsten

nach oben  nach unten

Betrifft: vielleicht...
...nehm ich meine Klugscheißerei ^^ zurück :-)

Hi Peter,

mal sehen, was Kevin zu deiner Idee schreibt.

Ciao
Thorsten

nach oben  nach unten

Betrifft: ok, ich...
Hi Peter!

...bitte dich um Entschuldigung!
Kevin ist mit deiner Idee fast zufrieden - aber das "fast" bezieht sich auf eine neue Frage von ihm....das grundsätzliche Problem konntest du lösen.
Da war ich zu vorschnell mit meiner 1. Antwort an dich - tut mir leid.

Ciao
Thorsten

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hallo Thorsten,

von Texten mit einer unterschiedlichen Anzahl an Leerzeichen war in der Aufgabenstellung von Kev keine Rede - hab dort sowas jedenfalls nicht gesehen. Leere Zeilen können beliebig vorkommen. Gleiche Reihenfolge in beiden Tabellen ist ebenso nicht erforderlich.

M.f.G. Peter Kloßek

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hallo Peter,

hab deinen Code getestet und funktioniert auch super!
mit dem .Find habe ich auch zuvor schon mal einiges probiert, aber es dann doch gelassen, weil ich soweit einfach noch nicht bin.
Wenn ich das aber richtig verstehe, wird in deinem Code Zelle für Zelle ausgewählt und überprüft oder?
Wird es dann bei einer großen Datei nicht zu Performanceproblemen kommen?

Danke für deine Hilfe :)

Gruß Kevin

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hallo Kevin,

iich habe die Tabelle „FinishCodes“ im Makro2 auf 10.000 Zeilen ausgelegt. Wenn die Tabelle „Materials“ sehr lang ist, kann die Ausführung entsprechend dauern. Dies sollte aber in Kauf genommen werden, weil

1. der Vergleich über die gesamte Zelle geht
2. Groß und Kleinschreibung berücksichtigt wird
3. die Reihenfolge in den beiden Tabellen unterschiedlich sein kann
4. die Leerzeilen beliebig in beiden Tabellen vorkommen können

Die Leer- z e i c h e n gehören natürlich zu den Vergleichskriterien. Sollten hiervon einige zu viel vorhanden sein, können sie mit „TRIM“ eliminiert werden. Siehe hierzu
https://www.denisreis.com › excel-vba-leerzeichen-mit-trim-entfernen

Mit freundlichem Gruß
Peter Kloßek

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Berichtigung
Es muß heißen ...com/excel... in der Url, bitte berichtigen.
M.f.G. Peter Kloßek

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hallo Peter,

danke für deine ausführliche Antwort :)
Ich werde es einfach mal ausprobieren und mir das TRIM ebenfalls ansehen.

Damit ist meine Frage mit vollster Zufriedenheit beantwortet :)

Gruß Kevin

Anzeige
danke für die Korrektur. owT
24.05.2022 12:58:35
Kev

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hi Rudi + Thorsten,

Bei Rudis Code ignoriert er sowohl Groß/Kleinschreibung, als auch Leerzeichen. Ich häng eine Beispiel Datei an. Vielleicht hab ich es auch einfach schlecht beschrieben.

https://www.herber.de/bbs/user/153240.xlsm

Ich versuch es nochmal ausführlich zu erklären:
in Tabelle ("Finish Codes") gebe ich in Spalte A Texte vor
in Tabelle ("Materials") sollen alle befüllten Zellen ab "D6" bis letzte mit den Vorgaben verglichen werden
wenn Unterscheidung (egal ob Groß/Kleinschreibung oder Leerzeichen oder anderes) soll Zelle in Tabelle ("Materials") rot hinterlegt werden
leere Zellen in Tabelle ("Materials") sollen ignoriert werden

Ich finde es klasse, dass ihr versucht mir zu helfen.
nochmal vielen Dank dafür.

Gruß
Kevin

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
hatte nen Logikfehler.

Sub kev()
Dim arrMat, arrFC, lFC As Long, lMat As Long
Dim bFOUND As Boolean
With Sheets("Materials")
.Columns(4).Interior.Color = xlNone
arrMat = .Range(.Cells(6, 4), .Cells(Rows.Count, 4).End(xlUp)).Value
End With
With Sheets("Finish Codes")
arrFC = .Range(.Cells(1, 1), .Cells(Rows.Count, 1).End(xlUp)).Value
End With
For lMat = 1 To UBound(arrMat)
bFOUND = False
If arrMat(lMat, 1) <> "" Then
For lFC = 1 To UBound(arrFC)
Select Case arrFC(lFC, 1)
Case arrMat(lMat, 1)
bFOUND = True
Exit For
End Select
Next lFC
If Not bFOUND Then
Sheets("Materials").Cells(lMat + 5, 4).Interior.Color = vbRed
End If
End If
Next lMat
End Sub
Gruß
Rudi

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hi Kevin,

sorry, aber dass Leerzeichen vorhanden/nicht vorhanden sein können in ansonsten gleichen Texten hattest du - NICHT! - erwähnt
Du hattest nur auf Leerzeilen hingewiesen.
So kann das auch nix werden :-/

Hier die korrigierte Version
https://www.herber.de/bbs/user/153242.xlsm

hab einige Kommentare im Code hinterlassen.

Vllt hilft ja schon Rudis Korrektur, aber ich hab auch für dich "gearbeitet" - will auch ein Feedback.

Ciao
Thorsten

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hi Thorstem,

tut mir leid, dass hier war mein erster Forumbeitrag und bin auch wie gesagt noch Anfänger, was Macros betrifft.

Ich habe mir deine überarbeitete Datei angesehen. Wenn ich es richtig sehe und verstehe "entfernst" du mit

                            'Inhalt aus Materials, Spalte D = nur Kleinschreibung und alle Leerzeichen entfernen
lstrM = LCase(Replace(.Range("D" & lloRowM).Value, " ", ""))
'Inhalt aus Finish Codes, Spalte A = nur Kleinschreibung und alle Leerzeichen entfernen
lstrFC = LCase(Replace(lshFC.Range("A" & lloRowFC).Value, " ", ""))
die Leerzeichen oder?

Das darf aber für meine Anforderung nicht so sein.
In deiner hochgeladenen Datei, sollte z.B. "D46" auch rot markiert werden, da Zelleninhalt Tabelle ("Materials"): R = Without surface treatment (mit Leerzeichen neben dem =) und Vergleich in Tabelle ("Finish Codes") : R=Without surface treatment (ohne Leerzeichen). Ebenfalls "D62" sollte rot markiert werden da r=Without surface treatment (in Tabelle("Materials")) <> r=Without surface treatment (in Tabelle("Finish Codes")).

Es soll wie gesagt jede Zelle in Tabelle("Materials") ab "D6" rot markiert werden, die in irgendeiner hinsicht von der Vorlage in Tabelle("Finish Codes") abweicht.
Das hat den Hintergrund, dass ich Fehler aufzeigen möchte.

Gruß
Kevin

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hi Kevin,

ich bin Thorsten, nich Thorstem
Aber ok, weil du hier Anfänger bist, lass ich das noch ma durchgehen :-)

aaaabeerrr...nich durchgehen lass ich, wenn jemand nich alle Fakten nennt, die für ihn wichtig sind ;-)

Ok, aber ich hatte wohl auch n Denkfehler - jep, mit lstrM (und ...FC) = usw entferne ich - alle Leerzeichen
Ich dachte, dir kommt es wirklich ganz allein nur darauf an, ob unterschiedliche Buchstaben/Zahlen enthalten sind - dass auch bei unterschiedlich gesetzten Leerzeichen = rot werden soll hatte ich nicht erkannt.

Ich versuch noch mal mein Glück...hach..es sei denn, ich war bei Peters Idee zu voreilig und er hat doch die Lösung für dich!
Ich wart mal auf deine Antwort zu seiner Idee.

Ciao
Thorsten

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hi Thorsten,

sorry für den Schreibfehler *Shame on me*

ja du hast vollkommen recht, das war mein Fehler, sorry.
Wenn ich wieder auf eine Frage stoße, dann nehme ich an, dass ich es ausführlicher erklären muss und gleich eine bsp Datei mit anhängen sollte.

Gruß Kevin

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hallo Kev,

probiere mal meine Lösung (bevor Du noch hundertmal Codeänderungen machst).

https://www.herber.de/bbs/user/153245.xlsm

Rückmeldung wäre schön.

Mit freundlichem Gruß
Peter Kloßek

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hi Peter,

und wo findet man in den Tabellen Werte mit gleichem Text aber unterschiedlicher Anzahl an....Leerzeichen?

Mist...jetzt hätte Kevin schon die 101. Codekorrektur^^...lalala

Ciao
Thorsten

nach oben  nach unten

Betrifft: vielleicht...
...nehm ich meine Klugscheißerei ^^ zurück :-)

Hi Peter,

mal sehen, was Kevin zu deiner Idee schreibt.

Ciao
Thorsten

nach oben  nach unten

Betrifft: ok, ich...
Hi Peter!

...bitte dich um Entschuldigung!
Kevin ist mit deiner Idee fast zufrieden - aber das "fast" bezieht sich auf eine neue Frage von ihm....das grundsätzliche Problem konntest du lösen.
Da war ich zu vorschnell mit meiner 1. Antwort an dich - tut mir leid.

Ciao
Thorsten

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hallo Thorsten,

von Texten mit einer unterschiedlichen Anzahl an Leerzeichen war in der Aufgabenstellung von Kev keine Rede - hab dort sowas jedenfalls nicht gesehen. Leere Zeilen können beliebig vorkommen. Gleiche Reihenfolge in beiden Tabellen ist ebenso nicht erforderlich.

M.f.G. Peter Kloßek

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hallo Peter,

hab deinen Code getestet und funktioniert auch super!
mit dem .Find habe ich auch zuvor schon mal einiges probiert, aber es dann doch gelassen, weil ich soweit einfach noch nicht bin.
Wenn ich das aber richtig verstehe, wird in deinem Code Zelle für Zelle ausgewählt und überprüft oder?
Wird es dann bei einer großen Datei nicht zu Performanceproblemen kommen?

Danke für deine Hilfe :)

Gruß Kevin

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hallo Kevin,

iich habe die Tabelle „FinishCodes“ im Makro2 auf 10.000 Zeilen ausgelegt. Wenn die Tabelle „Materials“ sehr lang ist, kann die Ausführung entsprechend dauern. Dies sollte aber in Kauf genommen werden, weil

1. der Vergleich über die gesamte Zelle geht
2. Groß und Kleinschreibung berücksichtigt wird
3. die Reihenfolge in den beiden Tabellen unterschiedlich sein kann
4. die Leerzeilen beliebig in beiden Tabellen vorkommen können

Die Leer- z e i c h e n gehören natürlich zu den Vergleichskriterien. Sollten hiervon einige zu viel vorhanden sein, können sie mit „TRIM“ eliminiert werden. Siehe hierzu
https://www.denisreis.com › excel-vba-leerzeichen-mit-trim-entfernen

Mit freundlichem Gruß
Peter Kloßek

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Berichtigung
Es muß heißen ...com/excel... in der Url, bitte berichtigen.
M.f.G. Peter Kloßek

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hallo Peter,

danke für deine ausführliche Antwort :)
Ich werde es einfach mal ausprobieren und mir das TRIM ebenfalls ansehen.

Damit ist meine Frage mit vollster Zufriedenheit beantwortet :)

Gruß Kevin

Anzeige
AW: Zelleninhalte Sheet1 in Sheet2 finden
24.05.2022 12:58:35
Kev
Hi Rudi + Thorsten,

Bei Rudis Code ignoriert er sowohl Groß/Kleinschreibung, als auch Leerzeichen. Ich häng eine Beispiel Datei an. Vielleicht hab ich es auch einfach schlecht beschrieben.

https://www.herber.de/bbs/user/153240.xlsm

Ich versuch es nochmal ausführlich zu erklären:
in Tabelle ("Finish Codes") gebe ich in Spalte A Texte vor
in Tabelle ("Materials") sollen alle befüllten Zellen ab "D6" bis letzte mit den Vorgaben verglichen werden
wenn Unterscheidung (egal ob Groß/Kleinschreibung oder Leerzeichen oder anderes) soll Zelle in Tabelle ("Materials") rot hinterlegt werden
leere Zellen in Tabelle ("Materials") sollen ignoriert werden

Ich finde es klasse, dass ihr versucht mir zu helfen.
nochmal vielen Dank dafür.

Gruß
Kevin

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
hatte nen Logikfehler.

Sub kev()
Dim arrMat, arrFC, lFC As Long, lMat As Long
Dim bFOUND As Boolean
With Sheets("Materials")
.Columns(4).Interior.Color = xlNone
arrMat = .Range(.Cells(6, 4), .Cells(Rows.Count, 4).End(xlUp)).Value
End With
With Sheets("Finish Codes")
arrFC = .Range(.Cells(1, 1), .Cells(Rows.Count, 1).End(xlUp)).Value
End With
For lMat = 1 To UBound(arrMat)
bFOUND = False
If arrMat(lMat, 1) <> "" Then
For lFC = 1 To UBound(arrFC)
Select Case arrFC(lFC, 1)
Case arrMat(lMat, 1)
bFOUND = True
Exit For
End Select
Next lFC
If Not bFOUND Then
Sheets("Materials").Cells(lMat + 5, 4).Interior.Color = vbRed
End If
End If
Next lMat
End Sub
Gruß
Rudi

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hi Kevin,

sorry, aber dass Leerzeichen vorhanden/nicht vorhanden sein können in ansonsten gleichen Texten hattest du - NICHT! - erwähnt
Du hattest nur auf Leerzeilen hingewiesen.
So kann das auch nix werden :-/

Hier die korrigierte Version
https://www.herber.de/bbs/user/153242.xlsm

hab einige Kommentare im Code hinterlassen.

Vllt hilft ja schon Rudis Korrektur, aber ich hab auch für dich "gearbeitet" - will auch ein Feedback.

Ciao
Thorsten

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hi Thorstem,

tut mir leid, dass hier war mein erster Forumbeitrag und bin auch wie gesagt noch Anfänger, was Macros betrifft.

Ich habe mir deine überarbeitete Datei angesehen. Wenn ich es richtig sehe und verstehe "entfernst" du mit

                            'Inhalt aus Materials, Spalte D = nur Kleinschreibung und alle Leerzeichen entfernen
lstrM = LCase(Replace(.Range("D" & lloRowM).Value, " ", ""))
'Inhalt aus Finish Codes, Spalte A = nur Kleinschreibung und alle Leerzeichen entfernen
lstrFC = LCase(Replace(lshFC.Range("A" & lloRowFC).Value, " ", ""))
die Leerzeichen oder?

Das darf aber für meine Anforderung nicht so sein.
In deiner hochgeladenen Datei, sollte z.B. "D46" auch rot markiert werden, da Zelleninhalt Tabelle ("Materials"): R = Without surface treatment (mit Leerzeichen neben dem =) und Vergleich in Tabelle ("Finish Codes") : R=Without surface treatment (ohne Leerzeichen). Ebenfalls "D62" sollte rot markiert werden da r=Without surface treatment (in Tabelle("Materials")) <> r=Without surface treatment (in Tabelle("Finish Codes")).

Es soll wie gesagt jede Zelle in Tabelle("Materials") ab "D6" rot markiert werden, die in irgendeiner hinsicht von der Vorlage in Tabelle("Finish Codes") abweicht.
Das hat den Hintergrund, dass ich Fehler aufzeigen möchte.

Gruß
Kevin

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hi Kevin,

ich bin Thorsten, nich Thorstem
Aber ok, weil du hier Anfänger bist, lass ich das noch ma durchgehen :-)

aaaabeerrr...nich durchgehen lass ich, wenn jemand nich alle Fakten nennt, die für ihn wichtig sind ;-)

Ok, aber ich hatte wohl auch n Denkfehler - jep, mit lstrM (und ...FC) = usw entferne ich - alle Leerzeichen
Ich dachte, dir kommt es wirklich ganz allein nur darauf an, ob unterschiedliche Buchstaben/Zahlen enthalten sind - dass auch bei unterschiedlich gesetzten Leerzeichen = rot werden soll hatte ich nicht erkannt.

Ich versuch noch mal mein Glück...hach..es sei denn, ich war bei Peters Idee zu voreilig und er hat doch die Lösung für dich!
Ich wart mal auf deine Antwort zu seiner Idee.

Ciao
Thorsten

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hi Thorsten,

sorry für den Schreibfehler *Shame on me*

ja du hast vollkommen recht, das war mein Fehler, sorry.
Wenn ich wieder auf eine Frage stoße, dann nehme ich an, dass ich es ausführlicher erklären muss und gleich eine bsp Datei mit anhängen sollte.

Gruß Kevin

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hallo Kev,

probiere mal meine Lösung (bevor Du noch hundertmal Codeänderungen machst).

https://www.herber.de/bbs/user/153245.xlsm

Rückmeldung wäre schön.

Mit freundlichem Gruß
Peter Kloßek

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hi Peter,

und wo findet man in den Tabellen Werte mit gleichem Text aber unterschiedlicher Anzahl an....Leerzeichen?

Mist...jetzt hätte Kevin schon die 101. Codekorrektur^^...lalala

Ciao
Thorsten

nach oben  nach unten

Betrifft: vielleicht...
...nehm ich meine Klugscheißerei ^^ zurück :-)

Hi Peter,

mal sehen, was Kevin zu deiner Idee schreibt.

Ciao
Thorsten

nach oben  nach unten

Betrifft: ok, ich...
Hi Peter!

...bitte dich um Entschuldigung!
Kevin ist mit deiner Idee fast zufrieden - aber das "fast" bezieht sich auf eine neue Frage von ihm....das grundsätzliche Problem konntest du lösen.
Da war ich zu vorschnell mit meiner 1. Antwort an dich - tut mir leid.

Ciao
Thorsten

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hallo Thorsten,

von Texten mit einer unterschiedlichen Anzahl an Leerzeichen war in der Aufgabenstellung von Kev keine Rede - hab dort sowas jedenfalls nicht gesehen. Leere Zeilen können beliebig vorkommen. Gleiche Reihenfolge in beiden Tabellen ist ebenso nicht erforderlich.

M.f.G. Peter Kloßek

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hallo Peter,

hab deinen Code getestet und funktioniert auch super!
mit dem .Find habe ich auch zuvor schon mal einiges probiert, aber es dann doch gelassen, weil ich soweit einfach noch nicht bin.
Wenn ich das aber richtig verstehe, wird in deinem Code Zelle für Zelle ausgewählt und überprüft oder?
Wird es dann bei einer großen Datei nicht zu Performanceproblemen kommen?

Danke für deine Hilfe :)

Gruß Kevin

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hallo Kevin,

iich habe die Tabelle „FinishCodes“ im Makro2 auf 10.000 Zeilen ausgelegt. Wenn die Tabelle „Materials“ sehr lang ist, kann die Ausführung entsprechend dauern. Dies sollte aber in Kauf genommen werden, weil

1. der Vergleich über die gesamte Zelle geht
2. Groß und Kleinschreibung berücksichtigt wird
3. die Reihenfolge in den beiden Tabellen unterschiedlich sein kann
4. die Leerzeilen beliebig in beiden Tabellen vorkommen können

Die Leer- z e i c h e n gehören natürlich zu den Vergleichskriterien. Sollten hiervon einige zu viel vorhanden sein, können sie mit „TRIM“ eliminiert werden. Siehe hierzu
https://www.denisreis.com › excel-vba-leerzeichen-mit-trim-entfernen

Mit freundlichem Gruß
Peter Kloßek

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Berichtigung
Es muß heißen ...com/excel... in der Url, bitte berichtigen.
M.f.G. Peter Kloßek

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hallo Peter,

danke für deine ausführliche Antwort :)
Ich werde es einfach mal ausprobieren und mir das TRIM ebenfalls ansehen.

Damit ist meine Frage mit vollster Zufriedenheit beantwortet :)

Gruß Kevin

Anzeige
AW: Zelleninhalte Sheet1 in Sheet2 finden
24.05.2022 12:58:35
Kev
hatte nen Logikfehler.

Sub kev()
Dim arrMat, arrFC, lFC As Long, lMat As Long
Dim bFOUND As Boolean
With Sheets("Materials")
.Columns(4).Interior.Color = xlNone
arrMat = .Range(.Cells(6, 4), .Cells(Rows.Count, 4).End(xlUp)).Value
End With
With Sheets("Finish Codes")
arrFC = .Range(.Cells(1, 1), .Cells(Rows.Count, 1).End(xlUp)).Value
End With
For lMat = 1 To UBound(arrMat)
bFOUND = False
If arrMat(lMat, 1) <> "" Then
For lFC = 1 To UBound(arrFC)
Select Case arrFC(lFC, 1)
Case arrMat(lMat, 1)
bFOUND = True
Exit For
End Select
Next lFC
If Not bFOUND Then
Sheets("Materials").Cells(lMat + 5, 4).Interior.Color = vbRed
End If
End If
Next lMat
End Sub
Gruß
Rudi

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hi Kevin,

sorry, aber dass Leerzeichen vorhanden/nicht vorhanden sein können in ansonsten gleichen Texten hattest du - NICHT! - erwähnt
Du hattest nur auf Leerzeilen hingewiesen.
So kann das auch nix werden :-/

Hier die korrigierte Version
https://www.herber.de/bbs/user/153242.xlsm

hab einige Kommentare im Code hinterlassen.

Vllt hilft ja schon Rudis Korrektur, aber ich hab auch für dich "gearbeitet" - will auch ein Feedback.

Ciao
Thorsten

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hi Thorstem,

tut mir leid, dass hier war mein erster Forumbeitrag und bin auch wie gesagt noch Anfänger, was Macros betrifft.

Ich habe mir deine überarbeitete Datei angesehen. Wenn ich es richtig sehe und verstehe "entfernst" du mit

                            'Inhalt aus Materials, Spalte D = nur Kleinschreibung und alle Leerzeichen entfernen
lstrM = LCase(Replace(.Range("D" & lloRowM).Value, " ", ""))
'Inhalt aus Finish Codes, Spalte A = nur Kleinschreibung und alle Leerzeichen entfernen
lstrFC = LCase(Replace(lshFC.Range("A" & lloRowFC).Value, " ", ""))
die Leerzeichen oder?

Das darf aber für meine Anforderung nicht so sein.
In deiner hochgeladenen Datei, sollte z.B. "D46" auch rot markiert werden, da Zelleninhalt Tabelle ("Materials"): R = Without surface treatment (mit Leerzeichen neben dem =) und Vergleich in Tabelle ("Finish Codes") : R=Without surface treatment (ohne Leerzeichen). Ebenfalls "D62" sollte rot markiert werden da r=Without surface treatment (in Tabelle("Materials")) <> r=Without surface treatment (in Tabelle("Finish Codes")).

Es soll wie gesagt jede Zelle in Tabelle("Materials") ab "D6" rot markiert werden, die in irgendeiner hinsicht von der Vorlage in Tabelle("Finish Codes") abweicht.
Das hat den Hintergrund, dass ich Fehler aufzeigen möchte.

Gruß
Kevin

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hi Kevin,

ich bin Thorsten, nich Thorstem
Aber ok, weil du hier Anfänger bist, lass ich das noch ma durchgehen :-)

aaaabeerrr...nich durchgehen lass ich, wenn jemand nich alle Fakten nennt, die für ihn wichtig sind ;-)

Ok, aber ich hatte wohl auch n Denkfehler - jep, mit lstrM (und ...FC) = usw entferne ich - alle Leerzeichen
Ich dachte, dir kommt es wirklich ganz allein nur darauf an, ob unterschiedliche Buchstaben/Zahlen enthalten sind - dass auch bei unterschiedlich gesetzten Leerzeichen = rot werden soll hatte ich nicht erkannt.

Ich versuch noch mal mein Glück...hach..es sei denn, ich war bei Peters Idee zu voreilig und er hat doch die Lösung für dich!
Ich wart mal auf deine Antwort zu seiner Idee.

Ciao
Thorsten

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hi Thorsten,

sorry für den Schreibfehler *Shame on me*

ja du hast vollkommen recht, das war mein Fehler, sorry.
Wenn ich wieder auf eine Frage stoße, dann nehme ich an, dass ich es ausführlicher erklären muss und gleich eine bsp Datei mit anhängen sollte.

Gruß Kevin

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hallo Kev,

probiere mal meine Lösung (bevor Du noch hundertmal Codeänderungen machst).

https://www.herber.de/bbs/user/153245.xlsm

Rückmeldung wäre schön.

Mit freundlichem Gruß
Peter Kloßek

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hi Peter,

und wo findet man in den Tabellen Werte mit gleichem Text aber unterschiedlicher Anzahl an....Leerzeichen?

Mist...jetzt hätte Kevin schon die 101. Codekorrektur^^...lalala

Ciao
Thorsten

nach oben  nach unten

Betrifft: vielleicht...
...nehm ich meine Klugscheißerei ^^ zurück :-)

Hi Peter,

mal sehen, was Kevin zu deiner Idee schreibt.

Ciao
Thorsten

nach oben  nach unten

Betrifft: ok, ich...
Hi Peter!

...bitte dich um Entschuldigung!
Kevin ist mit deiner Idee fast zufrieden - aber das "fast" bezieht sich auf eine neue Frage von ihm....das grundsätzliche Problem konntest du lösen.
Da war ich zu vorschnell mit meiner 1. Antwort an dich - tut mir leid.

Ciao
Thorsten

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hallo Thorsten,

von Texten mit einer unterschiedlichen Anzahl an Leerzeichen war in der Aufgabenstellung von Kev keine Rede - hab dort sowas jedenfalls nicht gesehen. Leere Zeilen können beliebig vorkommen. Gleiche Reihenfolge in beiden Tabellen ist ebenso nicht erforderlich.

M.f.G. Peter Kloßek

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hallo Peter,

hab deinen Code getestet und funktioniert auch super!
mit dem .Find habe ich auch zuvor schon mal einiges probiert, aber es dann doch gelassen, weil ich soweit einfach noch nicht bin.
Wenn ich das aber richtig verstehe, wird in deinem Code Zelle für Zelle ausgewählt und überprüft oder?
Wird es dann bei einer großen Datei nicht zu Performanceproblemen kommen?

Danke für deine Hilfe :)

Gruß Kevin

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hallo Kevin,

iich habe die Tabelle „FinishCodes“ im Makro2 auf 10.000 Zeilen ausgelegt. Wenn die Tabelle „Materials“ sehr lang ist, kann die Ausführung entsprechend dauern. Dies sollte aber in Kauf genommen werden, weil

1. der Vergleich über die gesamte Zelle geht
2. Groß und Kleinschreibung berücksichtigt wird
3. die Reihenfolge in den beiden Tabellen unterschiedlich sein kann
4. die Leerzeilen beliebig in beiden Tabellen vorkommen können

Die Leer- z e i c h e n gehören natürlich zu den Vergleichskriterien. Sollten hiervon einige zu viel vorhanden sein, können sie mit „TRIM“ eliminiert werden. Siehe hierzu
https://www.denisreis.com › excel-vba-leerzeichen-mit-trim-entfernen

Mit freundlichem Gruß
Peter Kloßek

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Berichtigung
Es muß heißen ...com/excel... in der Url, bitte berichtigen.
M.f.G. Peter Kloßek

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hallo Peter,

danke für deine ausführliche Antwort :)
Ich werde es einfach mal ausprobieren und mir das TRIM ebenfalls ansehen.

Damit ist meine Frage mit vollster Zufriedenheit beantwortet :)

Gruß Kevin

Anzeige
AW: Zelleninhalte Sheet1 in Sheet2 finden
24.05.2022 12:58:35
Kev
Hi Kevin,

sorry, aber dass Leerzeichen vorhanden/nicht vorhanden sein können in ansonsten gleichen Texten hattest du - NICHT! - erwähnt
Du hattest nur auf Leerzeilen hingewiesen.
So kann das auch nix werden :-/

Hier die korrigierte Version
https://www.herber.de/bbs/user/153242.xlsm

hab einige Kommentare im Code hinterlassen.

Vllt hilft ja schon Rudis Korrektur, aber ich hab auch für dich "gearbeitet" - will auch ein Feedback.

Ciao
Thorsten

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hi Thorstem,

tut mir leid, dass hier war mein erster Forumbeitrag und bin auch wie gesagt noch Anfänger, was Macros betrifft.

Ich habe mir deine überarbeitete Datei angesehen. Wenn ich es richtig sehe und verstehe "entfernst" du mit

                            'Inhalt aus Materials, Spalte D = nur Kleinschreibung und alle Leerzeichen entfernen
lstrM = LCase(Replace(.Range("D" & lloRowM).Value, " ", ""))
'Inhalt aus Finish Codes, Spalte A = nur Kleinschreibung und alle Leerzeichen entfernen
lstrFC = LCase(Replace(lshFC.Range("A" & lloRowFC).Value, " ", ""))
die Leerzeichen oder?

Das darf aber für meine Anforderung nicht so sein.
In deiner hochgeladenen Datei, sollte z.B. "D46" auch rot markiert werden, da Zelleninhalt Tabelle ("Materials"): R = Without surface treatment (mit Leerzeichen neben dem =) und Vergleich in Tabelle ("Finish Codes") : R=Without surface treatment (ohne Leerzeichen). Ebenfalls "D62" sollte rot markiert werden da r=Without surface treatment (in Tabelle("Materials")) <> r=Without surface treatment (in Tabelle("Finish Codes")).

Es soll wie gesagt jede Zelle in Tabelle("Materials") ab "D6" rot markiert werden, die in irgendeiner hinsicht von der Vorlage in Tabelle("Finish Codes") abweicht.
Das hat den Hintergrund, dass ich Fehler aufzeigen möchte.

Gruß
Kevin

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hi Kevin,

ich bin Thorsten, nich Thorstem
Aber ok, weil du hier Anfänger bist, lass ich das noch ma durchgehen :-)

aaaabeerrr...nich durchgehen lass ich, wenn jemand nich alle Fakten nennt, die für ihn wichtig sind ;-)

Ok, aber ich hatte wohl auch n Denkfehler - jep, mit lstrM (und ...FC) = usw entferne ich - alle Leerzeichen
Ich dachte, dir kommt es wirklich ganz allein nur darauf an, ob unterschiedliche Buchstaben/Zahlen enthalten sind - dass auch bei unterschiedlich gesetzten Leerzeichen = rot werden soll hatte ich nicht erkannt.

Ich versuch noch mal mein Glück...hach..es sei denn, ich war bei Peters Idee zu voreilig und er hat doch die Lösung für dich!
Ich wart mal auf deine Antwort zu seiner Idee.

Ciao
Thorsten

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hi Thorsten,

sorry für den Schreibfehler *Shame on me*

ja du hast vollkommen recht, das war mein Fehler, sorry.
Wenn ich wieder auf eine Frage stoße, dann nehme ich an, dass ich es ausführlicher erklären muss und gleich eine bsp Datei mit anhängen sollte.

Gruß Kevin

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hallo Kev,

probiere mal meine Lösung (bevor Du noch hundertmal Codeänderungen machst).

https://www.herber.de/bbs/user/153245.xlsm

Rückmeldung wäre schön.

Mit freundlichem Gruß
Peter Kloßek

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hi Peter,

und wo findet man in den Tabellen Werte mit gleichem Text aber unterschiedlicher Anzahl an....Leerzeichen?

Mist...jetzt hätte Kevin schon die 101. Codekorrektur^^...lalala

Ciao
Thorsten

nach oben  nach unten

Betrifft: vielleicht...
...nehm ich meine Klugscheißerei ^^ zurück :-)

Hi Peter,

mal sehen, was Kevin zu deiner Idee schreibt.

Ciao
Thorsten

nach oben  nach unten

Betrifft: ok, ich...
Hi Peter!

...bitte dich um Entschuldigung!
Kevin ist mit deiner Idee fast zufrieden - aber das "fast" bezieht sich auf eine neue Frage von ihm....das grundsätzliche Problem konntest du lösen.
Da war ich zu vorschnell mit meiner 1. Antwort an dich - tut mir leid.

Ciao
Thorsten

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hallo Thorsten,

von Texten mit einer unterschiedlichen Anzahl an Leerzeichen war in der Aufgabenstellung von Kev keine Rede - hab dort sowas jedenfalls nicht gesehen. Leere Zeilen können beliebig vorkommen. Gleiche Reihenfolge in beiden Tabellen ist ebenso nicht erforderlich.

M.f.G. Peter Kloßek

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hallo Peter,

hab deinen Code getestet und funktioniert auch super!
mit dem .Find habe ich auch zuvor schon mal einiges probiert, aber es dann doch gelassen, weil ich soweit einfach noch nicht bin.
Wenn ich das aber richtig verstehe, wird in deinem Code Zelle für Zelle ausgewählt und überprüft oder?
Wird es dann bei einer großen Datei nicht zu Performanceproblemen kommen?

Danke für deine Hilfe :)

Gruß Kevin

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hallo Kevin,

iich habe die Tabelle „FinishCodes“ im Makro2 auf 10.000 Zeilen ausgelegt. Wenn die Tabelle „Materials“ sehr lang ist, kann die Ausführung entsprechend dauern. Dies sollte aber in Kauf genommen werden, weil

1. der Vergleich über die gesamte Zelle geht
2. Groß und Kleinschreibung berücksichtigt wird
3. die Reihenfolge in den beiden Tabellen unterschiedlich sein kann
4. die Leerzeilen beliebig in beiden Tabellen vorkommen können

Die Leer- z e i c h e n gehören natürlich zu den Vergleichskriterien. Sollten hiervon einige zu viel vorhanden sein, können sie mit „TRIM“ eliminiert werden. Siehe hierzu
https://www.denisreis.com › excel-vba-leerzeichen-mit-trim-entfernen

Mit freundlichem Gruß
Peter Kloßek

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Berichtigung
Es muß heißen ...com/excel... in der Url, bitte berichtigen.
M.f.G. Peter Kloßek

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hallo Peter,

danke für deine ausführliche Antwort :)
Ich werde es einfach mal ausprobieren und mir das TRIM ebenfalls ansehen.

Damit ist meine Frage mit vollster Zufriedenheit beantwortet :)

Gruß Kevin

Anzeige
AW: Zelleninhalte Sheet1 in Sheet2 finden
24.05.2022 12:58:35
Kev
Hi Thorstem,

tut mir leid, dass hier war mein erster Forumbeitrag und bin auch wie gesagt noch Anfänger, was Macros betrifft.

Ich habe mir deine überarbeitete Datei angesehen. Wenn ich es richtig sehe und verstehe "entfernst" du mit

                            'Inhalt aus Materials, Spalte D = nur Kleinschreibung und alle Leerzeichen entfernen
lstrM = LCase(Replace(.Range("D" & lloRowM).Value, " ", ""))
'Inhalt aus Finish Codes, Spalte A = nur Kleinschreibung und alle Leerzeichen entfernen
lstrFC = LCase(Replace(lshFC.Range("A" & lloRowFC).Value, " ", ""))
die Leerzeichen oder?

Das darf aber für meine Anforderung nicht so sein.
In deiner hochgeladenen Datei, sollte z.B. "D46" auch rot markiert werden, da Zelleninhalt Tabelle ("Materials"): R = Without surface treatment (mit Leerzeichen neben dem =) und Vergleich in Tabelle ("Finish Codes") : R=Without surface treatment (ohne Leerzeichen). Ebenfalls "D62" sollte rot markiert werden da r=Without surface treatment (in Tabelle("Materials")) <> r=Without surface treatment (in Tabelle("Finish Codes")).

Es soll wie gesagt jede Zelle in Tabelle("Materials") ab "D6" rot markiert werden, die in irgendeiner hinsicht von der Vorlage in Tabelle("Finish Codes") abweicht.
Das hat den Hintergrund, dass ich Fehler aufzeigen möchte.

Gruß
Kevin

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hi Kevin,

ich bin Thorsten, nich Thorstem
Aber ok, weil du hier Anfänger bist, lass ich das noch ma durchgehen :-)

aaaabeerrr...nich durchgehen lass ich, wenn jemand nich alle Fakten nennt, die für ihn wichtig sind ;-)

Ok, aber ich hatte wohl auch n Denkfehler - jep, mit lstrM (und ...FC) = usw entferne ich - alle Leerzeichen
Ich dachte, dir kommt es wirklich ganz allein nur darauf an, ob unterschiedliche Buchstaben/Zahlen enthalten sind - dass auch bei unterschiedlich gesetzten Leerzeichen = rot werden soll hatte ich nicht erkannt.

Ich versuch noch mal mein Glück...hach..es sei denn, ich war bei Peters Idee zu voreilig und er hat doch die Lösung für dich!
Ich wart mal auf deine Antwort zu seiner Idee.

Ciao
Thorsten

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hi Thorsten,

sorry für den Schreibfehler *Shame on me*

ja du hast vollkommen recht, das war mein Fehler, sorry.
Wenn ich wieder auf eine Frage stoße, dann nehme ich an, dass ich es ausführlicher erklären muss und gleich eine bsp Datei mit anhängen sollte.

Gruß Kevin

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hallo Kev,

probiere mal meine Lösung (bevor Du noch hundertmal Codeänderungen machst).

https://www.herber.de/bbs/user/153245.xlsm

Rückmeldung wäre schön.

Mit freundlichem Gruß
Peter Kloßek

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hi Peter,

und wo findet man in den Tabellen Werte mit gleichem Text aber unterschiedlicher Anzahl an....Leerzeichen?

Mist...jetzt hätte Kevin schon die 101. Codekorrektur^^...lalala

Ciao
Thorsten

nach oben  nach unten

Betrifft: vielleicht...
...nehm ich meine Klugscheißerei ^^ zurück :-)

Hi Peter,

mal sehen, was Kevin zu deiner Idee schreibt.

Ciao
Thorsten

nach oben  nach unten

Betrifft: ok, ich...
Hi Peter!

...bitte dich um Entschuldigung!
Kevin ist mit deiner Idee fast zufrieden - aber das "fast" bezieht sich auf eine neue Frage von ihm....das grundsätzliche Problem konntest du lösen.
Da war ich zu vorschnell mit meiner 1. Antwort an dich - tut mir leid.

Ciao
Thorsten

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hallo Thorsten,

von Texten mit einer unterschiedlichen Anzahl an Leerzeichen war in der Aufgabenstellung von Kev keine Rede - hab dort sowas jedenfalls nicht gesehen. Leere Zeilen können beliebig vorkommen. Gleiche Reihenfolge in beiden Tabellen ist ebenso nicht erforderlich.

M.f.G. Peter Kloßek

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hallo Peter,

hab deinen Code getestet und funktioniert auch super!
mit dem .Find habe ich auch zuvor schon mal einiges probiert, aber es dann doch gelassen, weil ich soweit einfach noch nicht bin.
Wenn ich das aber richtig verstehe, wird in deinem Code Zelle für Zelle ausgewählt und überprüft oder?
Wird es dann bei einer großen Datei nicht zu Performanceproblemen kommen?

Danke für deine Hilfe :)

Gruß Kevin

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hallo Kevin,

iich habe die Tabelle „FinishCodes“ im Makro2 auf 10.000 Zeilen ausgelegt. Wenn die Tabelle „Materials“ sehr lang ist, kann die Ausführung entsprechend dauern. Dies sollte aber in Kauf genommen werden, weil

1. der Vergleich über die gesamte Zelle geht
2. Groß und Kleinschreibung berücksichtigt wird
3. die Reihenfolge in den beiden Tabellen unterschiedlich sein kann
4. die Leerzeilen beliebig in beiden Tabellen vorkommen können

Die Leer- z e i c h e n gehören natürlich zu den Vergleichskriterien. Sollten hiervon einige zu viel vorhanden sein, können sie mit „TRIM“ eliminiert werden. Siehe hierzu
https://www.denisreis.com › excel-vba-leerzeichen-mit-trim-entfernen

Mit freundlichem Gruß
Peter Kloßek

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Berichtigung
Es muß heißen ...com/excel... in der Url, bitte berichtigen.
M.f.G. Peter Kloßek

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hallo Peter,

danke für deine ausführliche Antwort :)
Ich werde es einfach mal ausprobieren und mir das TRIM ebenfalls ansehen.

Damit ist meine Frage mit vollster Zufriedenheit beantwortet :)

Gruß Kevin

AW: Zelleninhalte Sheet1 in Sheet2 finden
24.05.2022 12:58:35
Kev
Hi Kevin,

ich bin Thorsten, nich Thorstem
Aber ok, weil du hier Anfänger bist, lass ich das noch ma durchgehen :-)

aaaabeerrr...nich durchgehen lass ich, wenn jemand nich alle Fakten nennt, die für ihn wichtig sind ;-)

Ok, aber ich hatte wohl auch n Denkfehler - jep, mit lstrM (und ...FC) = usw entferne ich - alle Leerzeichen
Ich dachte, dir kommt es wirklich ganz allein nur darauf an, ob unterschiedliche Buchstaben/Zahlen enthalten sind - dass auch bei unterschiedlich gesetzten Leerzeichen = rot werden soll hatte ich nicht erkannt.

Ich versuch noch mal mein Glück...hach..es sei denn, ich war bei Peters Idee zu voreilig und er hat doch die Lösung für dich!
Ich wart mal auf deine Antwort zu seiner Idee.

Ciao
Thorsten

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hi Thorsten,

sorry für den Schreibfehler *Shame on me*

ja du hast vollkommen recht, das war mein Fehler, sorry.
Wenn ich wieder auf eine Frage stoße, dann nehme ich an, dass ich es ausführlicher erklären muss und gleich eine bsp Datei mit anhängen sollte.

Gruß Kevin

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hallo Kev,

probiere mal meine Lösung (bevor Du noch hundertmal Codeänderungen machst).

https://www.herber.de/bbs/user/153245.xlsm

Rückmeldung wäre schön.

Mit freundlichem Gruß
Peter Kloßek

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hi Peter,

und wo findet man in den Tabellen Werte mit gleichem Text aber unterschiedlicher Anzahl an....Leerzeichen?

Mist...jetzt hätte Kevin schon die 101. Codekorrektur^^...lalala

Ciao
Thorsten

nach oben  nach unten

Betrifft: vielleicht...
...nehm ich meine Klugscheißerei ^^ zurück :-)

Hi Peter,

mal sehen, was Kevin zu deiner Idee schreibt.

Ciao
Thorsten

nach oben  nach unten

Betrifft: ok, ich...
Hi Peter!

...bitte dich um Entschuldigung!
Kevin ist mit deiner Idee fast zufrieden - aber das "fast" bezieht sich auf eine neue Frage von ihm....das grundsätzliche Problem konntest du lösen.
Da war ich zu vorschnell mit meiner 1. Antwort an dich - tut mir leid.

Ciao
Thorsten

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hallo Thorsten,

von Texten mit einer unterschiedlichen Anzahl an Leerzeichen war in der Aufgabenstellung von Kev keine Rede - hab dort sowas jedenfalls nicht gesehen. Leere Zeilen können beliebig vorkommen. Gleiche Reihenfolge in beiden Tabellen ist ebenso nicht erforderlich.

M.f.G. Peter Kloßek

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hallo Peter,

hab deinen Code getestet und funktioniert auch super!
mit dem .Find habe ich auch zuvor schon mal einiges probiert, aber es dann doch gelassen, weil ich soweit einfach noch nicht bin.
Wenn ich das aber richtig verstehe, wird in deinem Code Zelle für Zelle ausgewählt und überprüft oder?
Wird es dann bei einer großen Datei nicht zu Performanceproblemen kommen?

Danke für deine Hilfe :)

Gruß Kevin

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hallo Kevin,

iich habe die Tabelle „FinishCodes“ im Makro2 auf 10.000 Zeilen ausgelegt. Wenn die Tabelle „Materials“ sehr lang ist, kann die Ausführung entsprechend dauern. Dies sollte aber in Kauf genommen werden, weil

1. der Vergleich über die gesamte Zelle geht
2. Groß und Kleinschreibung berücksichtigt wird
3. die Reihenfolge in den beiden Tabellen unterschiedlich sein kann
4. die Leerzeilen beliebig in beiden Tabellen vorkommen können

Die Leer- z e i c h e n gehören natürlich zu den Vergleichskriterien. Sollten hiervon einige zu viel vorhanden sein, können sie mit „TRIM“ eliminiert werden. Siehe hierzu
https://www.denisreis.com › excel-vba-leerzeichen-mit-trim-entfernen

Mit freundlichem Gruß
Peter Kloßek

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Berichtigung
Es muß heißen ...com/excel... in der Url, bitte berichtigen.
M.f.G. Peter Kloßek

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hallo Peter,

danke für deine ausführliche Antwort :)
Ich werde es einfach mal ausprobieren und mir das TRIM ebenfalls ansehen.

Damit ist meine Frage mit vollster Zufriedenheit beantwortet :)

Gruß Kevin

AW: Zelleninhalte Sheet1 in Sheet2 finden
24.05.2022 12:58:35
Kev
Hi Thorsten,

sorry für den Schreibfehler *Shame on me*

ja du hast vollkommen recht, das war mein Fehler, sorry.
Wenn ich wieder auf eine Frage stoße, dann nehme ich an, dass ich es ausführlicher erklären muss und gleich eine bsp Datei mit anhängen sollte.

Gruß Kevin

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hallo Kev,

probiere mal meine Lösung (bevor Du noch hundertmal Codeänderungen machst).

https://www.herber.de/bbs/user/153245.xlsm

Rückmeldung wäre schön.

Mit freundlichem Gruß
Peter Kloßek

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hi Peter,

und wo findet man in den Tabellen Werte mit gleichem Text aber unterschiedlicher Anzahl an....Leerzeichen?

Mist...jetzt hätte Kevin schon die 101. Codekorrektur^^...lalala

Ciao
Thorsten

nach oben  nach unten

Betrifft: vielleicht...
...nehm ich meine Klugscheißerei ^^ zurück :-)

Hi Peter,

mal sehen, was Kevin zu deiner Idee schreibt.

Ciao
Thorsten

nach oben  nach unten

Betrifft: ok, ich...
Hi Peter!

...bitte dich um Entschuldigung!
Kevin ist mit deiner Idee fast zufrieden - aber das "fast" bezieht sich auf eine neue Frage von ihm....das grundsätzliche Problem konntest du lösen.
Da war ich zu vorschnell mit meiner 1. Antwort an dich - tut mir leid.

Ciao
Thorsten

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hallo Thorsten,

von Texten mit einer unterschiedlichen Anzahl an Leerzeichen war in der Aufgabenstellung von Kev keine Rede - hab dort sowas jedenfalls nicht gesehen. Leere Zeilen können beliebig vorkommen. Gleiche Reihenfolge in beiden Tabellen ist ebenso nicht erforderlich.

M.f.G. Peter Kloßek

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hallo Peter,

hab deinen Code getestet und funktioniert auch super!
mit dem .Find habe ich auch zuvor schon mal einiges probiert, aber es dann doch gelassen, weil ich soweit einfach noch nicht bin.
Wenn ich das aber richtig verstehe, wird in deinem Code Zelle für Zelle ausgewählt und überprüft oder?
Wird es dann bei einer großen Datei nicht zu Performanceproblemen kommen?

Danke für deine Hilfe :)

Gruß Kevin

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hallo Kevin,

iich habe die Tabelle „FinishCodes“ im Makro2 auf 10.000 Zeilen ausgelegt. Wenn die Tabelle „Materials“ sehr lang ist, kann die Ausführung entsprechend dauern. Dies sollte aber in Kauf genommen werden, weil

1. der Vergleich über die gesamte Zelle geht
2. Groß und Kleinschreibung berücksichtigt wird
3. die Reihenfolge in den beiden Tabellen unterschiedlich sein kann
4. die Leerzeilen beliebig in beiden Tabellen vorkommen können

Die Leer- z e i c h e n gehören natürlich zu den Vergleichskriterien. Sollten hiervon einige zu viel vorhanden sein, können sie mit „TRIM“ eliminiert werden. Siehe hierzu
https://www.denisreis.com › excel-vba-leerzeichen-mit-trim-entfernen

Mit freundlichem Gruß
Peter Kloßek

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Berichtigung
Es muß heißen ...com/excel... in der Url, bitte berichtigen.
M.f.G. Peter Kloßek

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hallo Peter,

danke für deine ausführliche Antwort :)
Ich werde es einfach mal ausprobieren und mir das TRIM ebenfalls ansehen.

Damit ist meine Frage mit vollster Zufriedenheit beantwortet :)

Gruß Kevin

AW: Zelleninhalte Sheet1 in Sheet2 finden
24.05.2022 12:58:35
Kev
Hallo Kev,

probiere mal meine Lösung (bevor Du noch hundertmal Codeänderungen machst).

https://www.herber.de/bbs/user/153245.xlsm

Rückmeldung wäre schön.

Mit freundlichem Gruß
Peter Kloßek

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hi Peter,

und wo findet man in den Tabellen Werte mit gleichem Text aber unterschiedlicher Anzahl an....Leerzeichen?

Mist...jetzt hätte Kevin schon die 101. Codekorrektur^^...lalala

Ciao
Thorsten

nach oben  nach unten

Betrifft: vielleicht...
...nehm ich meine Klugscheißerei ^^ zurück :-)

Hi Peter,

mal sehen, was Kevin zu deiner Idee schreibt.

Ciao
Thorsten

nach oben  nach unten

Betrifft: ok, ich...
Hi Peter!

...bitte dich um Entschuldigung!
Kevin ist mit deiner Idee fast zufrieden - aber das "fast" bezieht sich auf eine neue Frage von ihm....das grundsätzliche Problem konntest du lösen.
Da war ich zu vorschnell mit meiner 1. Antwort an dich - tut mir leid.

Ciao
Thorsten

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hallo Thorsten,

von Texten mit einer unterschiedlichen Anzahl an Leerzeichen war in der Aufgabenstellung von Kev keine Rede - hab dort sowas jedenfalls nicht gesehen. Leere Zeilen können beliebig vorkommen. Gleiche Reihenfolge in beiden Tabellen ist ebenso nicht erforderlich.

M.f.G. Peter Kloßek

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hallo Peter,

hab deinen Code getestet und funktioniert auch super!
mit dem .Find habe ich auch zuvor schon mal einiges probiert, aber es dann doch gelassen, weil ich soweit einfach noch nicht bin.
Wenn ich das aber richtig verstehe, wird in deinem Code Zelle für Zelle ausgewählt und überprüft oder?
Wird es dann bei einer großen Datei nicht zu Performanceproblemen kommen?

Danke für deine Hilfe :)

Gruß Kevin

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hallo Kevin,

iich habe die Tabelle „FinishCodes“ im Makro2 auf 10.000 Zeilen ausgelegt. Wenn die Tabelle „Materials“ sehr lang ist, kann die Ausführung entsprechend dauern. Dies sollte aber in Kauf genommen werden, weil

1. der Vergleich über die gesamte Zelle geht
2. Groß und Kleinschreibung berücksichtigt wird
3. die Reihenfolge in den beiden Tabellen unterschiedlich sein kann
4. die Leerzeilen beliebig in beiden Tabellen vorkommen können

Die Leer- z e i c h e n gehören natürlich zu den Vergleichskriterien. Sollten hiervon einige zu viel vorhanden sein, können sie mit „TRIM“ eliminiert werden. Siehe hierzu
https://www.denisreis.com › excel-vba-leerzeichen-mit-trim-entfernen

Mit freundlichem Gruß
Peter Kloßek

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Berichtigung
Es muß heißen ...com/excel... in der Url, bitte berichtigen.
M.f.G. Peter Kloßek

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hallo Peter,

danke für deine ausführliche Antwort :)
Ich werde es einfach mal ausprobieren und mir das TRIM ebenfalls ansehen.

Damit ist meine Frage mit vollster Zufriedenheit beantwortet :)

Gruß Kevin

AW: Zelleninhalte Sheet1 in Sheet2 finden
24.05.2022 12:58:35
Kev
Hi Peter,

und wo findet man in den Tabellen Werte mit gleichem Text aber unterschiedlicher Anzahl an....Leerzeichen?

Mist...jetzt hätte Kevin schon die 101. Codekorrektur^^...lalala

Ciao
Thorsten

nach oben  nach unten

Betrifft: vielleicht...
...nehm ich meine Klugscheißerei ^^ zurück :-)

Hi Peter,

mal sehen, was Kevin zu deiner Idee schreibt.

Ciao
Thorsten

nach oben  nach unten

Betrifft: ok, ich...
Hi Peter!

...bitte dich um Entschuldigung!
Kevin ist mit deiner Idee fast zufrieden - aber das "fast" bezieht sich auf eine neue Frage von ihm....das grundsätzliche Problem konntest du lösen.
Da war ich zu vorschnell mit meiner 1. Antwort an dich - tut mir leid.

Ciao
Thorsten

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hallo Thorsten,

von Texten mit einer unterschiedlichen Anzahl an Leerzeichen war in der Aufgabenstellung von Kev keine Rede - hab dort sowas jedenfalls nicht gesehen. Leere Zeilen können beliebig vorkommen. Gleiche Reihenfolge in beiden Tabellen ist ebenso nicht erforderlich.

M.f.G. Peter Kloßek

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hallo Peter,

hab deinen Code getestet und funktioniert auch super!
mit dem .Find habe ich auch zuvor schon mal einiges probiert, aber es dann doch gelassen, weil ich soweit einfach noch nicht bin.
Wenn ich das aber richtig verstehe, wird in deinem Code Zelle für Zelle ausgewählt und überprüft oder?
Wird es dann bei einer großen Datei nicht zu Performanceproblemen kommen?

Danke für deine Hilfe :)

Gruß Kevin

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hallo Kevin,

iich habe die Tabelle „FinishCodes“ im Makro2 auf 10.000 Zeilen ausgelegt. Wenn die Tabelle „Materials“ sehr lang ist, kann die Ausführung entsprechend dauern. Dies sollte aber in Kauf genommen werden, weil

1. der Vergleich über die gesamte Zelle geht
2. Groß und Kleinschreibung berücksichtigt wird
3. die Reihenfolge in den beiden Tabellen unterschiedlich sein kann
4. die Leerzeilen beliebig in beiden Tabellen vorkommen können

Die Leer- z e i c h e n gehören natürlich zu den Vergleichskriterien. Sollten hiervon einige zu viel vorhanden sein, können sie mit „TRIM“ eliminiert werden. Siehe hierzu
https://www.denisreis.com › excel-vba-leerzeichen-mit-trim-entfernen

Mit freundlichem Gruß
Peter Kloßek

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Berichtigung
Es muß heißen ...com/excel... in der Url, bitte berichtigen.
M.f.G. Peter Kloßek

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hallo Peter,

danke für deine ausführliche Antwort :)
Ich werde es einfach mal ausprobieren und mir das TRIM ebenfalls ansehen.

Damit ist meine Frage mit vollster Zufriedenheit beantwortet :)

Gruß Kevin

vielleicht...
24.05.2022 12:58:35
Kev
...nehm ich meine Klugscheißerei ^^ zurück :-)

Hi Peter,

mal sehen, was Kevin zu deiner Idee schreibt.

Ciao
Thorsten

nach oben  nach unten

Betrifft: ok, ich...
Hi Peter!

...bitte dich um Entschuldigung!
Kevin ist mit deiner Idee fast zufrieden - aber das "fast" bezieht sich auf eine neue Frage von ihm....das grundsätzliche Problem konntest du lösen.
Da war ich zu vorschnell mit meiner 1. Antwort an dich - tut mir leid.

Ciao
Thorsten

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hallo Thorsten,

von Texten mit einer unterschiedlichen Anzahl an Leerzeichen war in der Aufgabenstellung von Kev keine Rede - hab dort sowas jedenfalls nicht gesehen. Leere Zeilen können beliebig vorkommen. Gleiche Reihenfolge in beiden Tabellen ist ebenso nicht erforderlich.

M.f.G. Peter Kloßek

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hallo Peter,

hab deinen Code getestet und funktioniert auch super!
mit dem .Find habe ich auch zuvor schon mal einiges probiert, aber es dann doch gelassen, weil ich soweit einfach noch nicht bin.
Wenn ich das aber richtig verstehe, wird in deinem Code Zelle für Zelle ausgewählt und überprüft oder?
Wird es dann bei einer großen Datei nicht zu Performanceproblemen kommen?

Danke für deine Hilfe :)

Gruß Kevin

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hallo Kevin,

iich habe die Tabelle „FinishCodes“ im Makro2 auf 10.000 Zeilen ausgelegt. Wenn die Tabelle „Materials“ sehr lang ist, kann die Ausführung entsprechend dauern. Dies sollte aber in Kauf genommen werden, weil

1. der Vergleich über die gesamte Zelle geht
2. Groß und Kleinschreibung berücksichtigt wird
3. die Reihenfolge in den beiden Tabellen unterschiedlich sein kann
4. die Leerzeilen beliebig in beiden Tabellen vorkommen können

Die Leer- z e i c h e n gehören natürlich zu den Vergleichskriterien. Sollten hiervon einige zu viel vorhanden sein, können sie mit „TRIM“ eliminiert werden. Siehe hierzu
https://www.denisreis.com › excel-vba-leerzeichen-mit-trim-entfernen

Mit freundlichem Gruß
Peter Kloßek

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Berichtigung
Es muß heißen ...com/excel... in der Url, bitte berichtigen.
M.f.G. Peter Kloßek

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hallo Peter,

danke für deine ausführliche Antwort :)
Ich werde es einfach mal ausprobieren und mir das TRIM ebenfalls ansehen.

Damit ist meine Frage mit vollster Zufriedenheit beantwortet :)

Gruß Kevin

ok, ich...
24.05.2022 12:58:35
Kev
Hi Peter!

...bitte dich um Entschuldigung!
Kevin ist mit deiner Idee fast zufrieden - aber das "fast" bezieht sich auf eine neue Frage von ihm....das grundsätzliche Problem konntest du lösen.
Da war ich zu vorschnell mit meiner 1. Antwort an dich - tut mir leid.

Ciao
Thorsten

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hallo Thorsten,

von Texten mit einer unterschiedlichen Anzahl an Leerzeichen war in der Aufgabenstellung von Kev keine Rede - hab dort sowas jedenfalls nicht gesehen. Leere Zeilen können beliebig vorkommen. Gleiche Reihenfolge in beiden Tabellen ist ebenso nicht erforderlich.

M.f.G. Peter Kloßek

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hallo Peter,

hab deinen Code getestet und funktioniert auch super!
mit dem .Find habe ich auch zuvor schon mal einiges probiert, aber es dann doch gelassen, weil ich soweit einfach noch nicht bin.
Wenn ich das aber richtig verstehe, wird in deinem Code Zelle für Zelle ausgewählt und überprüft oder?
Wird es dann bei einer großen Datei nicht zu Performanceproblemen kommen?

Danke für deine Hilfe :)

Gruß Kevin

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hallo Kevin,

iich habe die Tabelle „FinishCodes“ im Makro2 auf 10.000 Zeilen ausgelegt. Wenn die Tabelle „Materials“ sehr lang ist, kann die Ausführung entsprechend dauern. Dies sollte aber in Kauf genommen werden, weil

1. der Vergleich über die gesamte Zelle geht
2. Groß und Kleinschreibung berücksichtigt wird
3. die Reihenfolge in den beiden Tabellen unterschiedlich sein kann
4. die Leerzeilen beliebig in beiden Tabellen vorkommen können

Die Leer- z e i c h e n gehören natürlich zu den Vergleichskriterien. Sollten hiervon einige zu viel vorhanden sein, können sie mit „TRIM“ eliminiert werden. Siehe hierzu
https://www.denisreis.com › excel-vba-leerzeichen-mit-trim-entfernen

Mit freundlichem Gruß
Peter Kloßek

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Berichtigung
Es muß heißen ...com/excel... in der Url, bitte berichtigen.
M.f.G. Peter Kloßek

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hallo Peter,

danke für deine ausführliche Antwort :)
Ich werde es einfach mal ausprobieren und mir das TRIM ebenfalls ansehen.

Damit ist meine Frage mit vollster Zufriedenheit beantwortet :)

Gruß Kevin

AW: Zelleninhalte Sheet1 in Sheet2 finden
24.05.2022 12:58:35
Kev
Hallo Thorsten,

von Texten mit einer unterschiedlichen Anzahl an Leerzeichen war in der Aufgabenstellung von Kev keine Rede - hab dort sowas jedenfalls nicht gesehen. Leere Zeilen können beliebig vorkommen. Gleiche Reihenfolge in beiden Tabellen ist ebenso nicht erforderlich.

M.f.G. Peter Kloßek

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hallo Peter,

hab deinen Code getestet und funktioniert auch super!
mit dem .Find habe ich auch zuvor schon mal einiges probiert, aber es dann doch gelassen, weil ich soweit einfach noch nicht bin.
Wenn ich das aber richtig verstehe, wird in deinem Code Zelle für Zelle ausgewählt und überprüft oder?
Wird es dann bei einer großen Datei nicht zu Performanceproblemen kommen?

Danke für deine Hilfe :)

Gruß Kevin

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hallo Kevin,

iich habe die Tabelle „FinishCodes“ im Makro2 auf 10.000 Zeilen ausgelegt. Wenn die Tabelle „Materials“ sehr lang ist, kann die Ausführung entsprechend dauern. Dies sollte aber in Kauf genommen werden, weil

1. der Vergleich über die gesamte Zelle geht
2. Groß und Kleinschreibung berücksichtigt wird
3. die Reihenfolge in den beiden Tabellen unterschiedlich sein kann
4. die Leerzeilen beliebig in beiden Tabellen vorkommen können

Die Leer- z e i c h e n gehören natürlich zu den Vergleichskriterien. Sollten hiervon einige zu viel vorhanden sein, können sie mit „TRIM“ eliminiert werden. Siehe hierzu
https://www.denisreis.com › excel-vba-leerzeichen-mit-trim-entfernen

Mit freundlichem Gruß
Peter Kloßek

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Berichtigung
Es muß heißen ...com/excel... in der Url, bitte berichtigen.
M.f.G. Peter Kloßek

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hallo Peter,

danke für deine ausführliche Antwort :)
Ich werde es einfach mal ausprobieren und mir das TRIM ebenfalls ansehen.

Damit ist meine Frage mit vollster Zufriedenheit beantwortet :)

Gruß Kevin

AW: Zelleninhalte Sheet1 in Sheet2 finden
24.05.2022 12:58:35
Kev
Hallo Peter,

hab deinen Code getestet und funktioniert auch super!
mit dem .Find habe ich auch zuvor schon mal einiges probiert, aber es dann doch gelassen, weil ich soweit einfach noch nicht bin.
Wenn ich das aber richtig verstehe, wird in deinem Code Zelle für Zelle ausgewählt und überprüft oder?
Wird es dann bei einer großen Datei nicht zu Performanceproblemen kommen?

Danke für deine Hilfe :)

Gruß Kevin

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hallo Kevin,

iich habe die Tabelle „FinishCodes“ im Makro2 auf 10.000 Zeilen ausgelegt. Wenn die Tabelle „Materials“ sehr lang ist, kann die Ausführung entsprechend dauern. Dies sollte aber in Kauf genommen werden, weil

1. der Vergleich über die gesamte Zelle geht
2. Groß und Kleinschreibung berücksichtigt wird
3. die Reihenfolge in den beiden Tabellen unterschiedlich sein kann
4. die Leerzeilen beliebig in beiden Tabellen vorkommen können

Die Leer- z e i c h e n gehören natürlich zu den Vergleichskriterien. Sollten hiervon einige zu viel vorhanden sein, können sie mit „TRIM“ eliminiert werden. Siehe hierzu
https://www.denisreis.com › excel-vba-leerzeichen-mit-trim-entfernen

Mit freundlichem Gruß
Peter Kloßek

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Berichtigung
Es muß heißen ...com/excel... in der Url, bitte berichtigen.
M.f.G. Peter Kloßek

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hallo Peter,

danke für deine ausführliche Antwort :)
Ich werde es einfach mal ausprobieren und mir das TRIM ebenfalls ansehen.

Damit ist meine Frage mit vollster Zufriedenheit beantwortet :)

Gruß Kevin

AW: Zelleninhalte Sheet1 in Sheet2 finden
24.05.2022 12:58:35
Kev
Hallo Kevin,

iich habe die Tabelle „FinishCodes“ im Makro2 auf 10.000 Zeilen ausgelegt. Wenn die Tabelle „Materials“ sehr lang ist, kann die Ausführung entsprechend dauern. Dies sollte aber in Kauf genommen werden, weil

1. der Vergleich über die gesamte Zelle geht
2. Groß und Kleinschreibung berücksichtigt wird
3. die Reihenfolge in den beiden Tabellen unterschiedlich sein kann
4. die Leerzeilen beliebig in beiden Tabellen vorkommen können

Die Leer- z e i c h e n gehören natürlich zu den Vergleichskriterien. Sollten hiervon einige zu viel vorhanden sein, können sie mit „TRIM“ eliminiert werden. Siehe hierzu
https://www.denisreis.com › excel-vba-leerzeichen-mit-trim-entfernen

Mit freundlichem Gruß
Peter Kloßek

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Berichtigung
Es muß heißen ...com/excel... in der Url, bitte berichtigen.
M.f.G. Peter Kloßek

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hallo Peter,

danke für deine ausführliche Antwort :)
Ich werde es einfach mal ausprobieren und mir das TRIM ebenfalls ansehen.

Damit ist meine Frage mit vollster Zufriedenheit beantwortet :)

Gruß Kevin

AW: Zelleninhalte Sheet1 in Sheet2 finden
24.05.2022 12:58:35
Kev
Berichtigung
Es muß heißen ...com/excel... in der Url, bitte berichtigen.
M.f.G. Peter Kloßek

nach oben  nach unten

Betrifft: AW: Zelleninhalte Sheet1 in Sheet2 finden
Hallo Peter,

danke für deine ausführliche Antwort :)
Ich werde es einfach mal ausprobieren und mir das TRIM ebenfalls ansehen.

Damit ist meine Frage mit vollster Zufriedenheit beantwortet :)

Gruß Kevin

AW: Zelleninhalte Sheet1 in Sheet2 finden
24.05.2022 12:58:35
Kev
Hallo Peter,

danke für deine ausführliche Antwort :)
Ich werde es einfach mal ausprobieren und mir das TRIM ebenfalls ansehen.

Damit ist meine Frage mit vollster Zufriedenheit beantwortet :)

Gruß Kevin

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige