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

vba - zellformat

vba - zellformat
Jonas
Hallo!
Habe mich erst kürzlich angefangen mit VBA auseinanderzusetzen und jetzt folgendes Problem: Es soll die ganze Zeile fomatiert werden sobald etwas in der zelle x am ende der spalte steht.
Das ist der Programmcode (ich hoffe, dass jemand damit etwas anfangen kann):

Sub Virenliste()
Dim z As Boolean
Dim i As Integer
i = 2
For i = 2 To 63
z = Cells(9, i).Value
Select Case z
Case z = True
Range("i").Rows.Font.Color = vbGreen
Case z = False
Range("i").Rows.Font.Color = vbRed
End Select
Next i
End Sub
Beim debuggen wird Laufzeitfehler "13" angezeigt (typen unverträglich). Kann man den Typ boolean in einem Case-Konstruckt verwenden?
Danke im Vorraus!
AW: vba - zellformat
25.05.2010 15:11:00
Rudi
Hallo,
versuchs mal so:
Sub Virenliste()
Dim z As Boolean
Dim i As Integer
i = 2
For i = 2 To 63
z = Cells(9, i).Value
Select Case z
Case True
Rows(i).Font.Color = vbGreen
Case False
Rows("i").Font.Color = vbRed
End Select
Next i
End Sub

Gruß
Rudi
AW: vba - zellformat
25.05.2010 15:19:58
Jonas
Hallo nochmal,
funktioniert leider auch nicht! Es wird immernoch derselbe Fehler beim debuggen angezeigt!
lG Jonas
Rows("i").Font.Color = vbRed
25.05.2010 15:21:57
robert
hi,
in rudis tipp hier die "" weg...
gruß
robert
z = Cells(9, i).Value<>"" klappt das ? oT
25.05.2010 15:23:03
Matthias
AW: vba - zellformat
25.05.2010 15:21:17
Holger
Ja also der Zellinhalt ist ja nicht als Boolean definiert.
Weißt du den Datentyp oder die values, die zu erwarten sind?
Auf was soll die Abfrage denn hinauslaufen?
Anzeige
AW: vba - zellformat -> Versuchs mal so
25.05.2010 15:25:08
Holger
Hier wird nun angefragt ob die Zelle leer ist oder nicht,
nur mal so als Beuspiel
Dim z As String
Dim i As Integer
i = 2
For i = 2 To 63
z = Cells(9, i).Value
If Z größer 0 (darf das Zeichen dafür nicht verwenden) Then
Range("i").Rows.Font.Color = vbGreen
Else
Range("i").Rows.Font.Color = vbRed
Endif
Next i

Range("i")..falsch! was soll Range(3)sein? Gruß
25.05.2010 15:31:58
robert
AW: vba - zellformat -> Versuchs mal so
25.05.2010 15:34:45
Jonas
Gleicher Fehler!
Typen unverträglich! Vermute mal, dass der Typ String("Zeichenfolge") nicht mit dem Zahlenwert 0 verglichen werden kann!
AW: vba - zellformat -> Versuchs mal so
25.05.2010 15:40:17
Holger
Stimmt, dann mach es so
If z "" blabla
AW: vba - zellformat -> Versuchs mal so
25.05.2010 15:53:13
Jonas
Klappt ganz gut bis man zum range kommt (laufzeitfehler 1004: Die methode range ist für das Objekt ' _Global' fehlgeschlagen!
Anzeige
AW: vba - zellformat -> Versuchs mal so
25.05.2010 16:06:11
Holger
Ersetz das Range durch:
Cells(i,9).Font blablabla
Wenn du mit Range arbeitest, mußt du immer in Anführungszeichen die Zelladresse angeben z.B I1 oder so.
AW: vba - zellformat
25.05.2010 15:28:44
Jonas
Der Sinn des Ganzen soll es sein die Tabelle überschaubarere zu machen! Sobald man in einem Feld das Häckchen setzt soll die ganze zeile grün werden (Sinn der Abfrage)!
Dementsprechend zu erwartender Datentyp ist string!
AW: vba - zellformat
25.05.2010 15:31:26
Holger
Dann probiere mal meinen Code, das ganze kannst du auch ohne VBA mit der bedingten Formatierung lösen wobei ich fast immer VBA vorziehe.
AW: vba - zellformat
25.05.2010 15:36:17
Rudi
Hallo,
warum nicht einfach per bedingter Formatierung?
Gruß
Rudi
Anzeige
AW: vba - zellformat
25.05.2010 15:39:22
Holger
Klar geht einfacher.
Ich nehme das persönlich oft nicht so gerne weil die vom User
verstellt werden kann oder duch Kopieren von Formaten
überschrieben werden kann. Wenn so eine Gefahr nicht besteht
und es icht abwärtskompatibel sein muss, ist die bedingte Formatierun g
klar die erste Wahl.
AW: vba - zellformat
25.05.2010 15:42:22
Jonas
Mit bedingten Formatierung, hab ich's auch versucht, wusste aber nicht wie man die ganze Zeile formatiert anstatt nur die Zellle mit dem Wert! Und mit was hätte ich die Zelle den vergleichen sollen (leere beliebige Zelle hat bei mir nicht funktioniert)!

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige