Clever-Excel-Forum

Normale Version: VBA Backcolor in CommandButton führt zu Fehlern
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Seiten: 1 2 3 4 5 6
D.h., Du druckst das Dingens nur aus?
Ich dachte bis vorhin, dass Du mit den Buttons noch irgend etwas auslösen willst und deshalb dieses Steuerelement gewählt hast ...

Jetzt hast Du mich neugierig gemacht.
Du kannst ja mal den Spielplan posten, dann kann ich es auch mal ausprobieren.


Gruß Carsten
(08.02.2018, 12:03)BoskoBiati schrieb: [ -> ]die Zuweisung der Farben passt mit diesem Code:
Code:
InStr(arrZahlen, Format(loA, "00")

... auch nicht immer
Hi,

die Datei dient nur dazu, anhand des Bildes einen leeren Plan mit entsprechenden Folien zu belegen. Es gibt einen gedruckten leeren Plan, aber es wäre zuviel Aufwand, den jedes Mal auszudrucken und zu schneiden, zumal das  im DIN A3-Format sein müsste. Hier mal ein Link zum Spielplan:

https://www.boardgamegeek.com/filepage/1...mars-setup

wobei der weiße Plan mittlerweile durch eine Farbversion ersetzt ist.
Verstanden.
Danke. Bin am Lesen ...


Gruß Carsten
Zum illustrieren wie einfach die Code angepast werden kann: sechsflächer statt Commandbuttons.


Code:
Sub M_snb()
   If Tabelle1.Shapes.Count = 0 Then
    sn = Array(0, 5, 11, 18, 26, 35, 43, 50, 56, 61, 70)
    For j = 0 To 60
       y = Application.Match(j, sn, 1) - 1

       With Tabelle1.Shapes.AddShape(10, 259 - IIf(y < 5, y, 8 - y) * 69 / 2 + (j - sn(y)) * 69, 30 + y * 60, 68.25, 60)
          .Name = "C_" & Format(j, "00")
          .Rotation = 28
        End With
    Next
    End If
    
   sn = Tabelle2.Cells(1).CurrentRegion
   y = Abs(Int(6 * Rnd() - 0.01)) + 1
   For j = 1 To UBound(sn)
     If sn(j, y) = "" Then Exit For
   Next
    
    For jj = 0 To 60
        With Tabelle1.Shapes("C_" & Format(jj, "00"))
           .TextFrame2.TextRange.Text = sn(Abs(Int((j - 2) * Rnd() - 0.01)) + 2, y)
           .Fill.ForeColor.RGB = RGB(200, 200, 200)
           .TextFrame.Characters.Font.Color = RGB(0, 0, 0)
         End With
    Next
    
   With Tabelle1
       .[K1:K61] = "=rand()"
        sp = [index(rank(T_OLE!K1:K61,T_OLE!K1:K61)-1,)]
       .[K1:K61].ClearContents
    End With
    
    For j = 1 To 14
       With Tabelle1.Shapes("C_" & Format(sp(j, 1), "00"))
           .Fill.ForeColor.RGB = IIf(sp(j, 1) < 27, RGB(0, 0, 255), IIf(sp(j, 1) < 38, RGB(200, 100, 0), RGB(100, 100, 100)))
            If sp(j, 1) < 27 Then .TextFrame.Characters.Font.Color = RGB(255, 255, 255)
        End With
    Next
End Sub
Hi,

:97: :97: :97: :97: Thumps_up Thumps_up Thumps_up Thumps_up

genau das habe ich gesucht!!!!
Hi snb,

wie kann man die Beschriftung drehen?
Hallo,

snb's Code nachzuvollziehen, ist immer interessant.

Mit einer kleinen Änderung, von


Zitat:
Code:
    sp = [index(rank(T_OLE!K1:K61,T_OLE!K1:K61)-1,)]

zu

Zitat:
Code:
    sp = [index(rank(K1:K61,K1:K61)-1,)]

lief es seht gut.

mfg
(09.02.2018, 07:47)BoskoBiati schrieb: [ -> ]Hi snb,

wie kann man die Beschriftung drehen?

Die Frage hatte ich schon erwartet :19:

Drehen kann man die Beschriftung 90°, 270° aber nicht das der Text horizontal kommt.
Der 'Shape' ist nämlich rotiert.

Ich fürchte das geht nur mit 61 neue 'Textshapes'.
Hi,

ich habe es befürchtet, aber damit kann ich leben.
Seiten: 1 2 3 4 5 6