Typenunverträglichkeit - Verständnisfrage!?
12.04.2019 13:18:01
Marco
ich habe ein Problem bei einem kleinen Tool, dass ich mir gerade baue.
Hier bekomme ich eine Fehlermeldung wenn ich einen Wert aus einer Variable übergeben will. Was bei Interior.PatternColorIndex funktioniert löst bei Interior.Pattern einen Fehler der Typenunverträglichkeit aus.
Klar kann ich anstelle des setzen der Variable in der If-Abfrage auch den ganzen Befehl setzen, jedoch würde ich zum Verständnis gerne wissen was genau das Problem des Fehlers verursacht und was die Lösung beim jetzigen Vorgehen wäre.
Danke für Eure Hilfe - Beispieldatei inkl. User-Form anbei.
VG
Marco
Private Sub GoPattern_Click()
Dim Patternstyle As Variant
Dim patterncolor As String
Dim Zeile As Range, ZeilenNr As Integer
If Pat1.Value = True Then Patternstyle = "xlPatternChecker"
If Pat2.Value = True Then Patternstyle = "xlPatternCrissCross"
If Pat3.Value = True Then Patternstyle = "xlPatternDown "
If Pat4.Value = True Then Patternstyle = "xlPatternGray16"
If Pat5.Value = True Then Patternstyle = "xlPatternGray25"
If Pat6.Value = True Then Patternstyle = "xlPatternGray50"
If Pat7.Value = True Then Patternstyle = "xlPatternGray75"
If Pat8.Value = True Then Patternstyle = "xlPatternGray8"
If Pat9.Value = True Then Patternstyle = "xlPatternGrid"
If Pat10.Value = True Then Patternstyle = "xlPatternHorizontal"
If Pat11.Value = True Then Patternstyle = "xlPatternLightDown"
If Pat12.Value = True Then Patternstyle = "xlPatternLightVertical"
If Pat13.Value = True Then Patternstyle = "xlPatternSemiGray75"
If Pat14.Value = True Then Patternstyle = "xlPatternUp"
If Pat15.Value = True Then Patternstyle = "xlPatternVertical"
If Pat16.Value = True Then Patternstyle = "xlPatternNone"
If Col1.Value = True Then patterncolor = "1"
If Col2.Value = True Then patterncolor = "2"
If Col3.Value = True Then patterncolor = "3"
If Col4.Value = True Then patterncolor = "4"
If Col5.Value = True Then patterncolor = "5"
If Col6.Value = True Then patterncolor = "6"
If Col7.Value = True Then patterncolor = "7"
If Col8.Value = True Then patterncolor = "8"
For Each Zeile In Selection.Rows
'Zeile.Interior.Pattern = xlPatternGray16
https://www.herber.de/bbs/user/129109.xlsm