creare checkbox in automatico
Hai un problema con Excel? 
creare checkbox in automatico
di RITA (utente non iscritto) data: 13/09/2013 09:23:46
Ciao a tutti
un quesito da sottoporvi
ho una userform con all'interno tre chekbox ed all'interno delle checkbox ho inserito dei comandi a seconda che siano vfleggate o meno
la mia domanda e' questa
si puo richiamare una userform che sia vuota e creare "n" chekbox che abbiano poi al loro interno determinati comandi senza che vengano create a priori?
di Vecchio Frac data: 13/09/2013 09:51:42
Sì, puoi creare controlli al volo.
Devi utilizzare il metodo Add specificando l'oggetto desiderato (per esempio un controllo in un form) in fase di esecuzione. La sintassi per il metodo Add per aggiungere controlli a un form è il seguente:
Set Control = object.Add( ProgID, Name, Visible)
L'unico argomento obbligatorio che dobbiamo fornire è il ProgID (vedi tabella sottostante).
CheckBox Forms.CheckBox.1
ComboBox Forms.ComboBox.1
CommandButton Forms.CommandButton.1
Frame Forms.Frame.1
Image Forms.Image.1
Label Forms.Label.1
ListBox Forms.ListBox.1
MultiPage Forms.MultiPage.1
OptionButton Forms.OptionButton.1
ScrollBar Forms.ScrollBar.1
SpinButton Forms.SpinButton.1
TabStrip Forms.TabStrip.1
TextBox Forms.TextBox.1
ToggleButton Forms.ToggleButton.1
'un semplice esempio. Serve uno userform con un commandbutton1 cui associare questo evento:
Private Sub CommandButton1_Click()
Dim ctl As Control
with me
Controls.Add "Forms.CommandButton.1", "Pulsante"
pulsante.Caption = "Hello world"
end with
End Sub |
di Vecchio Frac data: 13/09/2013 09:55:34
L'esempio era incompleto :)
Dopodichè probabilmente vorrai associarvi un evento ^_^ (ma dipende dal tipo di controllo che imposti)
Private Sub CommandButton1_Click()
Dim ctl As Control
with me
Controls.Add "Forms.CommandButton.1", "Pulsante"
pulsante.Caption = "Hello world"
end with
Set ctl = Controls.Add("Forms.CommandButton.1", "Pulsante2")
ctl.Caption = "Hello"
End Sub |
di rita (utente non iscritto) data: 13/09/2013 10:20:42
grazie per la tempestiva riposta
provero' e ti faro sapere
di Vecchio Frac data: 13/09/2013 10:24:47
Come (migliore) alternativa suggerisco di creare a disegno tutti i controlli necessari, con tutti gli eventi già predisposti, e nasconderli in esecuzione all'avvio. Quando ti servono, li rendi visibili e li hai già pronti, con il loro codice già fatto e mantenuto.
di tortyno71 (utente non iscritto) data: 13/09/2013 10:35:45
@VF
che intendi con :creare a disegno tutti i controlli?
di Grograman data: 13/09/2013 10:37:40
Anche perchè, almeno per quanto mi riguarda, creare il codice via codice è una roba complicata!
di Vecchio Frac data: 13/09/2013 11:25:52
"a disegno" o "in progettazione" è quando crei l'userform e ci posizioni i controlli nell'editor, non via codice che come dice Gro' è complicato da gestire.
Vuoi Approfondire?