Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1396to1400
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

Zählen Zellen b. Verbunden Zellen

Zählen Zellen b. Verbunden Zellen
17.12.2014 14:54:32
Peter
Guten Tag
Ich habe in einer Tabelle die Zellen B20:D24 verbunden.
Mit dem Code
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
If Target.Count > 1 Then
MsgBox "Es können nicht gleichzeitig mehrere Zellen bearbeitet werden."
Exit Sub
End If
will ich verhindern, dass nicht gleichzeitig mehrere Zelle bearbeitet werden.
Nun ergibt jedoch Target.Count wenn B20 aktiv ist die Zahl 15 zurück.
Wie muss ich meine Bedingung "If Target.Count > 1" erweitern, damit Excel erkennt, dass die 15 Zellen alle zu einem verbundenen Zellbereich gehören und der Sub nicht verlassen wird?
Gruss, Peter

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zählen Zellen b. Verbunden Zellen
17.12.2014 15:09:34
Daniel
Hi
1. ab Excel 2007 sollte man zum Zählen von Zellen nicht .Count, sondern .CountLarge verwenden.
bei .Count verwendet Excel intern den Datentyp LONG für das Ergebnis, nur dummerweise hat das neue Excel mehr Zellen als der Typ LONG verarbeiten kann und wenn jemand mal alle Zellen auswählt oder bearbeitet (einfacher Klick auf den Schnittpunkt zwischen den Zeilen- und Spaltenköpfen) dann gibts nen Fehler.
mit .CountLarge wird ein Datentyp verwendet, der mit der Entsprechnden Anzahl umgehen kann.
(Long: -2^31 bis 2^31-1, Anzahl Zellen im neuen Excel: 2^34)
2. um auch Zellverbünde zu berücksichtigen:
If Target.CountLarge > Target(1).MergeArea.CountLarge Then
Gruß Daniel

Anzeige
AW: Zählen Zellen b. Verbunden Zellen
17.12.2014 15:12:09
yummi
Hallo Peter,
das kannst du mit Cells(Target.Row, Target.Column).MergeArea.Count abfragen
gibt dir die anzahl verbundener Zellen
Gruß
yummi

AW: Zählen Zellen b. Verbunden Zellen
17.12.2014 15:12:36
UweD
Hallo
so?
    If Target.Count > 1 Or Target.MergeCells = True Then
Gruß UweD

AW: Zählen Zellen b. Verbunden Zellen
17.12.2014 15:30:09
Peter
Hallo
Danke für alle Hinweise, insbesondere auch den zu CountLarge
Ich habe meine Bedingung nun wie folgt erweitert:
If Target.CountLarge > 1 And Target.MergeCells = False
Wenn beide Bedingungen zutreffen, habe ich eine "echte" Mehrzellen-Auswahl.
Gruss, Peter

Anzeige
AW: Zählen Zellen b. Verbunden Zellen
17.12.2014 15:47:43
Daniel
Hi
du kannst aber bei dieser Prüfung auch mehrere Zellen selektieren, ohne dass es erkannt wird!
wenn du einen Grösseren Zellbereich selektierst und einige Zellen dieses Zellbereichs miteinander verbunden sind, dann wird dies bei deiner Prüfung nicht erkannt und der Code läuft weiter wie wenn du nur eine Zelle selektiert hättest!
das Problem ist, wenn du verbundene und unverbunde Zellen gleichzeitig selektierst dann ist Target.MergeCells weder True noch False, sondern Null (also NIX) und somit hast du eine echte Mehrzellenauswahl, ohne dass die zeite Bedingung zutrifft.
Gruß Daniel

Anzeige
AW: Zählen Zellen b. Verbunden Zellen
17.12.2014 16:07:06
Peter
Hallo Daniel
Vielen Dank - komplexe Sache.
Ich hab's entsprechend angepasst.
Gruss, Peter

AW: Zählen Zellen b. Verbunden Zellen
17.12.2014 16:06:59
Rudi
Hallo,
if target.Address = Target(1).MergeArea.Address then
'mach was
end if
Gruß
Rudi

AW:Danke, owT
17.12.2014 16:27:48
Peter

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige