Live-Forum - Die aktuellen Beiträge
Datum
Titel
16.10.2025 17:40:39
16.10.2025 17:25:38
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Nur erste Zelle, die Formel hat markieren

Forumthread: Nur erste Zelle, die Formel hat markieren

Nur erste Zelle, die Formel hat markieren
06.09.2024 14:48:06
Dieter(Drummer)
Guten Tag an alle ...

Wie muss der Code lauten, damit nur die erste gefundene Zelle, die eine Formel enthält, markiert wird?

Mit diesem Code werden alle Zellen, die eine Formel haben, markiert:
Sub FormelZelle_markieren()

Selection.SpecialCells(xlCellTypeFormulas, 23).Select
End Sub


Mit der Bitte um Hilfe,

grüßt, Dieter(Drummer)
Anzeige

11
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Nur erste Zelle, die Formel hat markieren
06.09.2024 14:51:23
onur
Wie definierst du "die erste" ???
Bei einem Bereich mit 5x10 Zellen: Von links nach rechts oder von oben nach unten oder von links nach rechts und dann von oben nach unten oder .... ?
AW: Nur erste Zelle, die Formel hat markieren
06.09.2024 15:03:00
Dieter(Drummer)
Danke Onur für Rückmeldung.

Stelle mir vor, dass z.B. von A1 bis gesamtes belegtes Tabellenblatt gesucht wird.
Hoffe meine Erklärung ist ausreichend.

Gruß,
Dieter(Drummer)
Anzeige
AW: Nur erste Zelle, die Formel hat markieren
06.09.2024 15:07:00
Onur
Dann wäre bei
Selection.SpecialCells(xlCellTypeFormulas, 23).Cells(1).Select

wenn ZZ1 und ebenso A2 eine Formel enthalten , ZZ1 die "ERSTE".
AW: Nur erste Zelle, die Formel hat markieren
06.09.2024 15:09:59
Dieter(Drummer)
Danke Onur,

auch dein Code ist perfekt.

Gruß,
Dieter(Drummer)
AW: Nur erste Zelle, die Formel hat markieren
06.09.2024 14:59:29
Yal
Hallo Dieter,

versuche mit
Sub FormelZelle_markieren()

Selection.SpecialCells(xlCellTypeFormulas, 23).Cells(1).Select
End Sub


Eine "Cells"-Auflistung ist nicht nur in Zeilen/Spalten indexierbar, sondern in Reihenfolge. So ist Cells(3) in einer Bereich 2z * 5s die 3te Zelle, also erste Zelle der zweiten Zeile.

.Cells(.Cells.Count) ist dann die letzte (in Kombi mit With). Darauf kann man .Cells(.Cells.Count).Row oder .Cells(.Cells.Count).Column haben.

VG
Yal
Anzeige
AW: Nur erste Zelle, die Formel hat markieren
06.09.2024 15:17:39
daniel
Hi Yal
das mit dem .Cells(3) ist aber mit Vorsicht zu genießen.
das funktioniert nur, solange der referenzierte Zellbereich ein Lückenloser Block ist.
besteht der Zellbereich, auf den man das anwendet aus mehreren Zellebreichen, die nicht Lückenlos zusammenhängen, dann arbeitet dieser Index nur auf Basis des ersten Blocks und die Restlichen Blöcke werden ignoriert. Und du bekommst auch keine Meldung, wenn du einen Block verlässt.

Beispiel fürs Direktfenster
?Range("A1:B2,C3:D4,E5:F6")(5).address
ergibt A3 und nicht C3, obwohl A3 gar nicht zum Bereich gehört.

also wie gesagt, sobald der Zellbereich Lücken haben kann (in VBA fach-Sprech: aus mehreren Areas bestehen kann), ist nur der Index (1) zuverlässig.
alle anderen können falsche Ergebnisse liefern.

Gruß Daniel
Anzeige
AW: Nur erste Zelle, die Formel hat markieren
06.09.2024 15:37:56
Dieter(Drummer)
Danke Daniel,

für deine Erläuterungen, mit denen ich mal einiges ausprobieren werde.

Gruß,
Dieter(Drummer)
AW: Nur erste Zelle, die Formel hat markieren
06.09.2024 16:18:34
Yal
Ja, wichtige Klarstellung. So weit hatte ich nicht vorausgeschaut.

Ich benutze diese Kurzform oft in Zusammenhang mit EntireRow oder EntireColumn, also immer eine zusammenhängende Bereich.

Ein Beispiel:
Sub Relative_Adressierung()

Dim Z As Range
For Each Z In Range("G5:G60")
Z.EntireRow.Cells(3) = ... 'die dritte Zelle in einer Zeile ist in Spalte C, egal ob Z in G, H, X, ....
Next
End Sub


VG
Yal
Anzeige
AW: Nur erste Zelle, die Formel hat markieren
07.09.2024 09:07:27
Dieter(Drummer)
Danke Yal,

auch eine interessante Variante, die ich auch mal verwenden kann.

Gruß,
Dieter(Drummer)
AW: Nur erste Zelle, die Formel hat markieren
06.09.2024 15:01:17
daniel
Hi
die erste Zelle kannst du immer mit Selection.SpecialCells(xlCellTypeFormulas, 23)(1).Select auswählen, also durch anhängen des Index (1)

aber Achtung, das funktioniert so nur mit der ersten Zelle. auf die zweite, dritte, vierte Zelle des Bereichs solltest du so nicht mehr zugreifen, das kann schief gehen.

Gruß Daniel
Anzeige
AW: Danke Yal und Daniel ....
06.09.2024 15:07:46
Dieter(Drummer)
... beide Code funktionieren wie gewünscht perfekt.

Gruß,
Dieter(Drummer)
;

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige