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

Spalten vergleichen

Spalten vergleichen
23.09.2003 09:46:23
Thorsten
Hi,

zwar ist das Thema Spaltenvergleich hier ja schon oft angesprochen worden, nur leider schaffe ich es ncht, mir daraus mein Makro zu basteln. Wäre schön, wenn mir jemand helfen würde...
und zwar sollen die jeweils erste Sapalte meiner Tabellenblätter 1 und 2 miteinander verglichen werfen und die Werte die übereinstimmen auf dem 2 Tabellenblatt mit der interiorcolor 19 hinterlegt werden.
Wäre schön, wenn mir da jemand helfen könnte

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

Betreff
Datum
Anwender
Anzeige
AW: Spalten vergleichen
23.09.2003 10:02:19
heinerv
Hallo ohne Namen,

das müßte sich ohne VBA mit der bedingten Formatierung erledigen lassen.

Tabelle2 Spalte A markieren
bedingte Formatierung
Formel= =INDIREKT("Tabelle1!A"&ZEILE())=$B1
entsprechendes Format einstellen
fertig!

Gruß
heinerv
AW: Spalten vergleichen
23.09.2003 10:16:26
Thorsten
Danke,

aber ich bräuchte dafür eine VBA Lösung wenn möglich
AW: Spalten vergleichen
23.09.2003 10:23:27
Hajo_Zi
Hallo Thorsten

vor Jahren habe ich mal folgendes Makro erstellt, falls Du Dich mit VBA ein wenig auskennst kannst Du es Dir ja anpassen.


Sub Tabellen_Vergleichen()
'   2 Tabellen vergleichen und in Tabelle2 kennzeichnen
'   Tabelle1 Original, Tabelle 2 Kopie
'   es wird Zelle A1 mit A1 verglichen usw.
Dim I As Integer
Dim J As Integer
'   Tabelle2 benutzten Bereich Rot markieren
Worksheets("Tabelle2").UsedRange.Interior.ColorIndex = 3
'   vergleich
For I = 2 To Worksheets("Tabelle1").Cells.SpecialCells(xlLastCell).Row
For J = 1 To Cells(I, Columns.Count).End(xlToLeft).Column
If Worksheets("Tabelle1").Cells(I, J) = Worksheets("Tabelle2").Cells(I, J) Then
Worksheets("Tabelle2").Cells(I, J).Interior.ColorIndex = xlNone
End If
Next J
Next I
End Sub



Falls Code vorhanden wurde dieser getestet unter Betriebssystem XP Pro und Excel Version XP SBE.
Bitte kein Mail, Probleme sollen im Forum gelöst werden.

Microsoft MVP für Excel

Das Forum lebt auch von den Rückmeldungen.

Zurzeit gibt es wieder Probleme mit der E-Mail Benachrichtigung.

Ich bekomme Mails zu Beiträgen an denen ich nicht beteiligt bin und zusätzlich noch Mails zu meinen eigenen Beiträgen.
Das Problem mit den eigenen Benachrichtigung kann gelöst werden durch Lösche und Neuanmelden. Dieses möchte ich aber nicht jeden Tag machen.
Um dieses Problem erstmal zu beseitigen habe ich die automatische Mailbenachrichtigung abgeschaltet.
Aus diesem Grunde ist es dem Zufall überlassen ob auf Rückfragen Antworten von mir kommen.


http://home.media-n.de/ziplies/

Anzeige
klappt nicht :-(
23.09.2003 10:47:23
Thorsten
Hallo,
habe versucht, mal das Makro hinzubkeommen, aber das klappt nicht...

das makro sieht so aus:

Sub Spaltenvergleich()
'vergleicht die erste Spalte von Tabellenblatt 1 mit der zweiten Spalten von Tabellenblatt 2 _
und makiert farblich auf Tabellenbaltt 2 die Übereinstimmungen
Dim intLastRow As Integer
Dim wks1 As Worksheet
Dim wks2 As Worksheet
Set wks1 = Worksheets("Tabelle1")
Set wks2 = Worksheets("Tabelle2")

intLastRow = Cells(Rows.Count, 1).End(xlUp).Row
For i = 1 To intLastRow

If wks1.Cells(i, 1).Value = wks2.Cells(i, 2).Value Then
wks2.Cells(i, 2).Interior.ColorIndex = 19

End If
Next
End Sub
     

nur werden die Werte nicht makiert.. scheinbar wird nicht jede Zelle vergleichen, sondern nur a1 mit b1, a2 mit b2.. aber es müsste a1 mit der gesamten spalte b vergleichen werden... muss man dann nen range defineiern?? oder wie läuft das??
Anzeige
AW: klappt nicht :-(
23.09.2003 11:02:33
Dirk
Nee, so wie Hajo das schon getan hat, mit zwei ineinander verschachtelteten Schleifen sollte das schon zum Erfolg führen.
AW: klappt nicht :-(
23.09.2003 11:02:57
Hajo_Zi
Hallo Thorsten

im ersten Beitrag stand was von die ersten Spalten sollen vergilichen werden. Das wäre für mich Spalte A in Tabelle1 mit Spalte A in Tabelle2 jetzt schreibst Du was von Spalte A und B???


Falls Code vorhanden wurde dieser getestet unter Betriebssystem XP Pro und Excel Version XP SBE.
Bitte kein Mail, Probleme sollen im Forum gelöst werden.

Microsoft MVP für Excel

Das Forum lebt auch von den Rückmeldungen.

http://home.media-n.de/ziplies/

Anzeige
AW: klappt nicht :-(
23.09.2003 11:24:48
Thorsten
Hi,

sorry, mein Fehler, die Vergleichsdaten stehen zum einen in der Salte A auf Tabellenblatt1 und inSpalte B Tabellenblatt 2.
Mein Problem besteht weiterhin darin, dass jeder Wert aus Saplte a mit jedem Wert aus Spalte B verglichen werden muss (also nicht nur a1 mit b1.. so läuft das Makro).
Kenne mich da echt nicht mit aus, wie man das anstellt und das zuzassemnfügen von Makros aus der Recherche klappt nicht, versteh die Anweisung für die Schleifen wohl nicht richtig
AW: Spalte A Tab1 mit Spalte B Tab2 vergleichen
23.09.2003 12:02:07
Hajo_Zi
Hallo Thorsten


Sub Tabellen_Vergleichen()
'   erstellt von Hajo.Ziplies@web.de 23.09.03
' http://home.media-n.de/ziplies/
'   2 Tabellen vergleichen und in Tabelle2 kennzeichnen
'   Tabelle1 Original Spalte A,  Tabelle 2 Kopie Spalte B
'   alle die von Tabelle1 in Tabelle2 vorhanden sin sollen gekennzeichnet werden
Dim LoI As Long
Dim LoJ As Long
Dim LoLetzte1 As Long
Dim LoLetzte2 As Long
LoLetzte1 = 65536
With Worksheets("Tabelle1")
If .Range("A65536") = "" Then LoLetzte1 = .Range("A65536").End(xlUp).Row
End With
LoLetzte2 = 65536
With Worksheets("Tabelle2")
If .Range("B65536") = "" Then LoLetzte2 = .Range("B65536").End(xlUp).Row
End With
For LoI = 1 To LoLetzte1
For LoJ = 1 To LoLetzte2
If Worksheets("Tabelle1").Cells(LoI, 1) = Worksheets("Tabelle2").Cells(LoJ, 2) Then
Worksheets("Tabelle2").Cells(LoJ, 2).Interior.ColorIndex = 19
End If
Next LoJ
Next LoI
End Sub



Falls Code vorhanden wurde dieser getestet unter Betriebssystem XP Pro und Excel Version XP SBE.
Bitte kein Mail, Probleme sollen im Forum gelöst werden.

Microsoft MVP für Excel

Das Forum lebt auch von den Rückmeldungen.

http://home.media-n.de/ziplies/

Anzeige
AW: Spalten vergleichen
23.09.2003 11:15:48
Dirk
Versuch's mal hiermit


Sub vergleich()
Dim wks1 As Worksheet
Dim wks2 As Worksheet
Set wks1 = Worksheets("Tabelle1")
Set wks2 = Worksheets("Tabelle2")
i = 1
j = 1
Do Until wks1.Range("A" & i).Value = ""
Do Until wks2.Range("A" & j).Value = ""
If wks1.Range("A" & i).Value = wks2.Range("A" & j).Value Then
wks2.Range("A" & j).Interior.ColorIndex = 19
Exit Do
End If
j = j + 1
Loop
i = i + 1
j = 1
Loop
End Sub

meine Lösung :-)
23.09.2003 11:51:26
Thorsten
Hi,
habe selber 'ne Lösung gefunden, bestimmt nicht die schönste, aber die klappt *freu

Sub Spaltenvergleich_mit_Farbe()
'Vergleicht die Spalte A des Tabellenblattes 1 mit der Spalte 2 des Tabelenblattes 2 _
und markiert die doppelten Werte in Hellgelb

Dim i As Integer, j As Integer
'Festlegen der Variabeln

EndeA = Worksheets("1").Cells(Rows.Count, 1).End(xlUp).Row
'legt das Ende des ersten Bereiches fest
EndeB = Worksheets("2").Cells(Rows.Count, 2).End(xlUp).Row
'legt das Ende des zweiten Bereiches fest
For i = 1 To EndeA
'beginnt bei Zelle 1 und hört bei der letzten ausgefüllten Zelle des Bereiches auf
For j = 1 To EndeB
If Sheets("1").Cells(i, 1) = Sheets("2").Cells(j, 2) Then _
Sheets("2").Cells(j, 2).Interior.ColorIndex = 19

'Fortsetzen der Schleife
Next j
Next i
End Sub
     
Danke nochmal für die Hilfe,
T.
Anzeige
Danke für Rückmeldung
23.09.2003 12:04:51
Hajo_Zi
Hallo Thorsten

da habe ich wohl zu spät aktualisiert.


Falls Code vorhanden wurde dieser getestet unter Betriebssystem XP Pro und Excel Version XP SBE.
Bitte kein Mail, Probleme sollen im Forum gelöst werden.

Microsoft MVP für Excel

Das Forum lebt auch von den Rückmeldungen.

http://home.media-n.de/ziplies/

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige