Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

In Excel 2 Spalten vergleichen

Frage Microsoft Microsoft Office

Mitglied: abuelito

abuelito (Level 1) - Jetzt verbinden

24.11.2011 um 12:27 Uhr, 5959 Aufrufe, 4 Kommentare

Hallo an Alle,

ich muss in Excel 2 Spalten aus 2 Tabellen vergleichen

Ich habe eine Excel Datei mit 2 Tabellenblätter (Tabelle 1 ca. 3.000 Zeilen und Tabelle 2 ca. 350 Zeilen).

Jetzt möchte ich gerne die Zeilen, die sich jeweils (in beiden Tabellen) in Spalte A befinden vergleichen und die doppelten in der Tabelle 1 in grün markieren und die, die in Tabelle 1 aber nicht in Tabelle 2 vorhanden sind, diese in Tabelle 1 in rot markieren.

In Spalte A sind die Firmennamen eingetragen. Leider nicht in beiden Tabellen identisch, d.h. in:

Tabelle 1 heisst eine Firma z.B. Mustermann GmbH und in Tabelle 2 heisst die Firma Mustermann GmbH & Co. KG ... Hier sollte die Markierung grün sein, weil die Firma identisch ist und somit in beiden Tabellenblätter vorhanden ist.

Kann man z.B. so vorgehen, dass man nicht den kompletten String in der Zeile vergleicht, sondern z.B. nur die ersten 4 Stellen?

Anbei den Code, den ich zur Zeit verwende:

Dim Blatt_CBF As String, ZeilAb As String
Dim Blatt_MiFid As String, ZeilBe As String
Sub SuchenUndMarkieren()
ZeilAb = 1
Blatt_CBF = "Tabelle1"
Blatt_MiFid = "Tabelle2"

Start:
ZeilBe = 1
Sheets(Blatt_CBF).Select
ZeilAb = ZeilAb + 1
Cells(ZeilAb, 1).Select
If Cells(ZeilAb, 1) = "" Then GoTo Ende
With Selection.Interior
.ColorIndex = 3
End With

Suchen:
ZeilBe = ZeilBe + 1
If Sheets(Blatt_MiFid).Cells(ZeilBe, 1) = "" Then GoTo Start
If Cells(ZeilAb, 1) = Sheets(Blatt_MiFid).Cells(ZeilBe, 1) Then
With Selection.Interior
.ColorIndex = 4
End With
GoTo Start
End If
GoTo Suchen

Ende:
End Sub

Leider wird mir in Tabelle 1 trotzdem fass alles rot markiert, weil die Schreibweise der Firmen, wie oben im Beispiel beschrieben nicht immer identisch ist.

Wer kann mir helfen?

Vielen Dank für die Hilfe

Grüße
Mitglied: 83928
24.11.2011 um 12:47 Uhr
Kann man z.B. so vorgehen, dass man nicht den kompletten String in der Zeile vergleicht, sondern z.B. nur die ersten 4 Stellen?

Hi,
schau Dir mal die Funktion InStr() an....
Gruß
Bitte warten ..
Mitglied: abuelito
24.11.2011 um 13:10 Uhr
Muss ich in der InStr() Funktion nicht eine bestimmte Zeichenfolge (Wort) eingeben, nachdem ich suchen will? Sorry, ich bin noch ein gr. Anfänger.

Grüße
Bitte warten ..
Mitglied: 83928
24.11.2011 um 14:03 Uhr
Ok, war vllt. auch nicht ganz das richtige ;) Probier es mal hiermit:
01.
Dim rngF As Range 
02.
Dim strWhat As String 
03.
Dim i 
04.
For i = 1 To 3000           'Für 3000 Zeilen 
05.
        strWhat = Left(Worksheets("tabelle1").Cells(i, 1).Value, 4) 'Die ersten 4 Zeichen aus Zelle in Tabelle1 
06.
        Set rngF = Worksheets("Tabelle2").Columns(1).Find(strWhat) 'Nach den 4 Zeichen suchen in Tabelle2 
07.
        If Not rngF Is Nothing Then 
08.
            Worksheets("tabelle1").Cells(i, 1).Interior.ColorIndex = 3 'wenn gefunden dann irgendeine Farbe zuweisen 
09.
        Else 
10.
            Worksheets("tabelle1").Cells(i, 1).Interior.ColorIndex = 8 'wenn nicht gefunden dann andere Farbe zuweisen 
11.
        End If 
12.
        Set rngF = Nothing 
13.
Next i
Bitte warten ..
Mitglied: abuelito
25.11.2011 um 11:25 Uhr
Hi, vielen Dank, damit funktionierts
Grüße
Bitte warten ..
Ähnliche Inhalte
Microsoft Office
gelöst Excel: Wert aus mehreren Zeilen vergleichen (2)

Frage von Nicolaas zum Thema Microsoft Office ...

VB for Applications
gelöst Excel VBA Werte von 2 verschiedenen Sheets vergleichen und aktualisieren (4)

Frage von drimrim zum Thema VB for Applications ...

Microsoft Office
Excel Nachfrage: Datum aus Spalte ausgeben (2)

Frage von PronMaster zum Thema Microsoft Office ...

Neue Wissensbeiträge
Entwicklung

Exploit Development

Anleitung von burhanudinn123 zum Thema Entwicklung ...

Windows Update

Microsoft Update KB4034664 verursacht Probleme mit Multimonitor-Systemen

(1)

Tipp von beidermachtvongreyscull zum Thema Windows Update ...

Viren und Trojaner

CNC-Fräsen von MECANUMERIC werden (ggf.) mit Viren, Trojanern, Würmern ausgeliefert

(4)

Erfahrungsbericht von anteNope zum Thema Viren und Trojaner ...

Heiß diskutierte Inhalte
Router & Routing
gelöst Linksys wrt1200ac v2 mit dd-wrt: keine vlan-einstellungen im GUI (15)

Frage von Pixi123 zum Thema Router & Routing ...

Netzwerkprotokolle
Leiten "dumme" Switches VLAN-Tags mit durch? (14)

Frage von coltseavers zum Thema Netzwerkprotokolle ...

E-Business
Wo tragt ihr eure privaten Termine ein? (13)

Frage von honeybee zum Thema E-Business ...

Windows Server
Terminalserver starten willkürlich neu (12)

Frage von thaefliger zum Thema Windows Server ...