Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Zellen mit gleichem Inhalt automatisch verbinden

Zellen mit gleichem Inhalt automatisch verbinden
27.09.2017 14:24:21
Vera
Hallo Zusammen,
ich möchte eine Excel-Tabelle für die Personaleinsatzplanung in einem Produktionsbetrieb erstellen. Es soll übersichtlich dargestellt werden, wann welche Mitarbeiter an welcher Produktionslinie arbeiten, da hier oftmals Verschiebungen stattfinden. Die Tabelle enthält auf der Y-Achse die Namen der Mitarbeiter, auf der X-Achse befindet sich ein dynamischer Kalender mit den einzelnen Tagen. Bisher steht in jeder Zelle (also bei jedem Tag) der Name der Linie .
Zukünftig möchte ich aber, dass die Zellen verbunden werden wenn ein Mitarbeiter mehrere Tage an derselben Linie arbeitet, und dass der Name der Linie in dem so entstandenen Balken nur einmal steht. Es sollen also nur die waagerechten Zellen verbunden werden. Leider weiß ich nicht wie ich das umsetzen kann. Zwar habe ich online einen entsprechenden VBA Code gefunden, kann ihn allerdings nicht ausführen. Ich bin VBA Anfänger und weiß nicht, wie ich die Makro-Umgebung konfigurieren muss damit der Code umgesetzt werden kann. Ein Beispiel wie es ungefähr aussehen soll befindet sich anbei.
Danke im Voraus und viele Grüße,
Vera
Userbild
Anzeige

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA
27.09.2017 18:47:08
Fennek
Hallo Vera,
der Code gehört in ein allgemeines Modul:

Sub iFen()
Application.DisplayAlerts = False
For i = 1 To Cells(Rows.Count, "A").End(xlUp).Row
For j = 2 To Cells(i, Columns.Count).End(xlToLeft).Column
If c1  Cells(i, c1)
c1 = c1 + 1
Loop
Range(Cells(i, j), Cells(i, c1 - 1)).Merge
End If
Next j
c1 = 1
Next i
Application.DisplayAlerts = True
End Sub
Es ist bequemer, das Makro mit einem Button/Bild zu starten als mit alt-F11 oder im Menü "Ansicht;Makros".
mfg
Anzeige

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Zellen mit gleichem Inhalt automatisch verbinden


Schritt-für-Schritt-Anleitung

Um Excel-Zellen mit gleichem Inhalt automatisch zu verbinden, kannst du VBA (Visual Basic for Applications) verwenden. Hier ist eine Schritt-für-Schritt-Anleitung:

  1. VBA-Umgebung öffnen: Drücke Alt + F11, um den VBA-Editor zu öffnen.

  2. Neues Modul erstellen: Klicke im Menü auf Einfügen und wähle Modul.

  3. Code eingeben: Füge den folgenden Code in das Modul ein:

    Sub iFen()
       Application.DisplayAlerts = False
       For i = 1 To Cells(Rows.Count, "A").End(xlUp).Row
           For j = 2 To Cells(i, Columns.Count).End(xlToLeft).Column
               If Cells(i, j) = Cells(i, j - 1) Then
                   c1 = j
                   Do While Cells(i, c1) = Cells(i, c1 - 1)
                       c1 = c1 + 1
                   Loop
                   Range(Cells(i, j), Cells(i, c1 - 1)).Merge
               End If
           Next j
           c1 = 1
       Next i
       Application.DisplayAlerts = True
    End Sub
  4. Makro ausführen: Gehe zurück zu Excel, drücke Alt + F8, wähle iFen aus der Liste und klicke auf Ausführen.

Jetzt werden die Zellen automatisch verbunden, wenn der Inhalt gleich ist.


Häufige Fehler und Lösungen

  • Fehler: Makro wird nicht ausgeführt
    Lösung: Stelle sicher, dass du die Makros in deinem Excel aktiviert hast. Gehe zu Datei > Optionen > Trust Center > Einstellungen für das Trust Center und aktiviere die Makros.

  • Fehler: Zellen werden nicht verbunden
    Lösung: Überprüfe, ob die Zellen, die du verbinden möchtest, tatsächlich den gleichen Inhalt haben. Das Makro funktioniert nur, wenn die Zellen identisch sind.


Alternative Methoden

Wenn du nicht mit VBA arbeiten möchtest, kannst du folgende Methoden in Excel verwenden:

  1. Bedingte Formatierung: Markiere Zellen mit gleichem Inhalt, indem du die bedingte Formatierung nutzt. Gehe zu Start > Bedingte Formatierung > Neue Regel.

  2. Daten konsolidieren: Verwende die Funktion Konsolidieren, um mehrere Zeilen mit gleichem Inhalt zusammenzufassen. Du findest diese Option unter Daten > Konsolidieren.


Praktische Beispiele

Nehmen wir an, du hast eine Tabelle mit den Namen der Produktionslinien in den Zellen B2 bis G2. Wenn in B2 bis G2 mehrere Tage hintereinander "Linie A" steht, wird das Makro diese Zellen verbinden und "Linie A" nur einmal anzeigen.


Tipps für Profis

  • Dynamische Zellverknüpfungen: Verwende die Funktion =VERKETTEN() oder =TEXTVERKETTEN(), um Inhalte aus benachbarten Zellen dynamisch zu verbinden, anstatt sie manuell zu verbinden.

  • Makro anpassen: Passe das obige VBA-Skript an deine spezifischen Bedürfnisse an, um es effizienter zu gestalten. Du kannst beispielsweise Bedingungen hinzufügen, um nur bestimmte Zellen zu verbinden.


FAQ: Häufige Fragen

1. Wie kann ich mehrere Zellen mit gleichem Inhalt gleichzeitig verbinden?
Du kannst das Makro verwenden, um alle Zellen in einem Bereich automatisch zu verbinden, wenn sie den gleichen Inhalt haben.

2. Funktioniert das auch in älteren Excel-Versionen?
Ja, das VBA-Skript sollte in den meisten Excel-Versionen funktionieren, die VBA unterstützen. Achte darauf, dass du die richtige Excel-Version hast, die Makros erlaubt.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige