Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
576to580
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
576to580
576to580
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Vergleich von Werten

Vergleich von Werten
28.02.2005 16:51:34
Werten
Hallo!
Ich habe ein Problem und zwar möchte ich aus mehreren Zeilen Werte mit einer anderen Tabelle vergleichen. Generell geht das ja mit Excel, aber da ich sehr viele Werte mit einander vergleichen muß, wird die Datenmenge mit Excelschritten zu groß.
Ich weiß, dass dies mit einer VBA-Funktion ebenfalls möglich ist, um die Datenmengen in der Exceldatei gering zu halten. Meine VBA Kenntnisse sind jeoch zu gering um so etwas zu programmieren.
Kann mir vielleicht jemand bei derProgrammierung behilflich sein?
Beispiel dazu, wenn ein Wert (Bereich C3:G3) aus Zeile 3 gleich einem Wert der Spalte E aus Tabelle2 ist, soll "E" in Feld H3 ausgegeben werden. Es sollen Spalte A:E überprüft werden, ob die Werte dort vorhanden sind. Die letzte Spalte (E) hat die höchste Priorität, dann die Spalte (D) usw. bis zur Spalte (A).
Dazu noch ne Beispieltabelle:
https://www.herber.de/bbs/user/18939.xls
Danke für die Mühe!
Jan

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Vergleich von Werten
Werten
Hallo Jan,
Gruss Beni

Sub Jan()
Dim z, s, c As Integer
With Sheets("Tabelle1")
lz = .Cells(Rows.Count, 3).End(xlUp).Row
For z = 4 To lz 'Zeile 4 - letzte Zeile in Tabelle1
For s = 7 To 3 Step -1 'Spalte 7 - 3 in Tabelle1
If Not .Cells(z, s) = "" Then
Wert = .Cells(z, s)
For c = 5 To 1 Step -1 'Spalte 5 - 1 in Tabelle2
Set w = Sheets("Tabelle2").Columns(c).Find(What:=Wert, LookIn:=xlValues, LookAt:=xlWhole)
If Not w Is Nothing Then
.Cells(z, 8) = Chr(c + 64)
Exit For
End If
Next c
If Not w Is Nothing Then Exit For
End If
Next s
Next z
End With
End Sub

Anzeige
AW: Vergleich von Werten
01.03.2005 09:00:34
Werten
Hi Beni,
Danke das funktioniert, jedoch ist ein Schönheitsfehler drin und zwar wenn ich z.B. in Zelle G7 R 22 eintrage und ich das ganze neu berechnen lasse gibt er mir als Kat. A aus, ob wohl in der Zeile R 30 mit Kat. C am höchsten eingestuft ist.
Jan
AW: Vergleich von Werten
01.03.2005 09:55:20
Werten
Hallo Jan,
Gruss Beni

Sub Jan()
Dim z, s, c As Integer
With Sheets("Tabelle1")
lz = .Cells(Rows.Count, 3).End(xlUp).Row
For z = 4 To lz 'Zeile 4 - letzte Zeile in Tabelle1
For s = 7 To 3 Step -1 'Spalte 7 - 3 in Tabelle1
If Not .Cells(z, s) = "" Then
Wert = .Cells(z, s)
For c = 5 To 1 Step -1 'Spalte 5 - 1 in Tabelle2
Set w = Sheets("Tabelle2").Columns(c).Find(What:=Wert, LookIn:=xlValues, LookAt:=xlWhole)
If Not w Is Nothing Then
If .Cells(z, 8) < Chr(c + 64) Then .Cells(z, 8) = Chr(c + 64)
Exit For
End If
Next c
End If
Next s
Next z
End With
End Sub

Anzeige
AW: Vergleich von Werten
01.03.2005 10:02:25
Werten
Hallo Beni!
Das ist perfekt!
Ich danke Dir vielmals!
Jan
AW: Vergleich von Werten
02.03.2005 09:09:12
Werten
Hi Beni,
ich hab noch mal eine Frage zum Programmablauf und zwar wo muß ich etwas im Programm ändern, damit mir nicht mehr A,B,C ausgegeben wird, sonder die erste Zeile auf dem Zweiten Tabellenblatt, wo ich Statt A z.B. einen Namen eingebe.
Gruß
Jan
AW: Vergleich von Werten
03.03.2005 09:59:35
Werten
Hallo Beni,
weiss nicht, ob Du meine Antworten bzw. Fragen gelesen hast, deshalb noch einmal eine Antwort. Bitte schau sie noch mal durch. Wäre superwenn Du mir helfen könntes.
Gruß
Jan
AW: Vergleich von Werten
03.03.2005 14:50:35
Werten
Hallo Jan,
Gruss Beni

Sub Jan()
Dim z, s, c As Integer
With Sheets("Tabelle1")
lz = .Cells(Rows.Count, 3).End(xlUp).Row
For z = 4 To lz 'Zeile 4 - letzte Zeile in Tabelle1
For s = 7 To 3 Step -1 'Spalte 7 - 3 in Tabelle1
If Not .Cells(z, s) = "" Then
Wert = .Cells(z, s)
For c = 5 To 1 Step -1 'Spalte 5 - 1 in Tabelle2
Set w = Sheets("Tabelle2").Columns(c).Find(What:=Wert, LookIn:=xlValues, LookAt:=xlWhole)
If Not w Is Nothing Then
If .Cells(z, 8) < Chr(c + 64) Then .Cells(z, 8) = Sheets("Tabelle2").Cells(1, c)
Exit For
End If
Next c
End If
Next s
Next z
End With
End Sub

Anzeige
AW: Vergleich von Werten
03.03.2005 15:36:24
Werten
Danke!!!
Gruß
Jan

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige