Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Re: casella combinata con più valori

753 views
Skip to first unread message

namor

unread,
Sep 10, 2004, 2:53:21 AM9/10/04
to
giorgio ha scritto:

> C'č un sistema per salvare in un campo una scelta multipla fatta dalla
> stessa casella combinata ?
> La casella combinata Sci ha un tipo origine riga una tabella tbsci e come
> origine controllo IDsci . La scelta viene salvata in un'altra tabella. Si
> dovrebbero salvare piů di due valori scelti dallo stesso elenco.
> Diversamente come si potrebbe procedere ? ("l'ideale sarebbe una casella
> di riepologo a discesa, e un campo testo")
> grazie

La scelta multipla č possibile solo nelle caselle di riepologo e i valori
li salvi come ti ha detto Sergio, a meno che tu non intenda lo scegliere
piů valori uno dopo l'altro da una casella combinata nel qual caso ti
basta leggere il valore della casella nell'evento dopo aggiornamento ed
accodarlo ad una variabile globale o static.
Namor


--
namor at inwind punto it

questo articolo e` stato inviato via web dal servizio gratuito
http://www.newsland.it/news segnala gli abusi ad ab...@newsland.it


giorgio

unread,
Sep 10, 2004, 5:25:19 AM9/10/04
to

"namor" <do...@spam.me> wrote in message
news:chrj12$g7h$1...@news.newsland.it...
Quello che intendevo io era:
se la lista č composta da es 5 "valori" rosso, verde, giallo, blu, arancio
poter salvare nel campo di un'altra tabella o il singolo valore es rosso (
facile) o una stringa separata da virgola o altro simbolo es verde, blu
oppure giallo, arancio, verde, rosso, blu ...

ciao


namor

unread,
Sep 10, 2004, 5:36:31 AM9/10/04
to
giorgio ha scritto:

> > > C'č un sistema per salvare in un campo una scelta multipla fatta dalla
> > > stessa casella combinata ?
> > > La casella combinata Sci ha un tipo origine riga una tabella tbsci e
> come
> > > origine controllo IDsci . La scelta viene salvata in un'altra tabella.
> Si
> > > dovrebbero salvare piů di due valori scelti dallo stesso elenco.
> > > Diversamente come si potrebbe procedere ? ("l'ideale sarebbe una
> casella
> > > di riepologo a discesa, e un campo testo")
> > > grazie

> > La scelta multipla č possibile solo nelle caselle di riepologo e i valori
> > li salvi come ti ha detto Sergio, a meno che tu non intenda lo scegliere
> > piů valori uno dopo l'altro da una casella combinata nel qual caso ti
> > basta leggere il valore della casella nell'evento dopo aggiornamento ed
> > accodarlo ad una variabile globale o static.
> > Namor

> Quello che intendevo io era:


> se la lista č composta da es 5 "valori" rosso, verde, giallo, blu, arancio
> poter salvare nel campo di un'altra tabella o il singolo valore es rosso (
> facile) o una stringa separata da virgola o altro simbolo es verde, blu
> oppure giallo, arancio, verde, rosso, blu ...
> ciao

Non hai ancora chiarito se usi una casella combinata (elenco a discesa) o
di riepilogo che visualizza sempre l'elenco aperto.
Penso che sia una listbox (casella di riepilogo), allora fai come ti ha
detto Sergio. Puoi usare l'evento before_update (prima di aggiornare)
della maschera se vuoi salvare la stringa nel campo della tabella, o il
click di un pulsante.

giorgio

unread,
Sep 10, 2004, 5:50:51 AM9/10/04
to

"namor" <do...@spam.me> wrote in message
news:chrsj1$vhu$1...@news.newsland.it...
Quello che desideravo č poterlo fare con una casella combinata.

ciao
grazie


namor

unread,
Sep 10, 2004, 7:11:33 AM9/10/04
to
giorgio ha scritto:

> > > > > C'è un sistema per salvare in un campo una scelta multipla fatta


> dalla
> > > > > stessa casella combinata ?
> > > > > La casella combinata Sci ha un tipo origine riga una tabella tbsci e
> > > come
> > > > > origine controllo IDsci . La scelta viene salvata in un'altra
> tabella.
> > > Si

> > > > > dovrebbero salvare più di due valori scelti dallo stesso elenco.


> > > > > Diversamente come si potrebbe procedere ? ("l'ideale sarebbe una
> > > casella
> > > > > di riepologo a discesa, e un campo testo")
> > > > > grazie
> >

> > > > La scelta multipla è possibile solo nelle caselle di riepologo e i


> valori
> > > > li salvi come ti ha detto Sergio, a meno che tu non intenda lo
> scegliere

> > > > più valori uno dopo l'altro da una casella combinata nel qual caso ti


> > > > basta leggere il valore della casella nell'evento dopo aggiornamento
> ed
> > > > accodarlo ad una variabile globale o static.
> > > > Namor
> >
> > > Quello che intendevo io era:

> > > se la lista è composta da es 5 "valori" rosso, verde, giallo, blu,


> arancio
> > > poter salvare nel campo di un'altra tabella o il singolo valore es rosso
> (
> > > facile) o una stringa separata da virgola o altro simbolo es verde, blu
> > > oppure giallo, arancio, verde, rosso, blu ...
> > > ciao
> >
> > Non hai ancora chiarito se usi una casella combinata (elenco a discesa) o
> > di riepilogo che visualizza sempre l'elenco aperto.
> > Penso che sia una listbox (casella di riepilogo), allora fai come ti ha
> > detto Sergio. Puoi usare l'evento before_update (prima di aggiornare)
> > della maschera se vuoi salvare la stringa nel campo della tabella, o il
> > click di un pulsante.
> > Namor

> Quello che desideravo è poterlo fare con una casella combinata.
> ciao
> grazie

Allora ti avevo già risposto nel mio primo msg.
Ti faccio un esempio da mettere su dopoaggiornamento della combo.

static output as string
output=output & me.casellacombinata & ", "
msgbox output

Devi anche trovare un evento per svuotare la variabile output. Non so
com'è strutturato il tuo db, ma forse ti va bene su form_current.

giorgio

unread,
Sep 10, 2004, 9:22:23 AM9/10/04
to
[cut]

> Allora ti avevo già risposto nel mio primo msg.
> Ti faccio un esempio da mettere su dopoaggiornamento della combo.
>
> static output as string
> output=output & me.casellacombinata & ", "
> msgbox output
>
> Devi anche trovare un evento per svuotare la variabile output. Non so
> com'è strutturato il tuo db, ma forse ti va bene su form_current.
> Namor
>
>
> --
> namor at inwind punto it
>
> questo articolo e` stato inviato via web dal servizio gratuito
> http://www.newsland.it/news segnala gli abusi ad ab...@newsland.it
>
Le tue spegazioni sono ottime ma il mio livello con il codice è molto basso.
Nel database la tabella ha diverse relazioni molti a uno ed è diviso in be
fe.
La machera si chiama mascera1 , su corrente sono visibili o non visibili
delle foto e ho aggiunto (non so se va bene per svuotare la variabile o se
per variabile intendi il msgbox )
Dim mascera1 As Form
Set mascera1= Nothing
la casella si chiama casellacombinata1 e dopo aggionamento ho inserito il
codice
static output as string
output=output & me.casellacombinata1 & ", "
msgbox output
il campo tabella è campo1.
Ora, quando chicco sul nenù a discesa compare un popup microsoft office
access con il testo da me scelto seguito da "," e chiccando su ok viene
salvato nel campo1. Problema : se ripeto l'operazione più volte nel popup
vedo la frase esatta che vorrei salvare ma nel campo1 tabella viene salvato
solo l'ultimo valore. Chiedo si deve sempre passare per il popup, funziona
nel modo descritto o io non ho capito un accidenti ?

La stringa che compare ripetendo i passsaggi è cio che desideravo.
Ringrazio per la disponibilità e pazienza.
ciao


Sergio MAZZA

unread,
Sep 9, 2004, 12:03:18 PM9/9/04
to
"giorgio" <georgeNO-S...@libero.it> ha scritto nel messaggio news:2qbc1tF...@uni-berlin.de...
> C'č un sistema per salvare in un campo una scelta multipla fatta dalla

> stessa casella combinata ?
> La casella combinata Sci ha un tipo origine riga una tabella tbsci e come
> origine controllo IDsci . La scelta viene salvata in un'altra tabella. Si
> dovrebbero salvare piů di due valori scelti dallo stesso elenco.

> Diversamente come si potrebbe procedere ? ("l'ideale sarebbe una casella di
> riepologo a discesa, e un campo testo")
>
> grazie
>

Se ho capito bene, vuoi salvare dei valori (uno o piů) scelti da una casella di riepilogo (da una combinata non č possibile)?ů

Se č cosě riadatta questo codice:
If Me!nomeCasella.ItemsSelected.Count > 0 Then
Dim a, datiScelti as string
For Each a In Me!nomeCasella.ItemsSelected
datiScelti = Me!nomeCasella.ItemData(a) & " " & datiScelti
Next
MsgBox datiScelti
Else
MsgBox "Nessun elemento selezionato."
End If

in sostanza si tratta di leggere tutti i valori della casella di riepilogo e vedere quali sono selezionati...

Ciao.

--
Sergio MAZZA


namor

unread,
Sep 11, 2004, 3:47:16 AM9/11/04
to
giorgio ha scritto:

[cut]

> > Allora ti avevo già risposto nel mio primo msg.
> > Ti faccio un esempio da mettere su dopoaggiornamento della combo.
> >
> > static output as string
> > output=output & me.casellacombinata & ", "
> > msgbox output
> >
> > Devi anche trovare un evento per svuotare la variabile output. Non so
> > com'è strutturato il tuo db, ma forse ti va bene su form_current.
> > Namor

> Le tue spegazioni sono ottime ma il mio livello con il codice è molto basso.


> Nel database la tabella ha diverse relazioni molti a uno ed è diviso in be
> fe.
> La machera si chiama mascera1 , su corrente sono visibili o non visibili
> delle foto e ho aggiunto (non so se va bene per svuotare la variabile o se
> per variabile intendi il msgbox )
> Dim mascera1 As Form
> Set mascera1= Nothing

Questo non serve a niente, toglilo.


> la casella si chiama casellacombinata1 e dopo aggionamento ho inserito il
> codice
> static output as string
> output=output & me.casellacombinata1 & ", "
> msgbox output
> il campo tabella è campo1.
> Ora, quando chicco sul nenù a discesa compare un popup microsoft office
> access con il testo da me scelto seguito da "," e chiccando su ok viene
> salvato nel campo1. Problema : se ripeto l'operazione più volte nel popup
> vedo la frase esatta che vorrei salvare ma nel campo1 tabella viene salvato
> solo l'ultimo valore. Chiedo si deve sempre passare per il popup, funziona
> nel modo descritto o io non ho capito un accidenti ?
> La stringa che compare ripetendo i passsaggi è cio che desideravo.
> Ringrazio per la disponibilità e pazienza.
> ciao

Il msgbox era solo per mostrarti come funziona, perchè non sapevo dove
volevi salvare i valori.
Se li salvi in un campo non ti serve neanche la variabile. Puoi sostituire
il tutto con un'unica istruzione:
me.campo1 = me.campo1 & iif(len(me.campo1)=0;"";", ") & _
me.casellacombinata1

giorgio

unread,
Sep 11, 2004, 5:31:58 AM9/11/04
to

"namor" <do...@spam.me> wrote in message
news:chuai6$1ks$1...@news.newsland.it...
I cambiamenti proposti sono:
me.campo1 = me.campo1 & iif(len(me.campo1)=0,"",", ") & _
me.casellacombinata1
Come si usa ?, nel senso che l'ho provata negli eventi della casella
combinata e o salva solo la scelta fatta o salva due copie della stessa
scelta senza comporre più la frase come era possibile con il msgbox output.
Serve un requery ?

ciao grazie


namor

unread,
Sep 11, 2004, 8:20:21 AM9/11/04
to
"giorgio" <georgeNO-S...@libero.it> ha scritto nel messaggio
news:2qfv04F...@uni-berlin.de...

> "namor" <do...@spam.me> wrote in message
> news:chuai6$1ks$1...@news.newsland.it...
> > giorgio ha scritto:

[cut]

> I cambiamenti proposti sono:


> me.campo1 = me.campo1 & iif(len(me.campo1)=0,"",", ") & _
> me.casellacombinata1
> Come si usa ?, nel senso che l'ho provata negli eventi della casella
> combinata e o salva solo la scelta fatta o salva due copie della stessa
> scelta senza comporre più la frase come era possibile con il msgbox
output.
> Serve un requery ?
> ciao grazie

Lo metti nell'afterupdate della casella combinata.
Devi aggiungere anche un pulsante per azzerare il campo: me.campo1=null
sennò non hai modo di svuotarlo per sostituirne il contenuto.
Namor


Giorgio

unread,
Sep 11, 2004, 9:48:04 AM9/11/04
to

> [cut]

> Lo metti nell'afterupdate della casella combinata.
> Devi aggiungere anche un pulsante per azzerare il campo: me.campo1=null
> sennò non hai modo di svuotarlo per sostituirne il contenuto.
> Namor
>

Salva un doppio valore ma non costruisce una "frase".
tabella2
id campo2
1 giallo
2 rosso
3 blu
tabella 1
id campo1 campo...
1
2
3
maschera1 su tabella 1
id campo1 campo.. pulsante1 casellacombinata1
pulsante1 on click me.campo1 = null
casellacombinata1 origine dati tabella2
AfterUpdate()
Me.campo1 = Me.campo1 & IIf(Len(Me.campo1 = 0, "", ", ") & _
Me.CasellaCombinata1
valori salvati
blu, blu
giallo, giallo
rosso, rosso
su click pulsante1 nessun valore ovvero campo nullo e su scelta blu, blu
etc
valori da salvare in tabella1
id campo1
1 blu
2 giallo, rosso, blu
3 rosso, blu
Desidero costruire una stringa senza doverla scivere poichè le
conbinazioni sono infinite e la scelta viene fatta su un centinaio di
record, non devo sostituire il contenuto ma aggiungere all'esistente
qualcosa d'altro.
grazie

ps in bocca al lupo per il tuo piede.


giorgio

unread,
Sep 12, 2004, 5:47:20 AM9/12/04
to
[cut]

Risolto.
Si può usare anche un'istruzione tipo:
Me.Campo1 = IIf(Not IsNull(Me.Campo1), Me.Campo1 & ", " & _
Me.CasellaCombinata1, Me.CasellaCombinata1)

grazie
ciao


0 new messages