Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
708to712
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
708to712
708to712
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Makro: Zellen verbinden
15.12.2005 13:54:44
Kerstin
Hallo,
ich habe folgendes Problem:
bestehende Zahlen (jeweils in einer Zelle/Spalte): 5 5 5 6 6 6 6 7 7 usw.
Das Makro soll nun die Zellen verbinden, wenn die Zahlen gleich sind, d.h. das am Ende nur eine 5, eine 6, eine 7 usw. auftauchen. Es muss aber eine Überprüfung stattfinden, ob, die nächste Zahl noch gleich ist oder nicht, da nicht von jeder Zahl gleich viele Zellen vorhanden sind.
Ich hoffe, das Problem ist nicht zu kompliziert erklärt.
Habe bisher folgendes probiert:
For colIndex = 7 To 256
With Worksheets("Terminplan").Cells(4, colIndex)
If Cells(4, colIndex).Value = Cells(4, colIndex + 1).Value Then
Worksheets("Terminplan").Activate
Range(Cells(4, colIndex), Cells(4, colIndex + 1)).Select
Selection.Merge
End If
End With
Next colIndex
Klappt so aber noch nicht. Kann mir jemand helfen? Danke.
Gruß, Kerstin.

21
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Makro: Zellen verbinden
15.12.2005 14:04:39
Klaus-Dieter
Hallo Kerstin,
Zellen verbinden ist eine üble Sache. Sollte man möglichst vermeiden. Was ist denn dein Ziel? Eventuell gibt es bessere Lösungsansätze.
Viele Grüße Klaus-Dieter

Online-Excel
AW: Makro: Zellen verbinden
15.12.2005 14:19:46
Kerstin
Hallo,
das ganze bezieht sich auf Spalten in einem Terminplan. Für jeden Tag ist eine Spalte eingerichtet (Breite 1), oben sollen jeweils die Kalenderwoche und der Monat angegeben werden. Diese Angaben stehen jetzt in jeder Zelle, aber die Kalenderwoche 5 muss natürlich nur einmal genannt werden, d.h. die Zellen sollen zusammengefasst werden, damit man auch überhaupt einen Eintrag in der Zelle erkennt (bei Spaltenbreite 1 ist das sonst nicht möglich).
Das Makro verbindet auch die Zellen, allerdings immer nur 2 Zellen. Es fehlt die Bedingung, dass er solange kontrolliert, bis die Bedingung "=" nicht mehr erfüllt ist und erst dann die Zellen markiert und verbindet. Wahrscheinlich irgendeine Verschachtelung.
Gruß, Kerstin.
Anzeige
AW: Makro: Zellen verbinden
15.12.2005 14:18:24
Matthias
Hallo Kerstin,
Klaus-Dieter hat zwar recht, aber wenn damit nicht weiter in VBA gerechnet werden soll:

Sub Zusammenfassen()
Dim sp As Integer, sp0 As Integer, ls As Integer
Dim wert
sp = 7
sp0 = sp
Application.DisplayAlerts = False
With Worksheets("Terminplan")
ls = .Cells(4, .Columns.Count).End(xlToLeft).Column
Do
wert = .Cells(4, sp)
Do
sp0 = sp0 + 1
Loop Until .Cells(4, sp0) <> wert
With Range(.Cells(4, sp), .Cells(4, sp0 - 1))
.Merge
.HorizontalAlignment = xlCenter
End With
sp = sp0
Loop Until sp > ls
End With
Application.DisplayAlerts = True
End Sub

Gruß Matthias
Anzeige
AW: Makro: Zellen verbinden
15.12.2005 15:05:27
Kerstin
Hallo Matthias,
klappt schon ganz gut mit deinem Vorschlag, allerdings fehlt irgendwie noch eine Schleife, dass wirklich die ganzen Spalten beim ersten Mal durchlaufen werden. Im Moment fasst er alle "5" zusammen, dann ist Schluss. Beim nächsten Versuch, die "6" usw.
Da ich in VBA noch nicht ganz so fit bin, verstehe ich leider nicht genau jeden Schritt, so dass ich da nicht ganz weiterkomme. Bin mir nicht sicher, wo ich etwas einfügen müsste. Kannst du dieses Problem vielleicht auch lösen? Wäre super. Vielen Dank schon mal.
Kerstin.
AW: Makro: Zellen verbinden
15.12.2005 15:11:37
Matthias
Hallo Kerstin,
hmmm...
also bei mir klappt's:
https://www.herber.de/bbs/user/29329.xls
Gruß Matthias
Anzeige
AW: Makro: Zellen verbinden
15.12.2005 15:26:07
Kerstin
Hallo,
sorry, habe meine erste Nachricht plötzlich nicht mehr gesehen, deshalb die zweite ...
Funktioniert aber leider wirklich nicht. Habe vor das Makro noch
Worksheets("Terminplan").Activate
geschrieben, da der Makro-Button auf einem anderen Blatt ist. Muss ich das vielleicht noch öfter einfügen?
Das Makro ist in ein größeres Makro/Modul eingebettet. Aber auch alleine ändert sich nichts.
Hast Du noch eine Idee?
Gruß, Kerstin.
AW: Makro: Zellen verbinden
15.12.2005 15:41:25
Matthias
Haallo Kerstin,
klappt denn meine Beispieldatei auf deinem Rechner?
Lade doch mal eine Mustermappe hoch.
Gruß Matthias
Anzeige
AW: Makro: Zellen verbinden
15.12.2005 15:44:50
Kerstin
Hallo Matthias,
die Beispieldatei läuft. Genau so soll es funktionieren.
Gruß Kerstin.
AW: Makro: Zellen verbinden
15.12.2005 15:49:09
Matthias
Hallo Kerstin,
und in deiner Mappe sind nicht vielleicht leere Zellen dazwischen (Stichwort File-Upload!)?
Gruß Matthias
AW: Makro: Zellen verbinden
15.12.2005 16:06:14
Kerstin
Hallo,
dazwischen nicht, aber am Ende kommen leere Zellen (mit Formel, ohne Inhalt). Aber würde er dann nicht einfach alle leeren Zellen verbinden? Oder kann man ihm sagen nur bis zur letzten "gefüllten" Zelle? Position dieser Zelle variiert aber.
Stichwort File-Upload sagt mir nichts, wie gesagt, Excel-Kenntnisse gut-sehr gut, VBA noch nicht viel.
Kerstin.
Anzeige
AW: Makro: Zellen verbinden
15.12.2005 16:10:09
Matthias
Hallo Kerstin,
baue eine Mustermappe mit den wichtigsten Inhalten nach, speichere sie z.B. auf D:\text.xls auf klicke hier unten auf der Seite auf Hier geht es zum File-Upload.
Folge den Anweisungen, bis du den Link auf die Datei in einem Textfeld siehst. Kopiere den Link, klicke im Browser 2x auf Zurück, bis dein Beitragsentwurf wieder sichtbar ist und kopiere den Link in deine Antwort.
Gruß Matthias
AW: Makro: Zellen verbinden
15.12.2005 16:45:24
Matthias
Hallo Kerstin,
äh... hilf mir mal, wo muss ich was eintragen, damit in Zeile 4 auf Werte stehen?
Gruß Matthias
Anzeige
AW: Makro: Zellen verbinden
15.12.2005 16:55:50
Kerstin
Hallo,
da müssten eigentlich Werte drinstehen, aber erst wirklich sichtbar, wenn die Spaltenbreite z.B. auf 10 steht. Genauso Zeile 3. Die Formeln dafür stehen auch in Spalte F, können von da auch die Zeile runter kopiert werden. Wird sonst in meinem Makro auch anfangs neu gesetzt, um Urzustand herzustellen bei neuer Terminplanerstellung.
Kerstin
AW: Makro: Zellen verbinden
15.12.2005 17:02:45
Matthias
Hallo Katrin,
der Fehler lag hier:
ls = .Cells(4, .Columns.Count).End(xlToLeft).Column
ls wird hier zu niedrig, wg. der Formeln in den Zellen.

Sub Zusammenfassen()
Dim sp As Integer, sp0 As Integer, ls As Integer
Dim wert
sp = 7
sp0 = sp
Application.DisplayAlerts = False
With Worksheets("Terminplan")
ls = 256 'bis zum Schluss
Do
wert = .Cells(4, sp)
Do
sp0 = sp0 + 1
Loop Until .Cells(4, sp0) <> wert
With Range(.Cells(4, sp), .Cells(4, sp0 - 1))
.Merge
.HorizontalAlignment = xlCenter
End With
sp = sp0
Loop Until sp < ls
End With
Application.DisplayAlerts = True
End Sub

Gruß Matthias
Anzeige
AW: Makro: Zellen verbinden
15.12.2005 17:39:33
Kerstin
Hallo,
in der Musterdatei funktioniert es, in der Originaldatei noch nicht. Ich suche den Fehler noch ...
Trotzdem schon mal danke.
Kerstin.
AW: Makro: Zellen verbinden
16.12.2005 08:23:07
Kerstin
Guten Morgen Matthias,
irgendwie funktioniert es immer noch nicht und ich finde leider den Fehler nicht. Inzwischen funktioniert auch das Muster nicht mehr.
Könnte ich dir vielleicht die Originaldatei per email schicken das du da einen Blick drauf werfen könntest? Wäre super. Wie lautet deine mail-Adresse?
Kerstin.
AW: Makro: Zellen verbinden
16.12.2005 13:51:38
Matthias
Hallo Kerstin,
das Datei wird durch "zippen" deutlich kleiner, dann kannst du sie auch hier hochladen.
Gruß Matthias
Anzeige
AW: Makro: Zellen verbinden
16.12.2005 14:02:26
Kerstin
Hallo,
auch die gezippte Datei ist zu groß (382 KB), Upload funktioniert nicht. Ich würde ungern etwas rauslöschen, da ich bestimmt das Glück habe, genau die entscheidenen Passagen zu löschen. Wäre dumm.
Kerstin.
AW: Makro: Zellen verbinden
16.12.2005 14:31:03
Matthias
Hallo Kerstin,
matthias.goessner[at]gmx.de
Gruß Matthias
AW: Makro: Zellen verbinden
15.12.2005 15:17:15
Kerstin
Hallo Matthias,
dein Vorschlag klappt schon sehr gut. Allerdings fehlt irgendwie noch eine Schleife, um alle Zellen gleich beim ersten Durchlauf zu überprüfen und ggf. zusammen zu fassen. Im Moment werden nur die "5" zusammengefasst, erst beim nächsten Versuch die "6" usw.
Hast Du noch eine Idee, wie man nur einen Durchlauf benötigt? Meine VBA-Kenntnisse reichen da leider nicht ganz aus.
Wäre super. Vielen Dank schon mal.
Gruß, Kerstin.
Anzeige

276 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige