Newsgroup: it.comp.appl.access
Titolo: valore inserito automaticamente in campo

ho una tabella autorizzazioni con un campo numerico somma_pagata
(precisione doppia, 2 decimali, formato standard) poi ho una tabella
categoria con campi categoria_tipo e somma_pagata, quest'ultimo sempre
precisione doppia, 2 decimali e formato standard)
Ora in una maschera ho un controllo campo  "categoria " come casella
combinata che piglia i valori dalla tabella categoria e in automatico con
la scelta di una categoria, mi aggiorna i valori di altri campi dato che
ho messo il seguente codice di controllo su "prima di aggiornare"
 
Private Sub CasellaCombinata50_BeforeUpdate(Cancel As Integer)
On Error Resume Next
Dim strFiltro As String
strFiltro = "categoria = '" & Me!Categoria & "'"
Me!autorizzazione_tipo = DLookup("autorizzazione_tipo", "categoria",
strFiltro)
Me!numero_varchi = DLookup("numero_varchi", "categoria", strFiltro)
Me!validita = DLookup("validita", "categoria", strFiltro)
Me!cartacea = DLookup("cartacea", "categoria", strFiltro)
[somma_pagata.autorizzazioni] = [somma_pagata.categoria]
end sub
i valori si aggiornano su tutti i campi testo, ma su quello numerico
"somma_pagata" non viene aggiornata anche se ho provato il seguente codice:
Me!somma_pagata= DLookup("somma_pagata", "categoria", strFiltro)
 
mi sapete aiutare?
grazie
 
-- 
 
 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it
 
 
 


La prima sintassi � sbagliata, la seconda sembra giusta.
Prova cosa ti d� se invece dell'assegnazione scrivi:
 
MsgBox DLookup("somma_pagata", "categoria", strFiltro)
 
In rispetto alla prestazione l'uso di tanti DLookUp non � consigliabile.
Se la casella combinata gi� si basa sulla tabella categoria una via
sarebbe di includere tutti i campi/valori che vuoi trasmettere come
colonne nella combo (larghezza 0).
Vedi 
http://www.donkarl.com/it?FAQ4.15
.
 
-- 
Ciao
Karl
*********
Access FAQ:  
http://www.donkarl.com/it
 
 
 

 Vedi 
http://www.donkarl.com/it?FAQ4.15
.
 
ci provo, sperando che riesco a capirci e a risolvere.


luigi onofrio ha scritto:

Provato! ma niente! anche se il codice non da errore, il risultato non me
lo dà!,
a quanto ho capito, con il codice da me usato, vba non accetta oltre i 3
dlookup, quindi mi serve un'altro escamotage per visualizzare tutti i
valori nelle caselle esistenti.
Ogni aiuto è ben accetto!
l.


 i 3 dlookup,
 
No, se puoi aspettare 1 minuto ;-) puoi anche usare 50 DLookUp.
Se hai fatto bene la prova l'hai anche visto nel MsgBox che in
principio il quarto o quinto DLookUp funziona.
 
Ci dev'essere un problema diverso che non si puo facilmente
individuare dalla tua descrizione. Siccome funziona con il MsgBox
forse è il tipo del controllo o un problema con l'assegnazione del valore
e/o con una proprietà del controllo.


Karl Donaubauer ha scritto:

infatti meditando bene sul tuo codice, ho trovato i conflitti e adesso
pare che funge con 2 lookup e 3 righe del tuo codice (per tre controlli
campi), Solo che ora mi si presenta un altro problema, fatta una
selezione, se sbaglio a scegliere nella casella combinata e rivado a
scegliere, non mi si aggiurna la variazione a meno che non passi al record
successivo e poi ritorni indietro per rieffettuare la modifica.
