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

Naam van een 'Knop' veranderen?

Status
Niet open voor verdere reacties.

Demeter

Verenigingslid
Lid geworden
24 mei 2006
Berichten
1.659
Gegroet,

Ik ben op zoek naar hoe ik de naam van een knop kan veranderen.
Ik bedoel niet de tekst op de knop, maar echt de naam van de knop.

Knop komt vanaf werkbalk formulieren.

Weet dat je de naam kan zien door:
Selecteren knop.
Invoegen/naam/definiëren. en dan onder in het scherm.

Deze kan ik alleen niet aanpassen.

Als ik mijn bestaande knop kopieer dan krijgt deze automatisch een andere naam.

Graag enige uitleg.


Groet,
Ferenc
 
Waarom heb je de naam nodig?

Werk anders met een knop van de VB werkbalk.

Daar gaat het zeker.
 
Wil dat als ik mijn regels heb verborgen. (zi8e ook: http://www.helpmij.nl/forum/showthread.php?t=259445)
dat er op de knop zichtbaar komt te staan, en anders om komt er verbergen te staan.
Nu lukt dit door de naam van de button hardcoded in de code te zetten.

Probleem is als ik op een andere button deze code wil plaatsen dan moet ik de naam van de button variabel maken in mijn code of..... de naam van de button veranderen naar de hardcoded naam.

2e lijkt mij een stuk simpeler.


Groet,
Ferenc
 
Werk anders met een knop van de VB werkbalk.

Doe dit, kies een geschikte naam and zet dan de eigenschap .Caption van die button op wat je wilt.

Dat is volgens mij de juiste methode.

Wigi
 
Wigi,

Snap je .caption niet helemaal. Volgens mij komt deze parameter in een coderegel waarin ook de naam van de button komt te staan, anders kan je toch nooit de caption aanroepen? omdat je niet weet van welke button deze moet zijn?

Hierbij mijn test code:
Code:
Sub tekst_verandering1()

If Range("A1") = 1 Then
Range("B1") = 2
[COLOR="Red"]ActiveSheet.Shapes("Button 1").Select[/COLOR]
    Selection.Characters.Text = "B1 = 2"
Else
Range("B1") = ""
Range("C1") = 2
ActiveSheet.Shapes("Button 1").Select
    Selection.Characters.Text = "A1 = leeg"
End If

End Sub


Sub tekst_verandering2()

If Range("A1") = 1 Then
Range("B1") = 2
[COLOR="red"]ActiveSheet.Shapes("Button 2").Select[/COLOR]
    Selection.Characters.Text = "B1 = 2"
Else
Range("B1") = ""
Range("C1") = 2
ActiveSheet.Shapes("Button 2").Select
    Selection.Characters.Text = "A1 = leeg"
End If

End Sub


Gaat om de rode gedeelten, als ik de caption van de button op een of andere manier in een variabele kan krijgen dan kan ik hiermee mijn formule aantal verkleinen (van 2 subs naar 1).

Dus:
op druk van knop wordt de waarde van de button ingelezen.
Deze wordt als variabele door de code gehaalt en aan de hand van de if else output wordt de caption van de button veranderd.

Wordt vervolgt.....................

Groet,
Ferenc
 

Bijlagen

Waarom kan je niet gewoon een knop maken met Visual Basic werkbalk. Klik er dan rechts op en geef de eigenschappen in. O.a. de naam en caption. Dan gebruik je iets in de stijl van:

Code:
Private Sub Commandbutton1_Click()
        If Range("A1").Value = "hallo" Then
            Commandbutton1.Caption = "dit is een caption"
        Else
            Commandbutton1.Caption = "dit is een andere caption"
        End If
End Sub

Afhankelijk van wat in cel A1 staat komt er een andere caption. Er is maar 1 knop.

Is dit wat je wilt doen?

Wigi
 
Heb daar nog niet mee gewerkt:o .
Maar zal het nu wel moeten gaan doen.

Thanks Wigi, the man who never sleeps :D

Ga na mijn ovenheerlijke pizza dit probleem verder te lijf.


Groet,
Ferenc
 
Hallo Ferenc,

Ook met Forms-knopjes kun je Caption en Name veranderen.
In jouw code Shapes verandert in Buttons.
Zie Module1.
 

Bijlagen

Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan