Condividi tramite

Copiare risultati tra due campi

Anonimo
2023-12-12T17:44:31+00:00

Salve

vorrei sapere come fare (con un codice VBA o altro) per copiare in automatico il contenuto di un campo in un altro campo nella stessa maschera oppure in una maschera diversa dello stesso DB.

Il tutto nel caso che il nome o il numero da copiare sia il risultato di un espressione o di un calcolo.

In effetti io vorrei copiare esclusivamente il valore ottenuto.

Grazie

Microsoft 365 e Office | Access | Per la casa | Windows

Domanda bloccata. Questa domanda è stata eseguita dalla community del supporto tecnico Microsoft. È possibile votare se è utile, ma non è possibile aggiungere commenti o risposte o seguire la domanda.

0 commenti Nessun commento

Risposta accettata dall'autore della domanda

domenico laurenza 9,900 Punti di reputazione Moderatore volontario
2023-12-16T18:31:53+00:00

Potresti impostare nell'evento dopo aggiornamento del campo CodiceFisc l'istruzione:

forms.Mas_Fascicolo.Testo243 = me.CodFisc

Mimmo

La risposta è stata utile?

1 persona ha trovato utile questa risposta.
0 commenti Nessun commento

5 risposte aggiuntive

Ordina per: Più utili
  1. domenico laurenza 9,900 Punti di reputazione Moderatore volontario
    2023-12-13T19:15:46+00:00

    Ciao,

    Non essendo associato ad un campo di tabella, devi assegnarlo via codice su aggiornamento della form.

    La risposta è stata utile?

    0 commenti Nessun commento
  2. Anonimo
    2023-12-13T18:49:39+00:00

    Caro Paolo

    grazie per la tua risposta. ho fatto molte prove ma... non sono riuscito a ottenere il risultato voluto.

    Ti faccio una sintesi sperando di spiegarmi meglio:

    Ho una maschera (denominata Mas_Fascicolo) con dati anagrafici e vi ho inserito una casella di testo (denominata testo243) in cui vorrei comparisse il relativo codice fiscale.

    Il codice fiscale viene ricavato da un'altra maschera (denominata Maschera1) che io attivo con un tasto di comando ed ed appare in una casella (denominata CodiceFisc) e la cui origine di controllo è "=CodFisc([Cognome];[NomeInput];[Sesso];[Nascita];[Comune];[Prov])". Chiaramente a me non interessa l'origine ma il valore ottenuto.

    Tanto premesso vorrei che il valore ottenuto (nella casella CodiceFisc) fosse copiato automaticamente nella casella della "Mas_fascicolo" e denominata "testo 243" e, cosa ancora più importante, vi rimanesse memorizzata...

    Pertanto, secondo quanto ho capito dai tuoi consigli (Me.NomeCampoDestinazione = Me.NomeCampoEspressione) ho creato il seguente codice nella casella Codice Fisc, dopo aggiornamento:

    Private Sub CodiceFisc_AfterUpdate()

    Me.Testo243 = Me.CodiceFisc
    End Sub

    ho fatto vari tentetivi purtroppo infruttuosi.

    Mi funziona, invece se in origine controllo di Testo243 inserisco l'espressione "=[Maschere]![Maschera1]![CodiceFisc]", dopo aver aggiornato la maschera stessa.

    Purtroppo non so come evitare il fatto che dopo aver chiuso la maschera di anagrafica il codice fiscale ...scompare e non viene memorizzato permanentemente.

    grazie per l'attenzione

    La risposta è stata utile?

    0 commenti Nessun commento
  3. domenico laurenza 9,900 Punti di reputazione Moderatore volontario
    2023-12-13T18:45:16+00:00

    Ciao Aurelio,

    se i due controlli sono su diverse maschere, entrambe aperte, dovresti utilizzare una sintassi del tipo:

    me.Destinazione = forms.frmDue.NomeControlloOrigine

    se sei sulla maschera frmUno e Destinazione è il controllo ricevente

    se invece sei sulla frmDue avrai

    forms.frmUno.Destinazione = me.NomeControlloOrigine

    Ciao Mimmo

    La risposta è stata utile?

    0 commenti Nessun commento
  4. Paolo Lazzaroni 390 Punti di reputazione
    2023-12-12T23:18:42+00:00

    Ciao! Per copiare il contenuto di un campo in un altro campo nella stessa maschera o in una maschera diversa dello stesso database, puoi utilizzare il seguente codice VBA:

    Me.NomeCampoDestinazione = Me.NomeCampoOrigine
    

    Dove “NomeCampoDestinazione” è il nome del campo in cui vuoi copiare il valore e “NomeCampoOrigine” è il nome del campo da cui vuoi copiare il valore.

    Se il valore da copiare è il risultato di un’espressione o di un calcolo, puoi utilizzare il seguente codice VBA:

    Me.NomeCampoDestinazione = Me.NomeCampoEspressione
    

    Dove “NomeCampoEspressione” è il nome del campo che contiene l’espressione o il calcolo che restituisce il valore da copiare.

    Assicurati di inserire il codice VBA nell’evento appropriato, ad esempio nell’evento “Dopo aver aggiornato” del campo di origine o in un pulsante di comando che attiva la copia.

    Spero che questo ti sia utile! Fammi sapere se hai altre domande.

    La risposta è stata utile?

    0 commenti Nessun commento