Supportnet Computer
Planet of Tech

Supportnet / Forum / Tabellenkalkulation

zwei Spalten in Excel vergleichen





Frage

Habe in Spalte A etaw 500 Materialnummer z.B 36685555 und in Splate B die selbe Anzahl von Materialnummern diese beiden Splaten möchte ich gerne vergleichen das dann in Spalte C nur die angezeigt werden die in A und B gleich sind

Antwort 1 von JoeKe

Hallo,

versuch es mal mit folgenden VBA-Code:

Sub Doppelte()
Dim loZeile As Long, Doppelte As Variant, loLetzte As Long
Columns(3).ClearContents
loLetzte = Cells.SpecialCells(xlCellTypeLastCell).Row
For loZeile = 1 To loLetzte
Doppelte = Application.WorksheetFunction.CountIf(Range(Cells(1, 1), _
Cells(loLetzte, 2)), Cells(loZeile, 1))
If Doppelte > 1 Then
Cells(loZeile, 1).Copy Destination:=Cells(Rows.Count, 3).End(xlUp).Offset(1, 0)
End If
Next
End Sub


MfG

JöKe

Antwort 2 von jensen

hi,

kopier doch alle Nummern in eine Spalte und über
Daten - Filter - Spezialfilter - keine Duplikate
lösche Duplikate raus.

Gruss
Jens

Antwort 3 von Disco-STU-GT

@ JöKe: hast du den VBA-Code selber geschrieben oder hast du ein Makro gemacht, oder wie?

Danke

MfG

Disco-STU

Antwort 4 von JoeKe

@Disco-STU

verstehe deine Frage zwar nicht.
Aber das ist von mir geschrieben.

Gruß

JöKe

Antwort 5 von Disco-STU-GT

Nett, meine Codes sehen nie so kompleziert aus, aber naja ich hätte es auch mit der "Wennfunktion" gemacht.

Antwort 6 von JoeKe

@ Disco-STU

das freut mich für dich.
Steht dir auch frei einen weniger komplizierten Code zu posten.

Antwort 7 von Disco-STU-GT

So hätte ich das gemacht:

(bitte korigiere mich wenn ich einen Fehler gemacht habe)

option explicit

Sub Doppelte()
dim zeile as integer

zeile = 1

do until cells(zeile,1).value = ""
if cells(zeile,1).value = cells(zeile,2).value then
cells(zeile,3).value = cells(zeile,1).value
loop

msgbox "Vergleich abgeschlossen!"

habs nicht asprobiert also kann gut sein, das noch ein Fehler drin ist.

MfG

Disco-STU

Antwort 8 von Disco-STU-GT

hab das end sub vergessen, sry ;)

Antwort 9 von JoeKe

Sieht gut aus.

Aber es fehlt ein End If.

Es muss gewährleistet sein, dass die doppelten Einträge in der selben Zeile sind
Zitat:
if cells(zeile,1).value = cells(zeile,2).value


Die Zeile muss um 1 erhöht werden.
Zitat:
zeile = 1



Zeilen sollten als Long deklariert werden. Integer für -32.768 bis 32,767, Long für -2.147.483.648 bis 2.147.483.647. Da (außer bei Office 2007) die Zeilen bis 65536 gehen bist du mit Integer schnell aus dem Rennen.

Gruß

Antwort 10 von Disco-STU-GT

Danke für die Info über die Variablen.

das end if, zeile = zeile +1 und das end sub habe ich vergessen. War in dem moment aber auch erst 15 min wach, sry.

MfG

Disco-STU

Antwort 11 von raanchlo

Kein schleckter Vorschlag aber die Dublikate sollen nicht gelöscht werden sondern wenn möglich in Spalte C angezeigt werden.
Sorry aber die ander Vorschläge verstehe ich nicht weil ich ein absoluter Anfänger in Excel bin.

Antwort 12 von JoeKe

Hallo,

bei den anderen Vorschlägen handelt es sich um VBA Lösungen.
Um sie in deine Mappe zubekommen gehst du wie folgt vor:
    Mit Alt+F11 in die VBA-Umgebung wechseln.

    Falls auf der linken Seite nicht der Projektexplorer (Überschrift:Projekt - VBAProject) zu sehen ist, diesen mit Strg+r einblenden.

    Im Projektexplorer klickst du mir rechts auf: VBAProjekt("Der Name deiner Mappe") und wählst nacheinander "Einfügen" - "Modul".

    In das sich darauf öffnende Codefenster (rechts) kopierst du oben stehenden Code.

    Abschliessend die VBA-Umgebung mit Alt+q verlassen


Um das Makro zu starten bindest du am besten eine Schaltfläche ein. Öffne dafür die Symbolleiste "Formular". Dort wählst du die Schaltfläche mit einem links klick aus. Jetzt kannst du auf deinem Blatt die Schaltfläche zeichnen. Wenn du die Schaltfläche erstellt hast öffnet sich automatisch die Aufstellung deiner Makros, bei dir wahrscheinlich nur "Doppelte", das du dann mit einem doppel-links-klick auswählst. Nun brauchst du nur noch auf irgendeine Zelle auf deinem Blatt klicken und kannst anschliessend die Schaltfläche nutzen. Bei einem klick auf die Schaltfläche werden dann die Spalte A und B auf doppelte Einträge überprüft und die gefundenen in Spalte C aufgelistet.

Ich hoffe du kommst mit der Beschreibung zurecht. Bei Fragen nochmal melden.

Gruß

JöKe

Ich möchte kostenlos eine Frage an die Mitglieder stellen:


Ähnliche Themen:


Suche in allen vorhandenen Beiträgen: