104 Aufrufe
Gefragt in Tabellenkalkulation von
Hallo,

ich habe so ähnliche VBA-Codes gefunden, jedoch nicht so wirklich das, was ich suche.
Ich habe es auch leider nicht geschafft, diese entsprechend umzuschreiben...

Ich habe in Excel in der Spalte "B" über mehrere Zeilen (Tabelle) Werte (hier eine Formel, welche Zahl und Text verbindet), welche ich bei gleichem Wert verbinden lassen möchte.
Beispiel:
B6 bis B10 haben den gleichen Wert und sollen entsprechend verbunden werden.
B12 bis B25 haben den gleichen Wert und sollen entsprechend verbunden werden.

Es müsste also ein Abgleich der Zeilen in einer Spalte gemacht werden, sodass er den Anfang und das Ende der gleichen Zeilen "findet" und die dann immer verbindet.

Ich bin leider zu doof dafür...

Vielen herzlichen Dank

4 Antworten

0 Punkte
Beantwortet von
Guten Morgen,

das wäre prinzipiell schon möglich, nur würde das verbinden deine Formeln in den Zellen zerstören, somit müsstest Du das dann auch mit VBA immer wieder "reparieren"

wenn es nicht ganz perfekt aussehen muss könnte man einiges auch schon mit bedingter Formatierung erreichen - in etwa so

1 Regel ( mit Formel)
=AUFRUNDEN(ZÄHLENWENN($B$1:$B$1000;B1)/2;0)<>ZÄHLENWENN($B$1:$B1;B1)
bei der Formatierung Schriftfarbe auf Weiß setzen (oder die hintergrundfarbe)

2 Regel (auch mit Formel)
=B1=B2  
und hier die Rahmenfarbe unten auf weiß setzen
0 Punkte
Beantwortet von beverly_ Experte (3.4k Punkte)

Hi Daniel,

Sub Verbinden()
    Dim lngZeile As Long
    Dim intAnzahl As Integer
    Application.DisplayAlerts = False
    For lngZeile = 1 To Columns(1).Find(What:="*", SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row
        intAnzahl = Application.CountIf(Columns(2), Cells(lngZeile, 2))
        If intAnzahl > 1 Then
            Range(Cells(lngZeile, 2), Cells(lngZeile + intAnzahl - 1, 2)).MergeCells = True
            lngZeile = lngZeile + intAnzahl - 1
        End If
    Next lngZeile
    Application.DisplayAlerts = True
End Sub

Bedingung ist logischerweise, dass alle zu verbindenden Zellen untereinander stehen.

Bis später, Karin

0 Punkte
Beantwortet von
Hallo Katrin,

danke für deine schnelle Antwort und Entschuldigung für meine Späte Rückmeldung.

Ich bekomme leider eine Laufzeitfehler 91 raus (Objektvariable oder With-Blockvariable nicht festgelegt).

Habe ich etwas falsch gemacht?

Danke für Eure Hilfe. :)
0 Punkte
Beantwortet von beverly_ Experte (3.4k Punkte)

Hi Daniel,

ich kenne deine Mappe nicht und kann also nur raten: ist bei dir Spalte A leer? Dann ändere

Columns(1) in Columns(2)

Bis später, Karin

...