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

Verstaendnis Frage

Verstaendnis Frage
25.03.2009 21:42:29
mehmet
Hallo Forum,
folgendes Makro liegt vor:

Private Sub Markieren_VIS_0000_0300()
'0000 bis 0300 rot+fett und 0301 bis 0800 blau+fett
Sheets("WX").Select
Dim usw As Long, var, ct As Integer, start As Integer
For usw = 3 To Cells(3, 3).End(xlDown).Row
var = Split(Cells(usw, 3), " ")
start = 1
For ct = LBound(var) To UBound(var)
If IsNumeric(var(ct)) Then
If Val(var(ct)) 


Es wird also in Tabelle WX Spalte C nach folgende Strings gesucht:
Zahlenwerte 0000 bis 0300 soll die Schrift rot und fett sein.
Zahlenwerte 0301 bis 0800 soll die Schift blau und fett sein.
Die Werte koennen mehrmals in einer Zelle vorkommen.
Beispiel:
C6: FDG654 654FGH45 0200 32SDF565 DF65 0800 FG86FDG5 0100 FG5
Leider Funktioniert das Makro nicht mehr.
Vor mehreren Tagen hatte es noch geklappt!
Leider fehlt mir auch die Kommentierung, damit ich die vielen dreier und vierer zuordnen kann.
Koennte mir jemand Helfen?
Dank und Gruss
mehmet

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Verstaendnis Frage
25.03.2009 22:04:38
Daniel
Hi
das Makro funktioniert doch einwandfrei, wo ist das Problem?
das einzige was mir auffallen würde, ist die Zeile:

ElseIf Val(var(ct)) 


die eben durch das Zeichen KLEINER berwirkt, dass "0800" nicht mit formatiert wird (heißt ja "KLEINER als 800"), da gehört "0800" nicht mit dazu.
Sollte die "800" auch markiert werden, muss es so aussehen:


ElseIf Val(var(ct)) 800 Then


Gruß Daniel

AW: Verstaendnis Frage
25.03.2009 23:49:56
mehmet
Hallo Daniel,
komisch, bei mir nicht!
Anhang Testdatei.
https://www.herber.de/bbs/user/60689.xls
C6 wird formatiert, C7 nicht
Gruss
mehmet
Anzeige
AW: Verstaendnis Frage
26.03.2009 00:19:16
Daniel
Hi
das liegt daran, daß du die END(XLDOWN)-Funktion falsch einsetzt.
Ausgangspunkt für END(XLDOWN) ist die Zelle C3
da die Zeile 3 und 4 leer sind, ist Ziel für END(XLDOWN) die nächste gefüllte Zelle (Zeile 6).
es funktioniert, wenn du eine folgenden Veränderungen durchführst:
- For usw = 6 To Cells(6, 3).End(xlDown).Row
- in C3, C4, C5 einen Wert reinschreibst
- For usw = 6 To Cells(65536, 3).End(xlup).Row
Gruß, Daniel
AW: Verstaendnis Frage
26.03.2009 00:56:31
mehmet
Super, jetzt klappt es
Herzlichen Dank
Gruss
mehmet

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige