Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Excel Skript zum Vergleichen zweier Mappen
#1
Hallo Leute,

ich habe folgendes Anliegen:

Ich möchte gerne zwei Mappen mit Namen vergleichen und in Mappe 2 die Namen markieren, welche in Mappe 1 aufgelistet sind.

Beispiel:

Mappe 1 Spalte A1-A5 stehen 5 verschiedene Namen.
Mappe 2 Spalte A1-A50 stehen 50 verschiedene Namen.

Das Skript soll in Mappe 2 die in Mappe 1 stehenden 5 Namen markieren.
Mit einem Namen klappt das soweit gut, nur unterschiedliche bin ich zu dämlich.

Danke im Voraus :)
Antworten Top
#2
moin,

dann zeig doch schon mal dein Skript welches bei einem Namen funktioniert

mfg Tom
Antworten Top
#3
Und wie lautet die Frage?
Antworten Top
#4
Hallo

ich glaube nicht das der Frager einen fertigen Code hat. Mit dem kann er sich seinen eigenen Code zusammenbasteln.
Geändert werden müssen ggf. die Mappen Namen, Tabellen Namen und der Farbcode. Dann sollte das Makro laufen.

mfg Gast 123

Code:
Sub Namen_vergleichen()
Dim AC As Range, AJ As Range
Dim Sht1 As Worksheet  'in Mappe1
Set Sht1 = Workbooks("Mappe1").Sheets("Tabelle1")
With ThisWorkbook.Sheets("Tabelle1")   'Mappe2
     .Range("A1:A50").Interior:ColorIndex = xlNone  
     Farbe = 22  'Innenfarbe festlegen
     For Each AC In Sht1.Range("A1:A5")
     For Each AJ In .Range("A1:A50")
         If AC.Value = AJ.Value Then
            AC.Interior.ColorIndex = Farbe
            Exit For
         End If
     Next AJ
     Next AC
End With
End Sub
Antworten Top
#5
Danke erstmal allen.

Mein Skript sieht bisher so aus:

Code:
Sub MarkiereNamen()
    Dim QuellBereich As Range
    Dim ZielBereich As Range
    Dim Zelle As Range
   
   
    Set QuellBereich = Worksheets("Mappe1").Range("A1:A5")
 
    Set ZielBereich = Worksheets("Mappe2").Range("A1:A100")
   
    For Each Zelle In QuellBereich
     
        If Zelle.Value = "GesuchterName" Then
           
            ZielBereich.Cells(Zelle.Row, 1).Interior.Color = RGB(255, 0, 0)
        End If
    Next Zelle
End Sub


Nur klappt das eben nur mit dem einen spezifischen Namen und nicht mit unterschiedlichen.
Antworten Top
#6
ich würde es so lösen

zu starten aus deinem Worksheet("Mappe1")

Code:
Sub MarkiereNamen()
    Dim i As Integer
    Dim strName As String
    Dim c As Range
    For i = 1 To 5
        strName = Cells(i, 1).Value
        With Worksheets("Mappe2")
            Set c = .Columns(1).Find(strName, LookIn:=xlValues, lookat:=xlWhole)
            If Not c Is Nothing Then
                .Cells(c.Row, 1).Interior.Color = RGB(255, 0, 0)
            End If
        End With
    Next
End Sub

heißen deine Worksheets tatsächlich Mappe1 & Mappe2?

mfg Tom
Antworten Top
#7
Hallo P4tt3x,

Zitat:Ich möchte gerne zwei Mappen mit Namen vergleichen und in Mappe 2 die Namen markieren, welche in Mappe 1 aufgelistet sind.
Das geht auch ganz ohne VBA, mit der bedingten Formatierung.

Arbeitsblatt mit dem Namen 'Tabelle1'
ABC
1Mappe 1Mappe 2
2Name 1Name 5
3Name 2Name 8
4Name 3Name 2
5Name 1
6Name 4
7Name 9
8Name 3
9Name 7
10Name 10
11Name 6
Verwendete Systemkomponenten: [Windows (64-bit) NT 10.00] / MS Excel 2021
Diese Tabelle wurde mit Tab2Html (v2.7.1) erstellt. ©Gerd alias Bamberg

Formel für bedingte Formatierung für den Datenbereich in "Mappe2":
=ZÄHLENWENN($A$2:$A$4;C2)
   

Das funktioniert natürlich auch, wenn die Daten auf unterschiedlichen Tabellenblättern stehen.
(Wenn sich die Daten allerdings in unterschiedlichen Arbeitsmappen befinden, wohl eher nicht)

Gruß
Fred
< es lebe die Hilfsspalte >
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste