Makro verarbeitet nur 8 Schritte?
28.02.2020 08:05:31
Marius
folgendes Problem:
Ich habe ein Makro erstellt, dass FreeForms einfärben soll. Tut es auch, aber leider nur 8 von 9 FreeForms.
Die letzte Befehl wird immer ignoriert. Erst hatte ich einen Fehler im letzten Befehl vermutet, was ich aber durch das hin- und hertauschen der Befehle ausschließen konnte.
Kann ein Makro nur 8 Befehle verarbeiten?
Hier der Code (für Komprimierungs-/Verbesserungsvorschläge bin ich gerne offen!):
Sub Farbe_anpassen()
Sheets("Karte").Shapes("Hamburg").Select
With Selection
.ShapeRange.Fill.ForeColor.SchemeColor =
fctFarbe(Sheets("Karte").Range("V1").Value)
End With
Sheets("Karte").Shapes("Bremen").Select
With Selection
.ShapeRange.Fill.ForeColor.SchemeColor =
fctFarbe(Sheets("Karte").Range("V2").Value)
End With
Sheets("Karte").Shapes("Köln").Select
With Selection
.ShapeRange.Fill.ForeColor.SchemeColor =
fctFarbe(Sheets("Karte").Range("V3").Value)
End With
Sheets("Karte").Shapes("Berlin").Select
With Selection
.ShapeRange.Fill.ForeColor.SchemeColor =
fctFarbe(Sheets("Karte").Range("V4").Value)
End With
Sheets("Karte").Shapes("Frankfurt").Select
With Selection
.ShapeRange.Fill.ForeColor.SchemeColor =
fctFarbe(Sheets("Karte").Range("V5").Value)
End With
Sheets("Karte").Shapes("Dresden").Select
With Selection
.ShapeRange.Fill.ForeColor.SchemeColor =
fctFarbe(Sheets("Karte").Range("V6").Value)
End With
Sheets("Karte").Shapes("Chemnitz").Select
With Selection
.ShapeRange.Fill.ForeColor.SchemeColor =
fctFarbe(Sheets("Karte").Range("V7").Value)
End With
Sheets("Karte").Shapes("Muenchen").Select
With Selection
.ShapeRange.Fill.ForeColor.SchemeColor =
fctFarbe(Sheets("Karte").Range("V9").Value)
End With
Sheets("Karte").Shapes("Stuttgart").Select
With Selection
.ShapeRange.Fill.ForeColor.SchemeColor =
fctFarbe(Sheets("Karte").Range("V8").Value)
End With
End Sub
Private Function fctFarbe(dblWert As Double) As Byte
Select Case dblWert
Case Is = 0
fctFarbe = 1 'weiß1
Case Is
Liebe Grüße,
Marius