Clever-Excel-Forum

Normale Version: Excel-VBA - Zellen verbinden wenn...
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Seiten: 1 2
Hallo,

ich bastel gerade an einem Excel-Formular mit VBA. Ich weiß, dass man auf Select verzichten soll, aber ich bin nicht so fit mit VBA.

Es ist so, dass ich 7 verbundene Zellbereiche habe, nennen wir sie C1 bis C7.
In einem Makro sollen die Zellen jeweils wieder getrennt und danach wieder entsprechend verbunden werden.

Ich habe folgende 2 Makros:

Code:
Public Sub CellNotEmpty()
   Dim msg As String
   msg = MsgBox("Zelle ist nicht leer!" & vbCrLf & "Fortfahren und aktuellen Eintrag überschreiben?", vbYesNo, "")
   If msg = vbYes Then
   Selection.ClearContents
   With Selection
   .MergeCells = False
   End With
   'wenn erste Zelle aktiv, sollen Zellen wieder verbunden werden!!!
Else
   Exit Sub
   End If
End Sub

Public Sub ClearCells()
   Dim msg As String
   msg = MsgBox("Soll das Merkmal gelöscht werden?", vbYesNo, "")
   If msg = vbYes Then
   Selection.ClearContents
   With Selection
   .MergeCells = False
   End With
   'wenn erste Zelle aktiv, sollen Zellen wieder verbunden werden!!!
   End If
End Sub
 
Wie gesagt, aufgrund von Unwissen arbeite ich mit Selection, selektiert ist eines von den oben genannten Zellverbunden.
Nachdem nun die Zellen getrennt und die Inhalte gelöscht wurden, soll nun genau dort wieder verbunden werden, wo die Selektion ist. Wäre sicher kein Problem.
Möchte aber nicht für jeden Verbund ein eigenes Makro erstellen und sichergehen. dass auch wirklich genau die definierten Zellen in dem Bereich verbunden werden, der auch wirklich aktiv ist (C1 oder C2, etc...).

Kann da jemand helfen?
Hallöchen,

lasse Dir Deinen Ablauf mal durch den Kopf gehen:
- Makro Starten
- Sicherheitsfrage
- löschen
- verbundenen Zellen auflösen
- Verbund wiederherstellen

Zum einen passt die Reihenfolge nicht zur Beschreibung, wo Du ja erst den Verbund auflösen willst und dann die Inhalte löschen, zum anderen brauchst Du den Verbund dazu nicht aufzuheben.
Hi,

unabhängig von Tipps zu deinem Makro: lass dir den (guten) Rat geben und verzichte auf verbundene Zellen. Diese bereiten mehr Probleme als dass sie nützlich sind. Lies dir dazu mal diesen Beitrag https://www.clever-excel-forum.de/Thread...oder-Segen durch.
Hi,

danke für die Antworten. Das Layout, welches ich aufgebaut habe, ist ohne verbundene Zellen nicht schön hinzubekommen, denke ich.
Löschen und neu verbinden hat auch den Hintergrund, dass der Zellverbund auch inhaltlich noch eine weitere Variante erhalten wird. Dann wird der Zellverbund geteilt in insgesamt drei Verbünde.
Ich möchte sicherstellen, dass auch in diesem Fall ein Löschen aller Inhalte möglich ist.

Gerne nehme ich auch andere Ideen auf, ich bastel ja nur Schritt für Schritt zusammen und bin mir sehr sicher, dass es viel besser gehen würde, wenn ich das Wissen dazu hätte. Smile
Moin!
Zeige mal die Datei!
Was ich so "zwischen den Zeilen" lese, sollte man eher mittels Vorlagendatei (.xltx oder .xltm) lösen.

Gruß Ralf
Moin,

Zitat:ich bastel ja nur Schritt für Schritt zusammen und bin mir sehr sicher, dass es viel besser gehen würde, wenn ich das Wissen dazu hätte.

das entsprechende Wissen sich anzueignen ist lediglich eine Sache des Wollens. Wink

Ich kenne deine Datei nicht; deine Bemerkung, dass ein "schönes Layout" ohne verbundene Zellen nicht hinzubekommen ist, lässt aber auf einen suboptimalen Aufbau schließen. Du solltest deine Datei als Liste, in der du deine Daten plan eingibst, aufbauen, dann kannst du sie auch ordentlich auswerten; die Auswertung, mit der in der Regel nicht weitergearbeitet wird, ist dann für allerlei Zierde und Verschönerung offen. Hierzu noch etwas Lesestoff: https://www.online-excel.de/excel/singsel.php?f=52
Moin Günter!

Aus der Threaderöffnung:
Zitat:ich bastel gerade an einem Excel-Formular mit VBA.

Da interessieren verbundene Zellen eher weniger, die lassen sich problemlos ansprechen!
Ich bin ja eher dankbar, dass hier kein Userform vergewaltigt wird.
(siehe auch den aktuellen Endlos-Thread in diesem Forum)

Ein gespannt auf die Datei wartender
Ralf
Ok, Leute.

Anbei das nicht fertige Dokument. Das ist Gefrickel und ich habe das alles zusammengesucht. Ich möchte zunächst, dass es funktioniert. Dann kann ich noch immer optimieren. So mein Gedanke. Ich kann mich wohl gut reindenken. Bitte wegen dem Dokument nicht lachen, ich mache das nicht beruflich, sondern bin einfach ein Freak, der einfach etwas realisieren möchte.

PS: Tatsächlich sind es Userformen, die hier verwendet werden und vielleicht sogar vergewaltigt, denn ich weiß nicht, was damit gemeint ist Smile.
Du hast vergessen, Attachment hinzufügen anzuklicken.
In einem Userform gibt es keine verbundenen Zellen.
Hm, hatte ich doch...

aber ich versuche es nochmal. Nein, ich verwende eine Userform (lese aber gerade, dass es vielleicht auch einfacher geht), die hat selbst natürlich keine verbundenen Zellen.

Edit: Ahja, der Button zum Einfügen ist mir untergegangen, sorry.
Seiten: 1 2