Anzeige
Archiv - Navigation
1520to1524
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

Zelle abfragen

Zelle abfragen
08.11.2016 22:47:20
gerhard
Hallo zusammen,
Bitte um VBA Hilfe!
ich möchte die Zelle B1 nach den ersten 3 Zeichen abfragen (diese können beginnen
wie in beigefügter Testmappe z.B mit Wd1xxx oder Wd2xxx oder Wd3xxx usw.)
abhängig davon sollte dann die Zelle rot oder blau oder grün usw. gefärbt werden!
Sollte die Zelle B1 leer sein dann sollte die Zelle mit keiner Farbe gefüllt werden!
Vielen Dank für Eure Hilfe
Gruß Gerhard
https://www.herber.de/bbs/user/109291.xls

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
bedingte Formatierung willst Du nicht?
08.11.2016 22:58:27
Matthias
Hallo
Benutze doch die bedingte Formatierung:
Formel:
=LINKS(B1;3)="Wd1"
=LINKS(B1;3)="Wd2"
=LINKS(B1;3)="Wd3"
und jeweils die Farbe einstellen.
Oder muss es VBA sein?
Gruß Matthias
AW: Zelle abfragen
08.11.2016 23:13:56
AlterDresdner
Hallo Gerhard,
wenn es denn ein Makro sein soll:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim farbe
If Target.Address  "$B$1" Then Exit Sub 'nur für B1
If Not IsEmpty(Target) Then
Select Case Val(Mid(Target.Text, 3, 1))
Case 1
farbe = RGB(255, 0, 0)
Case 2
farbe = RGB(0, 0, 255)
Case 3
farbe = RGB(0, 255, 0)
Case Else
farbe = RGB(242, 242, 242) 'helles grau
End Select
Range("B1").Interior.Color = farbe
Else
Range("b1").Interior.Pattern = xlNone 'keine Füllung
'Range("b1").Interior.Color = RGB(255, 255, 255) 'alternativ: Füllung weiß
End If
End Sub

Gruß der AlteDresdner
Anzeige
AW: Zelle abfragen
09.11.2016 09:59:45
gerhard
Hallo AlteDresdner,
Vielen Dank für Deine Hilfe!
Wie müsste der Code abgeändert werden, dass auch die Combinationen z.B beginnend mit:
WD_#1xxx oder WD_#2xxx usw. funktioniert?
Gruß Gerhard
AW: Zelle abfragen
09.11.2016 18:49:39
AlterDresdner
Hallo Gerhard,
Private Sub Worksheet_Change(ByVal Target As Range)
Dim farbe, Ttext, Zahl As Byte
If Target.Address  "$B$1" Then Exit Sub 'nur für B1
If Not IsEmpty(Target) Then
Ttext = UCase(Target.Text) 'Zeichen aus B1 als Großbuchst.
If Left(Ttext, 2) = "WD" Then Zahl = Val(Mid(Ttext, 3, 1)) '3. Zeichen aus B1
If Left(Ttext, 4) = "WD_#" Then Zahl = Val(Mid(Ttext, 5, 1)) '5. Zeichen aus B1
Select Case Zahl
Case 1

der Rest danach bleibt der Gleiche.
Gruß der AlteDresdner
Anzeige
AW: Zelle abfragen
09.11.2016 21:01:48
gerhard
Vielen Dank!
funktioniert super!
Gruß Gerhard

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige