Discussion:
Verbundene Zellen löschen
(zu alt für eine Antwort)
Dani Frei
2006-05-23 20:33:20 UTC
Permalink
Hallo NG

Ich habe da eine kleine Frage. Wie kann ich eine verbundene Zelle löschen?
Das löschen einer "normalen" Zelle klappt ja mit "Cells(45,
1).ClearContents" ohne Probleme. Doch wenn ich diesen Code auf eine
verbunden Zelle anwende dann kommt der Laufzeitfehler 1004 "Kann Teile einer
verbundenen Zelle nicht ändern"
Wie müsste der Code denn für eine solche Zelle aussehen?

Danke für eure Hilfe und
--
Liebe Grüsse aus der Schweiz

Daniel



P.S. *** wer Schreibfehler findet darf sie gerne Behalten :-) ***
Claus Busch
2006-05-23 20:53:09 UTC
Permalink
Hallo Dani,
Post by Dani Frei
Ich habe da eine kleine Frage. Wie kann ich eine verbundene Zelle löschen?
Das löschen einer "normalen" Zelle klappt ja mit "Cells(45,
1).ClearContents" ohne Probleme. Doch wenn ich diesen Code auf eine
verbunden Zelle anwende dann kommt der Laufzeitfehler 1004 "Kann Teile einer
verbundenen Zelle nicht ändern"
Wie müsste der Code denn für eine solche Zelle aussehen?
wenn z.B. B2 und B3 verbunden sind, funktioniert
Range("B2:B3").ClearContents
--
Mit freundlichen Grüssen
Claus Busch

Win XP Prof SP2; Office 2000 SP3
claus_busch(at)t-online.de
Melanie Breden
2006-05-23 20:57:59 UTC
Permalink
Hallo Dani,
Post by Dani Frei
Ich habe da eine kleine Frage. Wie kann ich eine verbundene Zelle löschen?
Das löschen einer "normalen" Zelle klappt ja mit "Cells(45,
1).ClearContents" ohne Probleme. Doch wenn ich diesen Code auf eine
verbunden Zelle anwende dann kommt der Laufzeitfehler 1004 "Kann Teile einer
verbundenen Zelle nicht ändern"
Wie müsste der Code denn für eine solche Zelle aussehen?
daran sieht man mal wieder wie schwer es ist in einer Tabelle mit
verbundenen Zellen zu arbeiten :-(

Du kannst den zusammengeführten Bereich mit der
MergeArea-Eigenschaft ermitteln:

Cells(45, 1).MergeArea.ClearContents


Mit freundlichen Grüssen
Melanie Breden
--
- Microsoft MVP für Excel -
Microsoft Excel - Die ExpertenTipps http://tinyurl.com/cmned
Das Excel-VBA Codebook http://excel.codebooks.de
Excel-Auftragsprogrammierung
Robert Jakob
2006-05-23 20:54:06 UTC
Permalink
Post by Dani Frei
Hallo NG
Ich habe da eine kleine Frage. Wie kann ich eine verbundene Zelle löschen?
Das löschen einer "normalen" Zelle klappt ja mit "Cells(45,
1).ClearContents" ohne Probleme. Doch wenn ich diesen Code auf eine
verbunden Zelle anwende dann kommt der Laufzeitfehler 1004 "Kann Teile einer
verbundenen Zelle nicht ändern"
Wie müsste der Code denn für eine solche Zelle aussehen?
Danke für eure Hilfe und
Hallo Dani,

versuche es mal so :

Range("A45:B45").UnMerge

MfG
Robert
Dani Frei
2006-05-23 21:06:58 UTC
Permalink
Hallo an alle Helfer
Post by Dani Frei
Ich habe da eine kleine Frage. Wie kann ich eine verbundene Zelle löschen?
Das löschen einer "normalen" Zelle klappt ja mit "Cells(45,
1).ClearContents" ohne Probleme. Doch wenn ich diesen Code auf eine
verbunden Zelle anwende dann kommt der Laufzeitfehler 1004 "Kann Teile
einer verbundenen Zelle nicht ändern"
Wie müsste der Code denn für eine solche Zelle aussehen?
Super! Danke für eure Hilfe.

@ Melanie: Ja so ist es :-) aber ab und zu sieht halt eine Tabelle mit
verbundenen Zellen einfach besser aus ;-)


Gruss an alle

DAni
Claus Busch
2006-05-23 21:14:37 UTC
Permalink
Hallo Dani,
Post by Dani Frei
Post by Dani Frei
Ich habe da eine kleine Frage. Wie kann ich eine verbundene Zelle löschen?
Das löschen einer "normalen" Zelle klappt ja mit "Cells(45,
1).ClearContents" ohne Probleme. Doch wenn ich diesen Code auf eine
verbunden Zelle anwende dann kommt der Laufzeitfehler 1004 "Kann Teile
einer verbundenen Zelle nicht ändern"
Wie müsste der Code denn für eine solche Zelle aussehen?
Super! Danke für eure Hilfe.
@ Melanie: Ja so ist es :-) aber ab und zu sieht halt eine Tabelle mit
verbundenen Zellen einfach besser aus ;-)
vom optischen her, muss ich dir da Recht geben. Allerdings kannst du das
auch ohne verbundene Zellen erhalten, wenn du den Bereich markierst als
wenn du die Zellen verbinden möchtest, stattdessen dann aber auf "Format =>
Zellen => Ausrichtung" gehst und dort "Über Auswahl zentrieren" aktivierst.
--
Mit freundlichen Grüssen
Claus Busch

Win XP Prof SP2; Office 2000 SP3
claus_busch(at)t-online.de
Dani Frei
2006-05-23 21:21:43 UTC
Permalink
Hallo Klaus
Post by Claus Busch
vom optischen her, muss ich dir da Recht geben. Allerdings kannst du das
auch ohne verbundene Zellen erhalten, wenn du den Bereich markierst als
wenn du die Zellen verbinden möchtest, stattdessen dann aber auf "Format =>
Zellen => Ausrichtung" gehst und dort "Über Auswahl zentrieren" aktivierst.
funzt das auch wenn ich aus einem anderen sheet per vba einen wert in die
auswahl schreibe??

Gruss Dani
Robert Jakob
2006-05-23 21:52:30 UTC
Permalink
Post by Dani Frei
Hallo Klaus
Post by Claus Busch
vom optischen her, muss ich dir da Recht geben. Allerdings kannst du das
auch ohne verbundene Zellen erhalten, wenn du den Bereich markierst als
wenn du die Zellen verbinden möchtest, stattdessen dann aber auf "Format =>
Zellen => Ausrichtung" gehst und dort "Über Auswahl zentrieren" aktivierst.
funzt das auch wenn ich aus einem anderen sheet per vba einen wert in die
auswahl schreibe??
Gruss Dani
Hallo Dani,

per VBA kannst Du alles machen, da kannst Du ja auch gleich das
Format mitschicken.

MfG
Robert
Claus Busch
2006-05-23 21:53:44 UTC
Permalink
Hallo Dani,
Post by Dani Frei
Post by Claus Busch
vom optischen her, muss ich dir da Recht geben. Allerdings kannst du das
auch ohne verbundene Zellen erhalten, wenn du den Bereich markierst als
wenn du die Zellen verbinden möchtest, stattdessen dann aber auf "Format =>
Zellen => Ausrichtung" gehst und dort "Über Auswahl zentrieren" aktivierst.
funzt das auch wenn ich aus einem anderen sheet per vba einen wert in die
auswahl schreibe??
wenn schon eimal etwas in dieser Auswahl drin war und nur überschrieben
wird, funktioniert es. Der Inhalt ist optisch über die Auswahl zentriert,
aber gespeichert ist er in der ersten Zelle der Auswahl. Wenn du durch
Löschen diese Zentrierung aufhebst, dann müsstest du sie wieder neu
einrichten, aber auch das geht über VBA.
Hier ein Beispiel, in dem der Inhalt der Zelle A1 in Tabellenblatt2 nach
Tabellenblatt1 B1 kopiert wird und über B1:F1 zentriert wird:

Worksheets(2).Range("A1").Copy _
Destination:=Worksheets(1).Range("B1")
Worksheets(1).Range("B1:F1").Select
With Selection
.HorizontalAlignment = xlCenterAcrossSelection
.MergeCells = False
End With
--
Mit freundlichen Grüssen
Claus Busch

Win XP Prof SP2; Office 2000 SP3
claus_busch(at)t-online.de
Lesen Sie weiter auf narkive:
Loading...