Brauchen Sie Hilfe?
Web:     Online-Formular
E-Mail:  
Diese E-Mail-Adresse ist vor Spambots geschützt! Zur Anzeige muss JavaScript eingeschaltet sein!
Tel:       +49(0)151 / 164 55 914

Nutzen Sie für Ihre Anfrage unser Online-Formular oder senden Sie uns eine E-Mail an Diese E-Mail-Adresse ist vor Spambots geschützt! Zur Anzeige muss JavaScript eingeschaltet sein!. Gerne können Sie aber auch direkt telefonisch Kontakt aufnehmen.

   
     Referenzen
 Bosch 
  T-Systems
  Hagebau
  Siemens
 Areva  VW
 Haufe-Lexware  British American Tobacco
  nagel group farbe
   

Zwei Arbeitsmappen miteinander vergleichen

103004


 

Möchten Sie 2 Arbeitsmappen miteinander vergleichen? Dann sollten Sie dieses Makro näher ansehen.
Verglichen werden die Anzahl der Tabellenblätter, die Anzahl der benutzen Zellen und die Zellinhalte.

Zuerst wird die Anzahl der Tabellenblätter unter die Lupe genommen. Bestehen hier bereits unterschiede wird das Makro mit der Meldung "Die Anzahl der Tabellenblätter ist unterschiedlich!" beendet. Ein weiterer Vergleich ist nicht mehr notwendig!

Ist die Anzahl der Tabellenblätter identisch, wird geprüft, ob die Anzahl der benutzten Zellen übereinstimmen. Als benutzte Zelle werden alle Zellen behandelt, die ein Zeichen enthalten. Auch Leerzeichen werden hierbei berücksichtigt. Stimmt die Anzahl der benutzen Zellen nicht überein, wird folgende Meldung ausgegeben:
"Die Anzahl der benutzen Zellen in Blatt x ist unterschiedlich!" und das Makro wird an dieser Stelle beendet.

Stimmt sowohl die Anzahl der Tabellenblätter als auch die Anzahl der benutzen Zellen beider Arbeitsmappen überein, werden jetzt die Zellinhalte verglichen. Unterscheiden sich die Zellinhalte, wird bei jedem Unterschied die Meldung "Unterschied wurde in Blatt x in Zelle y entdeckt!" ausgegeben. Möchten Sie nicht jeden Zell-Unterschied als Hinweis erhalten, so entfernen Sie einfach das Hochkomma' in der 4. Zeile von unten vor dem "Exit For". Sie erhalten dann nur die erste Differenz der beiden Arbeitsmappen mitgeteilt, was in den meisten Fällen auch genügen wird.


Sub Vergleich_Arbeitsmappen()
'Vergleich von Mappe X mit Mappe Y
Dim iWB As Integer, iWS As Integer
Dim rngObj As Range

'Vergleich Anzahl der Tabellenblätter
If Workbooks(1).Worksheets.Count <> Workbooks(2).Worksheets.Count Then
MsgBox "Die Anzahl der Tabellenblätter ist unterschiedlich!"
Exit Sub
End If

'Vergleich der benutzen Zellen
For iWS = 1 To Workbooks(1).Worksheets.Count
If Workbooks(1).Worksheets(iWS).UsedRange.Cells.Count <> Workbooks(2).Worksheets(iWS).UsedRange.Cells.Count Then
MsgBox "Die Anzahl der benutzen Zellen in Blatt " & iWS & " " & "ist unterschiedlich!"
Exit Sub
End If

'Vergleich der Zellinhalte
For Each rngObj In Workbooks(1).Worksheets(iWS).UsedRange
If rngObj.Value <> Workbooks(2).Worksheets(iWS).Range(rngObj.Address).Value Then
For iWB = 1 To 2
Workbooks(iWB).Worksheets(iWS).Activate
ActiveSheet.Range(rngObj.Address).Activate
Next
MsgBox "Unterschied wurde in Blatt " & iWS & " in Zelle " & rngObj.Address(FalseFalse) & " entdeckt!"
'Exit For
End If
Next
Next

End Sub

Damit dieses Makro ordnungsgemäß funktionieren kann dürfen Sie beim Vergleich von zwei Arbeitsmappen nur die zu vergleichenden Mappen öffnen. Alle anderen Mappen schließen Sie bitte.

   

Relevante Artikel

  • Tabellenblätter alphabetisch sortieren

    Dieser VBA-Code sortiert die Tabellenblätter einer Arbeitsmappe in alphabetischer Reihenfolge wahlweise aufsteigend oder absteigend. Um die Sortierreihenfolge zu ändern müssen Sie nur die Variable...

  • Öffnen-Dialog mit vordefinierter Pfadangabe aufrufen

    In diesem Beispiel zeige wir Ihnen, wie Sie per VBA ein Dialogfenster zum Öffnen von Dateien aufrufen können. Das besondere an diesem Code ist, dass ein beliebiges Verzeichnis vorgegeben werden kann und...

  • Dateiname und Pfad in Fußzeile einfügen

      Die Datei muss dazu aber mindestens 1 mal gespeichert worden sein, sonst kann der Pfad ja nicht bekannt sein. Also die Datei zuerst speichern und anschließend das Makro ausführen.   Sub...

  • Programmverzweigung beim Schließen der Arbeitsmappe

    103003 Diese Makro frägt nach, ob die Arbeitsmappe gespeichert werden soll.Bei 'Ja' wird die Arbeitsmappe gespeichert und geschlossen Bei "Nein' kann ein entsprechender Code ausgeführt werden, der...

  • Umbenennen von Dateien per VBA

    105040   Das folgende Makro benennt Dateien um, indem der alte Dateiname einfach durch den neuen ersetzt wird. Public Sub umbenennen() Name "C:\test\mappe1.csv" As "C:\test\mappe1.txt" End Sub   So wird aus der...

   

Excel-Inside auf Facebook Excel-Live News blog Excel-Inside RSS-Feed Twitter Account für Excel-Inside Mail an Excel-Inside 

Programmierung
Excel Auftragsprogrammierung Access Auftragsprogrammierung
Word Auftragsprogrammierung Outlook Auftragsprogrammierung
   
Unsere Produkte
Office Schulungen VBA, Excel, Access
E-Book Formeln und Funktionen Excel 2013