• 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.

opmaak knop

Status
Niet open voor verdere reacties.

Alexander86

Gebruiker
Lid geworden
22 feb 2007
Berichten
83
Hallo,

Gisteren had ik een vraag gesteld ivm met het omzetten van tijden. nu heb ik nog een vraag ivm met het opmaken van knoppen.

ik heb dus 3 knoppen aangemaakt om een bepaalde tijd (in cel A6) om te zetten in 3 verschillende tijds notaties. nu zou het nog de bedoeling zijn dat wanneer cel A6 bv in tijdsnotatie "uur min sec" staat dat deze knop waarop staat uur min sec in een ander kleur komt te staan, ofdat de tekst vet en in een ander kleur komt te staan ... zo wordt het duidelijk in welke tijdsnotatie de waarde staat. want als je het enkele keren veranderd en na een tijd weet je dan niet meer in welke tijdsnotatie het staat ...

in bijlage heb ik een eenvoudig voorbeeld toegevoegd ...

in het voorbeeld staan er wel 6 knoppen, dit omdat in het werkelijke bestand dezelfde knoppen ook meermaals voorkomen...
 

Bijlagen

Zoiets werkt:

Code:
Sub UUR_MIN_SEC()
    With Range("A6")
        .Value = "=subtotal(109,A1:A5)"
        .NumberFormat = "[h]:mm:ss"
    End With
    
    'bold voor huidige knop
    ActiveSheet.Shapes("Button 1").Select
    Selection.Font.FontStyle = "Bold"
    
    'niet bold voor andere knoppen
    ActiveSheet.Shapes("Button 2").Select
    Selection.Font.FontStyle = ""
    ActiveSheet.Shapes("Button 3").Select
    Selection.Font.FontStyle = ""
    
    Range("A6").Select
End Sub
Sub MIN_SEC()
    With Range("A6")
        .Value = "=subtotal(109,A1:A5)"
        .NumberFormat = "[mm]:ss.00"
    End With
    
    'bold voor huidige knop
    ActiveSheet.Shapes("Button 2").Select
    Selection.Font.FontStyle = "Bold"
    
    'niet bold voor andere knoppen
    ActiveSheet.Shapes("Button 1").Select
    Selection.Font.FontStyle = ""
    ActiveSheet.Shapes("Button 3").Select
    Selection.Font.FontStyle = ""
    
    Range("A6").Select
End Sub
Sub UUR_STELSEL()
    With Range("A6")
        .Value = "=subtotal(109,A1:A5)*24"
        .NumberFormat = "0.00"
    End With
    'bold voor huidige knop
    ActiveSheet.Shapes("Button 3").Select
    Selection.Font.FontStyle = "Bold"
    
    'niet bold voor andere knoppen
    ActiveSheet.Shapes("Button 1").Select
    Selection.Font.FontStyle = ""
    ActiveSheet.Shapes("Button 2").Select
    Selection.Font.FontStyle = ""
    
    Range("A6").Select
End Sub

Wigi
 
Wigi,

Dit werkt ! alvast bedankt, maar is het ook mogelijk om beide knoppen bold te laten verschijnen?

wanneer ik nu bv de knop uur min sec aanklik dan verschijnen de letters van knop1 uur min sec bold, maar er staat ook nog een 2de knop met uur min sec (die eigenlijk hetzelfde is, maar deze komt op een totaal andere plaats op het blad) en die zou dan ook bold moeten verschijnen...

er zouden dus altijd 2 knoppen in bold moeten staan, steeds deze met dezelfde naam ...

mvg Alexander
 
Wigi,

Dit werkt ! alvast bedankt, maar is het ook mogelijk om beide knoppen bold te laten verschijnen?

wanneer ik nu bv de knop uur min sec aanklik dan verschijnen de letters van knop1 uur min sec bold, maar er staat ook nog een 2de knop met uur min sec (die eigenlijk hetzelfde is, maar deze komt op een totaal andere plaats op het blad) en die zou dan ook bold moeten verschijnen...

er zouden dus altijd 2 knoppen in bold moeten staan, steeds deze met dezelfde naam ...

mvg Alexander

Als je door de code gaat begrijp je vast wat er gebeurt. Zet er dan een beetje bij voor die andere knop ook.

Ik heb zelfs commentaar getypt in mijn code.
 
Wigi,

ja ik begrijp de code wel gedeeltelijk, maar hoe weet je nu hoe die bepaalde knoppen heten. u spreekt van button 1 en 2 en 3, maar ik heb dan die button 1 gekopieerd en geplakt idem voor 2 en 3, hoe weet ik nu hoe ik gekopieerde knoppen moet noemen? ik heb geprobeerd met button 4 , 5, 6, maar dit lukt niet, er is al direct eenfoutmelding ...

mvg alexander
 
Wigi,

ja ik begrijp de code wel gedeeltelijk, maar hoe weet je nu hoe die bepaalde knoppen heten. u spreekt van button 1 en 2 en 3, maar ik heb dan die button 1 gekopieerd en geplakt idem voor 2 en 3, hoe weet ik nu hoe ik gekopieerde knoppen moet noemen? ik heb geprobeerd met button 4 , 5, 6, maar dit lukt niet, er is al direct eenfoutmelding ...

mvg alexander

Klik met rechtermuisknop op een button, druk Escape.

In het naamvak komt dan de naam van de button.
 
Wigi,

ik vroeg me nog af of het mogelijk is om in de code geen gebruik te maken van select en selection.

bv als je iets met een bepaalde cel wilt doen kan je dit definieren als:
With Range("A8")
.value = .....
End With


is het mogelijk om de code dat jij had geschreven ook zonder die buttons te selecteren?

mvg Alexander
 
Wigi,

ik vroeg me nog af of het mogelijk is om in de code geen gebruik te maken van select en selection.

bv als je iets met een bepaalde cel wilt doen kan je dit definieren als:
With Range("A8")
.value = .....
End With

is het mogelijk om de code dat jij had geschreven ook zonder die buttons te selecteren?

mvg Alexander

Neen, niet dat ik weet althans. Ik heb het ook geprobeerd.

Wigi
 
Wigi,

ik heb nu nog een "probleem" doordat het niet kan zonder te selecteren :s:s. op het laatste selecteer je dan nog altijd een bepaalde cel, zoals in voorbeeld cel A6. nu is mijn vraag of je ook in VBA de esc toets kan definieren. want het is de bedoeling dat wanneer je op de knop gedrukt hebt dat er geen enkele cel geselecteerd is. nu had ik dit eerst gedaan door die regel met "Range("A6").select te verwijderen maar dan blijft er een knop geselecteerd en dit is ook niet de bedoeling. wanneer je dan de esc toets zou kunnen definieren in VBA dan zou die knop niet meer geselecteerd worden.

of een andere oplossing voor mij zou ook kunnen dat de cel terug geselecteerd wordt die geselecteerd was voordat er op de knop gedrukt geweest is.

ik vermoed dat het eenvoudiger zou zijn dat er geen enkele cel meer geselecteerd zou zijn ...

weet u soms hoe ik dit zou moeten doen?
ik heb al geprobeerd met macro's op te nemen en dan stukken eruit te halen, maar de bewerking esc heeft hij nooit terug...

mvg Alexander
 
Hier is al iets

Code:
Dim rHuidigeSelectie As Range
    
    On Error Resume Next
    Set rHuidigeSelectie = Selection
    On Error GoTo 0
    
    If rHuidigeSelectie Is Nothing Then Set rHuidigeSelectie = Range("A6")
    
    With Range("A6")
        .Value = "=subtotal(109,A1:A5)"
        .NumberFormat = "[h]:mm:ss"
    End With
    
    'bold voor huidige knop
    ActiveSheet.Shapes("Button 1").Select
    Selection.Font.FontStyle = "Bold"
    
    'niet bold voor andere knoppen
    ActiveSheet.Shapes("Button 2").Select
    Selection.Font.FontStyle = ""
    ActiveSheet.Shapes("Button 3").Select
    Selection.Font.FontStyle = ""
    
    rHuidigeSelectie.Select

Als vooraf een knop werd geselecteerd, wordt door de code A6 geselecteerd. Indien een bereik geselecteerd was, vooraf dus, dan wordt datzelfde bereik opnieuw geselecteerd.

Wigi
 
Wigi,

bedankt hé, het is me gelukt, ik denk nu dat ik voldoende weet

mvg Alexander
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan