PDA

View Full Version : [MS ACCESS - VB] problema selezione da casella combinata


Krammer
08-10-2015, 13:18
Salve,
premesso che sono secoli che non prendo in mano access e non so nemmeno se questa cosa si possa fare senza smanettare con codice VB.

il problema è quasi banale: ho una tabella clienti contenente un campo intero ID_categoria che rimanda all'ID di una seconda tabella (categorie clienti appunto) la quale presenta, oltre al suo ID, solo un campo testuale (descrizione_categoria).

in una maschera vorrei poter modificare, per un cliente, la relativa Categoria di cui fa parte (ossia modificare il suo ID_categoria): il problema è che vorrei farlo attraverso una casella combinata che non mostri l'ID_categoria (valore numerico) bensì la relativa descrizione_categoria salvata sull'altra tabella.

usando le funzioni standard (access 2007) riesco a far vedere nella casella combinata le descrizioni delle categorie, ma quando vado a selezionarne una non gli passa a ID_categoria la relativa chiave numerica (ID della seconda tabella), ma il campo testuale descrizione_categoria provocando un errore.

è possibile rimandare l'ID numerico associato, invece che la descrizione testuale visualizzata sulla casella combinata?
se non si può fare a livello di tool nativi di configurazione di Access, potete consigliarmi qualche trick per risolvere in vb?

!fazz
08-10-2015, 16:14
Salve,
premesso che sono secoli che non prendo in mano access e non so nemmeno se questa cosa si possa fare senza smanettare con codice VB.

il problema è quasi banale: ho una tabella clienti contenente un campo intero ID_categoria che rimanda all'ID di una seconda tabella (categorie clienti appunto) la quale presenta, oltre al suo ID, solo un campo testuale (descrizione_categoria).

in una maschera vorrei poter modificare, per un cliente, la relativa Categoria di cui fa parte (ossia modificare il suo ID_categoria): il problema è che vorrei farlo attraverso una casella combinata che non mostri l'ID_categoria (valore numerico) bensì la relativa descrizione_categoria salvata sull'altra tabella.

usando le funzioni standard (access 2007) riesco a far vedere nella casella combinata le descrizioni delle categorie, ma quando vado a selezionarne una non gli passa a ID_categoria la relativa chiave numerica (ID della seconda tabella), ma il campo testuale descrizione_categoria provocando un errore.

è possibile rimandare l'ID numerico associato, invece che la descrizione testuale visualizzata sulla casella combinata?
se non si può fare a livello di tool nativi di configurazione di Access, potete consigliarmi qualche trick per risolvere in vb?


vado a memoria (anche io sono anni che non uso access avendolo comunque usato pesantemente in passato)

comunque è sufficiente che nelle proprietà della tua combobox associ come source una query che visualizza id + descrizione,impostando correttamente il row source type e il bound coloum alla colonna dell'id

basta poi impostare nella tab format di vedere le 2 colonne e impostare la larghezza della prima a zero

Krammer
08-10-2015, 17:43
vado a memoria (anche io sono anni che non uso access avendolo comunque usato pesantemente in passato)

comunque è sufficiente che nelle proprietà della tua combobox associ come source una query che visualizza id + descrizione,impostando correttamente il row source type e il bound coloum alla colonna dell'id

basta poi impostare nella tab format di vedere le 2 colonne e impostare la larghezza della prima a zero

ottimo funziona, grazie mille :)
non sapevo si potesse impostare una combobox su più colonne!