Newsgroup: it.comp.appl.access
Titolo: Prelevare valore da Subform per svolgere calcolo in Form

Ciao a tutti.Ho questa necessita.In una Form chiamata "Form1" dovrei
svolgere un calcolo.Uno dei due valori pero' andrebbe prelevato dalla
Subform (che e' all'interno della Form1) Subform1.Il campo della
Subform e' "totale".ho provato con il generatore di espressione ha
creare un riferimento alla subform ma mi da errore.
Come posso fare????
Grazie Dino


Devi usare il nome del controllo nella maschera principale:
Me!Subform1.Form!Totale
o se il nome del controllo � diverso:
Me!NomeDelControlloCheContieneIlSubform1.Form!Totale
Vedi anche:
 Riferimento ad una sottomaschera/sottoreport
 
www.donkarl.com/it?FAQ4.2
-- 
HTH
Karl
*********
Access FAQ: 
www.donkarl.com/it
 

 Me!NomeDelControlloCheContieneIlSubform1.Form!Totale
o
=NomeDelControlloCheContieneIlSubform1.Form!Totale


 - Mostra testo citato -
Ok.Karlh.Mi ero fasciato la testa prima di rompermela.Bastava inserire
=Subform1.Form!Totale .
Grazie mille.
Pero' per un problema che si risolve subito ne capita un altro.
Nella subform in esame ho dei campi che al verificare di una
condizione scompaiono.
Nell'istruzione If ho usato Me.miocampo.visible=False.
Il problema pero' lo trovo quando passo da un record all'altro.
Esempio  nel record 1 si devono vedere il campo 1 e il campo2 e nel
record2 solo il campo 1.Appena carico la Subform nel record 1 vedo i
due campi.Se passo al record2 vedo solo il campo1.Se pero' torno
indiwreo nel record1 vedo solo il campo1.Come se non tenesse
memorizzato la condizone dell'istruzione IF.
Grazie ancora e scusa se mi riallaccio al post
Dino

 memorizzato la condizone dell'istruzione IF.
Mostra tutto il codice rilevante e dici quale evento usi.



Grazie Karlh.Di seguito ti riporto tutto il codice che ho inserito
nell'evento "current" e "After Update"
If Me.Unita__di_misura = "N°" Then
Me.Profondita__Mt.Visible = False
Me.Lunghezza_Mt.Visible = False
Me.Altezza_Mt.Visible = False
Me.Area.Visible = False
Me.Peso_tot.Visible = False
Me.Mt.Visible = False
Me.Quantita_.Visible = False
ElseIf Me.Unita__di_misura = "Kg" Then
Me.Profondita__Mt.Visible = False
Me.Lunghezza_Mt.Visible = False
Me.Altezza_Mt.Visible = False
Me.Area.Visible = False
Me.Peso_tot.Visible = False
Me.Mt.Visible = False
Me.Quantita_.Visible = False
ElseIf Me.Unita__di_misura = "M" Then
Me.Profondita__Mt.Visible = False
Me.Lunghezza_Mt.Visible = False
Me.Altezza_Mt.Visible = False
Me.Area.Visible = False
Me.Peso_tot.Visible = False
Me.Peso.Visible = False
Me.Quantita_.Visible = False
ElseIf Me.Unita__di_misura = "Kg/MT" Then
Me.Altezza_Mt.Visible = False
Me.Profondita__Mt.Visible = False
Me.Lunghezza_Mt.Visible = False
Me.Area.Visible = False
Me.Quantita_.Visible = False
ElseIf Me.Unita__di_misura = "Kg/MT2" Then
Me.Altezza_Mt.Visible = False
Me.Mt.Visible = False
Me.Quantita_.Visible = False
ElseIf Me.Unita__di_misura = "M2" Then
Me.Mt.Visible = False
Me.Quantita_.Visible = False
End If
Grazie mille



Devi fare visibile i controlli di nuovo.
Inoltre ti serve un Select Case invece di If ElseIf. Prova cos�:
Me!Profondita__Mt.Visible = True
Me!Lunghezza_Mt.Visible = True
Me!Altezza_Mt.Visible = True
Me!Area.Visible = True
Me!Peso_tot.Visible = True
Me!Mt.Visible = True
Me!Quantita_.Visible = True
Select Case Me!Unita__di_misura
    Case "N�", "Kg", "M"
        Me!Profondita__Mt.Visible = False
        Me!Lunghezza_Mt.Visible = False
        Me!Altezza_Mt.Visible = False
        Me!Area.Visible = False
        Me!Peso_tot.Visible = False
        Me!Mt.Visible = False
        Me!Quantita_.Visible = False
    Case "Kg/MT"
        Me!Altezza_Mt.Visible = False
        Me!Profondita__Mt.Visible = False
        Me!Lunghezza_Mt.Visible = False
        Me!Area.Visible = False
        Me!Quantita_.Visible = False
    Case "Kg/MT2"
        Me!Altezza_Mt.Visible = False
        Me!Mt.Visible = False
        Me!Quantita_.Visible = False
    Case "M2"
        Me!Mt.Visible = False
        Me!Quantita_.Visible = False
End Select


 - Mostra testo citato -
Ciao Karkh grazie per la risp.
Nell'evento "Current" mi da errore.Quando lancio la maschera mi da
elemento no trovato con tutti i campi
Dino

 elemento no trovato con tutti i campi
Strano, se hai solo sostituito il tuo vecchio codice con il nuovo.
L'unica cosa che ho cambiato nella sintassi (fuori del Select Case)
� la sostituzione del punto con il punto esclamativo per il riferimento
ai controlli, perch� � pi� sicuro del punto (
www.donkarl.com/it?FAQ6.3
).
Puoi provare se aiuti di usare il punto come nel tuo vecchio codice.


 - Mostra testo citato -
Ciao Karlh grazie per la risposta (ti rispondo adesso perche' non ho
potuto prima)
Domani mattina provo e poi ti faccio sapere.Comunque consigli sempre
il Case???
Mi confermi che l'istruzione If non va bene????
Grazie Dino

 - Mostra testo citato -
Ciao Karlh.Allora ho sostituito il punto esclamativo con il punto e no
mi ha dato piu' l'errore che mi dava.Me ne sta dando un altro.Quando
apro la maschera o cerco di inserire un nuovo record o di passare da
un record all'altro mi da la seguente dicitura.
"L'espressione su corrente immessa come impostazione della proprieta'
di evento ha provocato il seguente errore:Riferimento non valido o non
qualificato.
Mi sorge un dubbio (forse non centra niente)io sto' lavorando in una
Subform.Il "Case" devo inserirlo anche nella Form???
Grazie ancora
Dino

 - Mostra testo citato -
Ciao Karlh sono io.Va tutto bene.Era solo un errore di sintassi.
Dino