Condividi:        

opzioni con le combobox

Vuoi potenziare i tuoi documenti Word? Non sai come si fa una macro in Excel? Devi creare una presentazione in PowerPoint?
Oppure sei passato a OpenOffice e non sei sicuro di come lavorare al meglio?

Moderatori: Anthony47, Flash30005

opzioni con le combobox

Postdi cd7019 » 12/02/14 19:52

ciao,

ho scoperto le userform e adesso non riesco più a smettere. hahah

ho un problema:
1) come faccio a far riconoscere una variabile su tutta la userform?
cosa sbaglio:
Codice: Seleziona tutto
public k1
Private Sub UserForm_Initialize()
k1=100
...
end sub
Private Sub CB1_CHANGE()   ' combobox1
    aa=k1*2
End Sub
sub setup() ' macro
   bb=k1*3
end sub


2) come faccio ad andare su una combobox o su un commandbutton?
Codice: Seleziona tutto
Private Sub CB1_CHANGE()   ' combobox1
    if CB1.TEXT="QQQ" THEN Combobox4.SELECT   <<<< ???
    if CB3.TEXT="WWW" THEN Commandbutton4.SELECT   <<<< ???
    if CB3.TEXT="RRR" THEN Commandbutton4.ATTIVA   <<<< ???
End Sub


3) PER LE COMBOBOX è possibile restringere il testo se supera la larghezza?

Grazie
EXCEL 2003
cd7019
Utente Senior
 
Post: 232
Iscritto il: 26/06/12 21:38

Sponsor
 

Re: opzioni con le combobox

Postdi ricky53 » 12/02/14 23:10

Ciao,
punto 1. la variabile "K1"deve essere definita Public ma fuori di tutte le macro, come prima riga nel Modulo1.

punto 2. l'istruzione da utilizzare nel "Then" di
Codice: Seleziona tutto
if CB1.TEXT="QQQ" THEN ...

è
Codice: Seleziona tutto
ComboBox4.SetFocus


punto 3. Uhm ...
Dice il vecchio saggio provare e riprovare è l'unica strada per imparare

Più chiara è la vostra spiegazione
Più immediata sarà la nostra soluzione


. . . . . . . . . .
S.O. W10; Office 2003-10-13-16-19
Avatar utente
ricky53
Utente Senior
 
Post: 4565
Iscritto il: 11/04/09 19:29
Località: Italia

Re: opzioni con le combobox

Postdi Anthony47 » 13/02/14 00:04

ho scoperto le userform e adesso non riesco più a smettere. hahah
Meno male che hanno abolito la giovannardi/fini...

come faccio a far riconoscere una variabile su tutta la userform?
cosa sbaglio

A complemento di quanto gia' scritto da Ricky:
Dichiarata in testa al modulo di codice della userform, la variabile k1 sara' visibile su tutto il modulo. Non sara' visibile fuori da quel modulo, pertanto tanto vale dichiararla solo con Dim (sempre in testa al modulo); anzi, per evitare equivoci, e' meglio dichiararla solo con Dim.
Diverso sarebbe se dichiarata Public in testa a un Modulo standard (es su Modulo1), perche in quel caso sarebbe visibile (perche' Public) su tutto il progetto.

A te che cosa non quadra?


PER LE COMBOBOX è possibile restringere il testo se supera la larghezza?
Se per "restringere" intendi scrivere con caratteri piu' stretti, lo puoi sempre fare variando il font, ma la modifica sara' valida su tutto il combobox. Se vuoi sapere se si puo' fare a livello di singola voce, allora anche oggi la risposta e' No (viewtopic.php?f=26&t=101258&p=585485#p585459 )

Ciao
Avatar utente
Anthony47
Moderatore
 
Post: 19181
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: opzioni con le combobox

Postdi cd7019 » 13/02/14 20:18

ciao

mi succede una cosa strana, quando eseguo:
Codice: Seleziona tutto
Private Sub ComboBox3_CHANGE()
    If ComboBox3.Text = "aaa" Then ComboBox4.SetFocus
End Sub


il testo nella ComboBox3 rimane allineato a destra (anche nelle successive modifiche) quando la lunghezza del testo è superiore alla larghezza della combo.
come posso riportare il testo allineato a sx nella combobox3?

grazie
EXCEL 2003
cd7019
Utente Senior
 
Post: 232
Iscritto il: 26/06/12 21:38

Re: opzioni con le combobox

Postdi Anthony47 » 14/02/14 12:05

Inserisci una istruzione di "SelStart", ad esempio in una macro di Exit dal controllo; tipo
Codice: Seleziona tutto
Private Sub ComboBox3_Exit(ByVal Cancel As MSForms.ReturnBoolean)
    ComboBox1.SelStart = 0
End Sub

Ciao
Avatar utente
Anthony47
Moderatore
 
Post: 19181
Iscritto il: 21/03/06 16:03
Località: Ivrea


Torna a Applicazioni Office Windows


Topic correlati a "opzioni con le combobox":


Chi c’è in linea

Visitano il forum: Nessuno e 29 ospiti