Elenco combobox definito

Versione Completa   Stampa   Cerca   Utenti   Iscriviti     Condividi : FacebookTwitter
krashone
00martedì 17 maggio 2016 06:21
Buongiorno a tutti,

una domanda molto semplice che non ha bisogni di esempi
ho una ComboBox con un'elenco definito nella proprietà rowsource
poi ho inserito questo codice per associare la scelta alla colonna adiacente visibile poi su lobel 4

Private Sub ComboBox1_Change()
For i = 11 To 22
If Sheets("Dati").Cells(i, 1) = ComboBox1 Then
Label4.Caption = Sheets("Dati").Cells(i, 2)
End If
Next i
End Sub


la mia domanda è questa: essendo la lista variabile
avevo pensato di sostituire for i = 11 to 22
con for i = 11 to rowsource (o simile)

come faccio
Grazie 1000
dodo47
00martedì 17 maggio 2016 10:27
Ciao
Non ho capito se vuoi dinamica la ComboBox o no.

Comunque se si:
potresti assegnare un nome "dinamico" al range interessato ed assegnarne il valore alla cbo.

Nell'allegato il nome assegnato al range dinamico è mDati:
=SCARTO(Foglio1!$A$2;0;0;CONTA.VALORI(Foglio1!$A$2:$A$1000);1)

nell'initialize della UserForm viene assegnato tale nome come rowsource della combobox1.

Se togli o aggiungi valori in col. A, la Cbo si adatta.

Se invece ti serve dinamico il "22"

for i =11 to Range("A" & Rows.Count).End(xlUp).Row


saluti
krashone
00martedì 17 maggio 2016 16:23
si dinamico

grazie
krashone
00martedì 17 maggio 2016 16:44
Ho controllato ma probabilmente non mi sono spiegato bene
e capisco perché serva ogni volta l'esempio

Private Sub ComboBox1_Change()
For i = 11 To 22
If Sheets("Dati").Cells(i, 1) = ComboBox1 Then
Label4.Caption = Sheets("Dati").Cells(i, 2)
End If
Next i
End Sub

quando seleziono la voce dalla combobox1
mi appare nella label4 il valore della cella adiacente alla voce
selezionata e fino qui tutto ok

se pero le voci della combobox1 sono variabili quindi non solo dalla 11 alla 22 come lo imposto ??!!

Grazie
tanimon
00martedì 17 maggio 2016 16:50
Re:
krashone, 5/17/2016 4:44 PM:


Private Sub ComboBox1_Change()
For i = 11 To 22
If Sheets("Dati").Cells(i, 1) = ComboBox1 Then
Label4.Caption = Sheets("Dati").Cells(i, 2)
End If
Next i
End Sub

se pero le voci della combobox1 sono variabili quindi non solo dalla 11 alla 22 come lo imposto ??!!

Grazie




rileggendo la tua macro, passo passo,

non credi di avere già la risposta a questa domanda?

Dovrai solo definire la variabile che determina la fine del ciclo,
e per questo, quasi in ogni post del forum, ce n'è un esempio.

Ciao
Frank
dodo47
00martedì 17 maggio 2016 17:57
Re:
krashone, 17/05/2016 16.44:

....se pero le voci della combobox1 sono variabili quindi non solo dalla 11 alla 22 come lo imposto ??!!Grazie



mi sembra di averti già risposto

dodo47:

Se invece ti serve dinamico il "22"

for i =11 to Range("A" & Rows.Count).End(xlUp).Row






krashone
00martedì 17 maggio 2016 18:53
ok grazie

adesso ci sono arrivato scusate ma sono duro di comprendonio
Questa è la versione 'lo-fi' del Forum Per visualizzare la versione completa clicca qui
Tutti gli orari sono GMT+01:00. Adesso sono le 03:45.
Copyright © 2000-2024 FFZ srl - www.freeforumzone.com