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

Bedingte Foramtierung

Bedingte Foramtierung
30.04.2018 15:14:25
Peter
Hallo zusammen
Problemstellung:
In Spalte C stehen Werte (ohne Leerzellen), wenn in dieser Spalte ein Wert das 1. Mal vorkommt, soll die Gitternetzlinie oberhalb dieser Zeile von Spalte A:O, ab der 5. Zeile bis Ende des Datenbereicht (Usedrange gemäss Spalte C) geschrieben werden.
Wie müsste der Code aussehen?
Vielen Dank und viele Grüsse,
Peter

12
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: ... Formel: =ZÄHLENWENN(C$1:C1;C1)=1 owT
30.04.2018 15:25:13
...
Gruß Werner
.. , - ...
geht nicht richtig, VBA Lösung?
30.04.2018 15:59:01
Peter
Hallo Werner
Danke für Deine Antwort, jedoch funktioniert es nicht richtig.
Ich habe mit dieser Formal eine Bedingte Formatierung erstellt, jedoch werden die Gitternetzlinien nicht richtig gezeichnet.
Wäre es möglich eine VBA Lösung zu haben, könnte man damit auch eine etwas dickere Linie zeichnen?
Danke
Viele Grüsse,
Peter
Viele Grüsse,
Peter
AW: die notwendige Anpassung ist doch möglich ...
30.04.2018 16:11:30
...
Hallo Peter,
... aber meinst Du eine Gitternetzlinie oder eine Zellrahmenlinie?
Für letzteres angepasst (ohne VBA) mit bedingter Formatierung für Zellgeltungsbereich (="wird angewendet auf") A5:O## folgende Formel: =ZÄHLENWENN($C$5:$C5;$C5)=1 und Zuordnung Rahmenlinie oben.
Das kannst Du analog in VBA übernehmen.
Gruß Werner
.. , - ...
Anzeige
AW: die notwendige Anpassung ist doch möglich ...
01.05.2018 09:31:17
Peter
Hallo Werner
Zellrahmenlinie ist schon richtig, alles klar und danke Dir!
Gruss,
Peter
AW: bitte, gerne owT
01.05.2018 13:24:55
...
Gruß Werner
.. , - ...
AW: geht nicht richtig, VBA Lösung?
30.04.2018 16:14:37
Daniel
HI
da du die Spalten A:O so formatieren willst, müsste die Formel so lauten, doch mit $-Zeichen vor dem Spaltenbezug (damit auch immer die Spalte C verwendet wird.
=ZählenWenn($C$1:$C1;C1)=1
per Makro gehts natürlich auch, dann kannst du auch dickere Rahmenlinien verwenden.
Das Makro müsste jedoch immer ausgeführt werden, wenn sich was ändert.
dim Zelle as Range
For each Zelle in Range(Cells(5, 3), cells(5, 3).End(xldown))
if Zelle.Value  Zelle.Offset(-1, 0).Value Then
Zelle.Offset(0, -2).Resize(1, 15).Borders(xlEdgeTop).Weight = xlMedium
end if
Next
Gruß Daniel
Anzeige
Bekomme eine Fehlermeldung
30.04.2018 17:13:10
Peter
Hallo Daniel
1. Danke für deine Antwort, jedoch bekomme ich die Fehlermeldung, dass die Variable "Zelle" nicht definiert ist.
2. Gerne möchte ich die den Code mit einem Button auslösen, würde das gehen, wie müsste ich den Code anpassen, kannst Du mir da noch helfen?
Danke
Viele Grüsse,
Peter
Peter
AW: Bekomme eine Fehlermeldung
30.04.2018 17:52:29
Hajo_Zi
Hallo Peter,
Dim Zelle as Range

Beiträge von Werner, Luc, robert, J.O.Maximo und folgende lese ich nicht.
AW: Bekomme eine Fehlermeldung
01.05.2018 09:24:46
Peter
Hallo Hajo
Super, alles klar, merci.
Gruss,
Peter
Danke für Rückmeldung oT
01.05.2018 09:26:54
Hajo_Zi
AW: Bekomme eine Fehlermeldung
30.04.2018 17:58:42
Daniel
Hi
du du ein Makro einem Button zuweist, kannst du hier nachlesen:
http://www.online-excel.de/excel/singsel_vba.php?f=132
dass man verwendete Variablen deklarieren muss, sollte eigentlich bekannt sein:
Dim Zelle as Range
muss an den Anfang deines Codes
Gruß Daniel
Anzeige
AW: geht nicht richtig, VBA Lösung?
30.04.2018 16:14:38
Daniel
HI
da du die Spalten A:O so formatieren willst, müsste die Formel so lauten, doch mit $-Zeichen vor dem Spaltenbezug (damit auch immer die Spalte C verwendet wird.
=ZählenWenn($C$1:$C1;C1)=1
per Makro gehts natürlich auch, dann kannst du auch dickere Rahmenlinien verwenden.
Das Makro müsste jedoch immer ausgeführt werden, wenn sich was ändert.
dim Zelle as Range
For each Zelle in Range(Cells(5, 3), cells(5, 3).End(xldown))
if Zelle.Value  Zelle.Offset(-1, 0).Value Then
Zelle.Offset(0, -2).Resize(1, 15).Borders(xlEdgeTop).Weight = xlMedium
end if
Next
Gruß Daniel
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige