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

caption optionbutton wijzigen met VBA

Status
Niet open voor verdere reacties.

AD1957

Verenigingslid
Lid geworden
27 feb 2016
Berichten
1.991
Beste Forumleden,
Met onderstaande code wijzig ik de naam van de optionbutton(caption)
probleem:
Na sluiten/openen van de userform_artikelen krijgt de optionbutton toch weer de naam optionbutton29
Het lukt me maar niet om de naamswijziging vast te zetten.

Code:
Private Sub CommandButton1_Click()

userform_artikelen.OptionButton29.Caption = TextBox1.Value

MsgBox "Je hebt de naam gewijzigd en gaat nu naar de eerste regel van de selectie in de artikellijst"
Unload Me

Dim WB As Workbook
Dim str_Path As String
     str_Path = "C:\users\" & Environ("username") & "\Desktop\BOEKHOUDING BJORN\BOEKHOUDLIJSTEN\artikellijst.xlsb"
     Set WB = Workbooks.Open(str_Path)
     Range("B3901").Select

End Sub
 
De OptionButton heeft na het laden van een Userform altijd de Caption die bij het aanmaken van die OptionButton is ingegeven.
Je moet het dus ergens vast leggen en dan in de Userform_Initialize zorgen dat die waarde aan de OptionButton wordt gegeven.
Of gebruik niet Unload Me maar Me.Hide
 
Laatst bewerkt:
Goede avond Ed,
Het wijzigen van Unload Me in Me.Hide geeft geen resultaat/oplossing.
Ik ga maar eens op zoek hoe ik het kan oplossen met jouw eerste voorstel.
misschien zo iets???
Code:
Userform_Initialize()
userform_artikelen.OptionButton29.Caption = UserForm5.TextBox1.Value

Loop dan wel tegen het probleem aan dat ik de eerste code in #1 wil gebruiken voor OptionButton29 t/m nr 34
Ik wel het nml. voor de gebruiker mogelijk maken om deze captions eenvoudig te wijzigen zodat hij gemakkelijk nieuwe artikelgroepen kan aanmaken
zonder dat hij iets in VBA moet wijzigen.
 
Geen probleem toch?
Zet die informatie in een (verborgen) werkblad.
Die kan je dan bij het openen van het formulier lezen en naar schrijven als er een wijziging is.
 
optionbutton zorgt voor het vullen van de listbox in userform_artikelen
als voorbeeld even de code van een andere OptionButton
Code:
Private Sub OptionButton28_Click() 'onderdelen sanitair

ListBox1.Value = ""

        With GetObject("C:\users\" & Environ("username") & "\Desktop\BOEKHOUDING BJORN\BOEKHOUDLIJSTEN\artikellijst.xlsb")
            ListBox1.List = .Sheets("Blad1").Range("A3701:C3899").Value
            .Close 0
        End With

End Sub

Er staan inmiddels 28 OptionButtons die gebruikt worden
OptionButton 29 t/m 34 staan als reserve.
Ik wil het voor de gebruiker mogelijk maken deze zelf een naam te kunnen geven.
de Listbox1.list...... Range( ).value heb ik er al ingezet

Ik heb totaal geen idee wat je nou bedoelt.
 
Laatst bewerkt:
Het gaat toch om het zetten en bewaren van de Captions van de OptionButtons?
 
OptionButton 29 t/m 34 staan al op de userform.
Ben alleen op zoek naar een code om de caption te wijzigen en te bewaren,
bijvoorbeeld door doubleclick op de OptionButton een userform te openen met textbox waarin de caption kan worden gewijzigd en bewaard
Met de code in #1 krijg ik hem wel gewijzigd maar niet bewaard.
Sorry voor het verwarrend bericht #5 was bedoeld als verduidelijking.
 
Ook in een Textbox kan het niet bewaard worden om na sluiten van een userform dat weer als caption te gebruiken.
Je moet het doen zoals ik in #4 al zei.
Bewaar die captions in een werkblad.
Daar vandaan kan je ze dan weer zetten door dat te lezen in de userform_initialize.

Voorbeeldje voor je gemaakt:
Bekijk bijlage Caption.xlsm
 
Zo dus, ben wat langzaam van begrip:(:thumb:

Code:
Private Sub UserForm_Initialize()
With Sheets("factuur")
OptionButton29.Caption = [N2].Value
OptionButton30.Caption = [N3].Value
OptionButton31.Caption = [N4].Value
OptionButton32.Caption = [N5].Value
OptionButton33.Caption = [N6].Value
OptionButton34.Caption = [N7].Value
End With
End Sub

Ik had jouw voorbeeld alweer gemist, ga daar ook nog even mee aan de slag.
 
Laatst bewerkt:
Precies.
En dat mag uiteraard ook in een verborgen blad.

Zie ook mijn voorbeeld om de code zo kort mogelijk te houden.
 
Laatst bewerkt:
"Precies"???
Ik mag toch hopen dat je hiermee niet bedoeld dat ik langzaam van begrip ben:evil:hahahaha
Het werkt inmiddels perfect.
Mijn dank.
 
Haha! Nee hoor, zo bedoelde ik dat niet :cool:
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan