• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

Opgelost Button met 3 kleuren (vba/macro)

Dit topic is als opgelost gemarkeerd
Status
Niet open voor verdere reacties.

AlexW

Gebruiker
Lid geworden
29 sep 2018
Berichten
7
Hallo,

Ik heb een vraagje, wie kan mij helpen om een Button te maken met 3 optie's in verschillende kleuren.

Dus als je:
1x op button klikt wordt deze kleur "Oranje", klik je nog een keer dan wordt deze "Groen", en klik je nog een keer dan wordt deze "Wit".
En als je weer erop klikt dan wordt deze weer "Oranje" enz...
Standaard staat deze op kleur wit.

Ik denk dat het een VBA (macro) gaat worden.
Als bijlage een voorbeeld.

Kan iemand mij helpen ? alvast hartelijkdank voor jullie hulp.

Grt. Alex
 

Bijlagen

Maak een CommandButton aan uit de ActiveX zoals in bijgevoegd bestand.
Code:
Private Sub CommandButton1_Click()
With CommandButton1
 Select Case .BackColor
   Case -2147483628
     .BackColor = 49407
     .Caption = "Bezet"
   Case 49407
     .BackColor = 4697456
     .Caption = "Gereed"
   Case 4697456
     .BackColor = -2147483628
     .Caption = "Vrij"
  End Select
End With
End Sub
 

Bijlagen

CSS:
Private Sub CommandButton1_Click()
 With CommandButton1
    .Accelerator = (.Accelerator + 1) Mod 3
    .Caption = Split("vrij bezet gereed")(.Accelerator)
    .BackColor = Split("-2147483628 49407 4697456")(.Accelerator)
  End With
End Sub
 
@snb,
Leuk om te zien, ik was ook met 'accelerator mod 3' begonnen en zou ik met 'choose' de kleur ophalen.
Ben daar weer vanaf gestapt.
Ik kan helaas je code niet testen op mobiel.
 
Testen met vbwhite, vbgreen lijkt me ook aardig.
 
zo gaat het:

CSS:
.BackColor = Split(vbWhite & " " & vbYellow & " " & vbGreen)(.Accelerator)
 
Met de Accelerator en Choose die ik voor ogen had.

Code:
Private Sub CommandButton1_Click() 'snb
 With CommandButton1
    .Accelerator = .Accelerator Mod 3 + 1
    .Caption = Choose(.Accelerator, "vrij", "bezet", "gereed")
    .BackColor = Choose(.Accelerator, vbWhite, vbYellow, vbGreen)
  End With
End Sub
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan