Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1580to1584
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
Inhaltsverzeichnis

Zellen gruppieren

Zellen gruppieren
27.09.2017 13:33:33
Willi
Hallo zusammen,
ich möchte eine Anwendung programmieren, durch die folgendes ausgeführt werden soll:
Durch Klicken auf einen Button sollen alle markierten Zellen (können auch einzelne, nicht zusammenhängende Zellen sein) in eine Variable gespeichert werden. Beim nächsten Klicken auf den Button soll der Bereich um die Zellen, die jetzt markiert sind, erweitert werden. Diese Zellen sind dann der Bereich, der weiteren Aktionen zugrunde liegt. Wenn dann die Variable auch noch über das Schließen hinaus gespeichert wird, so dass der Bereich beim nächsten Öffnen wieder definiert ist, wäre es perfekt! ;-)
Ich habe schon überlegt, bei jedem Klick auf den Button die aktuell markieten Zellen farblich zu füllen und dann jede Zelle mit der bestimmten Farbfüllung in eine Variable zu speichern und so den Bereich zu definieren. Das hätte aber den Nachteil, dass auch andere Zellen, die diese Farbfüllung haben zu diesem Bereich hinzugefügt werden können.
Hat jemand eine Idee, wie man das am besten machen kann? Lieber wäre mir die erste Variante. Ich wäre für jede Idee dankbar!
Gruß,
Willi

10
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Zeig das bitte anhand einer Bsp-Datei auf
27.09.2017 13:35:50
Michael
Willi,
...ich weiß nicht, was Du genau vor hast.
LG
Michael
AW: Zeig das bitte anhand einer Bsp-Datei auf
27.09.2017 13:46:02
Willi
Hallo Michael,
ich weiß nicht, wie ich eine Beispieldatei erstellen soll.
Der Anwender soll einige Zellen markieren. Durch klicken auf den Button, sollen die markierten Zellen in die Variable gespeichert werden.
Wenn irgendwann mal das ganze wiederholt wird, also der Benutzer markiert wieder einige Zellen und klickt auf den Button, sollen die jetzt markieretn Zellen zu den zuvor gespeicherten dazu gespeichert werden.
Ich hoffe das ist etwas verständlicher.
PS: Doppelter Post war nicht Absicht und ich hab noch nicht gefunden wie man den zweiten Eintrag löschen kann.
Gruß,
Willi
Anzeige
Was bedeutet "Zellen in Variable speichern"
27.09.2017 13:49:55
Michael
Willi?
DAS möchte ich von Dir wissen! Willst Du erheben, welcher Blatt-Bereich markiert/ausgewählt wurde? Oder geht es um die Zell-Werte im markierten Bereich? Sollen Berechnungen stattfinden?
Worum geht es?
LG
Michael
AW: Was bedeutet "Zellen in Variable speichern"
27.09.2017 14:04:12
Willi
Ah, das meinst du!
Es geht vorerst nicht um Zelleninhalte. Der Anwender soll dadurch festlegen um welche Zellen es geht. Später werden die Einträge, die in diesen Zellen sind, teilweise summiert und in ein anderes Tabellenblatt kopiert. Wenn zB der Anweder A1 und G4 markiert und auf den Button klickt, sollen diese Beiden Zellen summiert und das Ergebnis übertragen werden. Wenn der Anwender später das ganze nochmal mit F2 und D4 auswählt sollen diese Zellen zu den vorherigen (also A1 und G4) hinzugefügt werdn, so dass dann die Zellen A1, G4, F2 und D4 verarbeitet werden.
Gruß,
Willi
Anzeige
Wir nähern uns an...
27.09.2017 14:11:16
Michael
Willi,
... das ist ein Fortschritt. Es bleiben noch ein paar weiße Flecken:
und das Ergebnis übertragen werden
Wenn Du fertigen Code willst, wäre es spannend wie die Tabellenblätter heißen. Also jenes, von dem die markierten, "gemerkten" Zellen kommen und jenes, wohin die Summe übertragen werden soll.
sollen diese Beiden Zellen summiert und das Ergebnis übertragen werden
Wohin soll denn die Summe jeweils übertragen werden? Fortlaufend in eine Spalte? Eine Zeile? An unterschiedliche Stellen? Ab einer gewissen Zeile/Spalte?
sollen diese Zellen zu den vorherigen hinzugefügt werdn
Wie lange soll sich das fortsetzen bzw. wann soll der "Zell-Merker" zurückgesetzt werden? Soll das nur während der aktuellen Arbeit in der Mappe gespeichert werden, oder sind die Bereiche über mehrmaliges Schließen und wieder Öffnen der Mappe zu behalten?
LG
Michael
Anzeige
AW: Wir nähern uns an...
27.09.2017 14:45:02
Willi
Das Summieren und Übertragen kriege ich denk ich hin. Mein Problem ist eigentlich nur das Festlegen/Speichern des Bereiches/Zellen.
Im Idealfall sollte der Bereich auch über das Schließen hinaus gespeichert bleiben, sodass beim erneuten Öffnen, der Bereichimmer noch gespeichert ist.
Gruß,
Willi
Ok, dann...
27.09.2017 16:54:15
Michael
Willi,
...mein Vorschlag: Sammle die jeweiligen Adressen in einem Bereichs-Namen. Damit stehen die jeweiligen Zell-Adressen dauerhaft in der Mappe zur Verfügung, und Du kannst hinsichtlich Summe auch per Zellformel darauf zugreifen, oder eben per VBA.
Folgender Code erstellt einen solchen (Arbeitsmappen-weiten) Namen, sofern er noch nicht existiert, bzw. fügt diesem die Zell-Adressen des jeweils ausgewählten Bereichs hinzu, wenn er schon existiert. Du kannst im Code noch anpassen, welcher Name für diesen "ZellSammler" verwendet werden soll.
Sub a()
Const BEZ$ = "Sammler"
Dim Wb As Workbook: Set Wb = ThisWorkbook
Dim r As Range: Set r = Selection
Dim n As Name, c As Range, s$
With Wb
On Error Resume Next
Set n = .Names(BEZ)
On Error GoTo 0
If n Is Nothing Then
.Names.Add BEZ, "=" & ActiveSheet.Name & "!" & r.Address
Else:
Application.Union(Range(BEZ), r).Name = BEZ
End If
End With
Set Wb = Nothing: Set r = Nothing: Set c = Nothing: Set n = Nothing
End Sub
Summenbildung über den gesammelten Bereich dann zB auch einfach per Zellformel so
=SUMME(Sammler)
LG
Michael
Anzeige
Na, was is Willi? Wie sieht's aus? owT
28.09.2017 09:41:53
Michael
AW: Na, was is Willi? Wie sieht's aus? owT
28.09.2017 09:49:56
Willi
Hi Michael,
Das ist eine super Idee! Damit kann ich genau das machen, was ich wollte.
Vielen dank, für deine Hilfe, das hat mich enorm weiter gebracht!
Gruß,
Willi
Super, Danke für die Rückmeldung, owT
28.09.2017 09:56:21
Michael

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige