If

di il
8 risposte

If

Ciao a tutti..sto cercando di fare un controllo su un campo "Uscite" che deve essere uguale a un campo "Pagato" presente in un altra maschera.
Dopo aver inserito l'importo in "Uscite" vorrei che se fosse diverso (x mio errore di digitazione) dal campo presente nella maschera "Scadenze fornitori aperte x banca" "Pagato", me lo dicesse con un messaggio di ERRORE
Dove sbaglio:
Private Sub Uscite_Click()
If ([Uscite] <> Maschere![Scadenze fornitori aperte x banca]![Pagato]) Then
MsgBox ("importo errato")
End If
End Sub
Grazie

8 Risposte

  • Re: If

    Secondo me hai dimenticato Else fra:
    MsgBox ("importo errato")
    End If
  • Re: If

    Nel VBA i riferimenti sono in Inglese... e [Maschere] come vedi non lo è, questo termine si usa nel Generatore di Espressioni, ma solo per il fatto che poi viene IMPLICITAMENTE interpretato.
    
    Private Sub Uscite_Click()
       If (Me![Uscite].Value <> Forms![Scadenze fornitori aperte x banca]![Pagato].Value) Then
          MsgBox ("importo errato")
       End If
    End Sub
    2 Note...!
    1° Fai sempre riferimento alla proprietà in modo ESPLICITO, nel tuo caso è VALUE
    2° Indenta il codice altrimenti non si comprende...(in questo caso sono 2 righe... ma è questione di pulizia)
  • Re: If

    Tutto vero e completo quello che ha scritto @Alex...ma quando si va capo dopo Then, non ci vuole Else? Forse è facoltativo nel caso non ci siano istruzioni di prosieguo Else?

    Per simo27: Ma anzichè digitare una valore che sta lì a due passi dal tuo colpo d'occhio e poi verificare se è corretto o no, non fai prima ad assegnarlo direttamente, così sei sicura che il valore è quello desiderato?
  • Re: If

    OsvaldoLaviosa ha scritto:


    Tutto vero e completo quello che ha scritto @Alex...ma quando si va capo dopo Then, non ci vuole Else?
    Quello che è obbligatorio quando si va a capo dopo [Then] è la chiusura con [End If]. [Else] è facoltativo e da indicare, eventualmente, prima di [End If]
  • Re: If

    NON FUNZIONA
    Mi dice che è impossibile trovare l'oggetto.
    Ho inserito il comando sulla casella di controllo "Uscite"

    Private Sub Uscite_Exit(Cancel As Integer)
    If (Me![Uscite].Value <> Forms![Scadenze fornitori aperte x banca]![Pagato].Value) Then
    MsgBox ("importo errato")
    End If
    End Sub

    Ma la maschera "Scadenze fornitori aperte x banca" dv essere aperta??
  • Re: If

    Ma... secondo te...? Se è chiusa come possiamo fare riferimento a quell'Oggetto...???
    Di solito non si punta a Maschere quando non si ha una chiara gestione... sicura che il Dato non sia in una Tabella...? In questo cado usa un DlookUp e recuperalo da li...
  • Re: If

    Scusami Alex ma sono una piccola autodidatta....
    Per questo ho chiesto aiuto ...
    Forse per voi sono cose elementari ..per me no...
    Sì il dato ce l'ho in una tabella che si chiama Scadenze fornitori
  • Re: If

    Gli aiuti sono di strutturazione, le nozioni BASE invece sono da leggere nella GUIDA in autonomia.

    Quindi apri l'Help, leggi come si usa DLOOKUP e prova a recuperare il valore dalla Tabella.

    Se hai difficoltà esponi che prove hai fatto, che errori hai rilevato e vedremo...
Devi accedere o registrarti per scrivere nel forum
8 risposte