Anzeige
Archiv - Navigation
1292to1296
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

Case mit Wert aus Zelle

Case mit Wert aus Zelle
09.01.2013 15:32:35
Burghard
Hallo,
ich habe ein Makro, dass so nicht funktioniert. Ich möchte, dass "Case" aus der Zelle "F2" einen Wert nimmt. Wo und wie muss das Makro geändert werden?
Private Sub Worksheet_Activate()
Dim Zelle As Range
Wert = Range("F2")
For Each Zelle In Range("A2:A43")
With Zelle
Select Case .Value
Case Wert
.Interior.ColorIndex = 35
Zelle.Offset(0, 2).Interior.ColorIndex = 35
'Case Else
'  .Interior.ColorIndex = xlNone
End Select
End With
Next
Range("F3").Select
End Sub
Hilfe wäre nett.
Grüße
Burghard

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Case mit Wert aus Zelle
09.01.2013 15:35:28
Hajo_Zi
Hallo Burghard,
Case Range("F2")

Wert ist bereits Range("F2") ..... owT.
09.01.2013 15:55:03
Klaus
.

AW: Wert ist bereits Range("F2") ..... owT.
09.01.2013 15:57:24
Hajo_Zi
ich habe mich an die Aufgabe gehalten und da Stand er möchte bei Case F2 haben.
Gruß Hajo

AW: Case mit Wert aus Zelle
09.01.2013 15:36:52
Klaus
Hi Burghard,
das Makro läuft und funkioniert Fehlerfrei (habs grad getestet). Der Fehler liegt vermutlich in deiner Tabelle.
Was steht in F2? Was steht in A2:A43? Am besten, lad das mal hoch. Wenns sensibel ist, kannst du ja B-E komplett löschen.
Grüße,
Klaus M.vdT.

Anzeige
Nachfrage Case mit Platzhalter
09.01.2013 16:49:03
Burghard
Hallo,
konnte das Problem jetzt fast ganz lösen. Dieses Makro läuft (fast) wie gewünscht:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim Zelle As Range
Dim a1 As Range
Set a1 = Range("F2")
If Intersect(Target, Range("F2")) Is Nothing Then Exit Sub
If Range("F2") = "" Then
Range( _
"A2:A12,C2:C12,A14:A28,C14:C28,A31,C31,A33:A35,C33:C35,A37:A44,C37:C44").Interior. _
ColorIndex = xlNone
End If
If Range("F2")  "" Then GoTo weiter
GoTo nix
weiter:
For Each Zelle In Range("A2:A43")
With Zelle
Select Case .Value
Case a1
.Interior.ColorIndex = 35
Zelle.Offset(0, 2).Interior.ColorIndex = 35
'Case Else
End Select
End With
Next
nix:
Range("F4").Select
End Sub
Wenn ich in Zelle F2 z.B. "01" eingebe, dann wird wie gewünscht farblich markiert. Ich habe aber auch Zellen im Bereich "A2 bis "A43" darin steht dann z.B. "01/04/07/10". Diese Zellen werden nicht farbig markiert.
Gibt es eine Möglichkeit "a1" zusammen mit "Case" in etwa so zu formulieren: "a1" & "*", so dass im Bereich A2 bis A43 sowohl "01" als auch "01/04/07/10" gefunden und markiert werden?
Hilfe wäre nett.
Schönen Gruß
Burghard

Anzeige
AW: Nachfrage Case mit Platzhalter
09.01.2013 17:21:42
Daniel
HI
in dem Fall ist IF in Verbinung mit dem LIKE-Verglich die etwas schlüssigere Variante:
For Each Zelle In Range("A2:A43")
With Zelle
If .Value Like a1 & "*" then
.Interior.ColorIndex = 35
.Offset(0, 2).Interior.ColorIndex = 35
end If
End With
Next
Gruß, Daniel

AW: Klappt!
09.01.2013 19:09:31
Burghard
Hallo Daniel,
klappt 100% wie gewünscht! Danke!
Gruß
Burghard

324 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige