RESTITUISCI NOME DA PARZIALE

di il
14 risposte

RESTITUISCI NOME DA PARZIALE

Buongiorno a tutti,

nel mio D.B. ho una maschera che si chiama FORM LINK all'interno della quale vi è un controllo che si chiama ARTICOLO TESSUTO.

ARTICOLO TESSUTO è costituito da un codice del tipo CT 2976

CT corrisponde al nome del cliente COLOMBO TESSITURA

2976 corrisponde al codice del tessuto

Ho creato nella FORM LINK una casella di testo che ho chiamato CLIENTE.

Vorrei che ogni volta che visualizzo il record dove vi è ARTICOLO TESSUTO (CT 2976), in automatico si compila la casella di testo con COLOMBO

TESSITURA.

Come posso fare, sperando di essere stato chiaro ?

Grazie
Gianni

14 Risposte

  • Re: RESTITUISCI NOME DA PARZIALE

    Non hai pensato a separare su 2 campi (CT da una parte, 2976 dall'altra)?
    Se esponi tutto in maniera più chiara e ampia, veniamo a capo meglio della situazione, ossia:
    - nomi propri di tutte le tabelle che entrano in gioco
    - nomi propri di tutti i loro campi, con indicazione della chiave primaria
    - le relazioni
  • Re: RESTITUISCI NOME DA PARZIALE

    Ciao Osvaldo,

    preferirei non dividere il campo perchè proviene da una tabella linkata con un file excel esterno.

    In pratica vorrei che quando si carica il record in presenza del campo ARTICOLO TESSUTO (CT 2976) la casella di testo CLIENTE capisca che CT è uguale a COLOMBO TESSITURA e si compila da solo.

    Se ARTICOLO TESSUTO inizia con CT restituisci nella casella di testo COLOMBO TESSITURA.

    Si riesce ad inserire un codice in VB nella casella di testo CLIENTE che restituisca il valore COLOMBO TESSITURA ?

    Grazie
    Gianni
  • Re: RESTITUISCI NOME DA PARZIALE

    Gianni66 ha scritto:


    ARTICOLO TESSUTO è costituito da un codice del tipo CT 2976
    Per me, quando fai un esempio di questo genere, penso che hai altri valori ad esempio:
    VV 8899
    AL 665432
    FR 12345678
    Per questi valori hai previsto qualcosaltro?
    Raccontato solo così non capisco il senso.

    Gianni66 ha scritto:


    preferirei non dividere il campo perchè proviene da una tabella linkata con un file excel esterno.
    Sei consapevole che Excel e Access hanno 2 logiche completamente diverse? Se Excel ignora la "normalizzazione", Access la tiene in severa considerazione.
  • Re: RESTITUISCI NOME DA PARZIALE

    Gianni66 ha scritto:


    Ciao Osvaldo,

    Se ARTICOLO TESSUTO inizia con CT restituisci nella casella di testo COLOMBO TESSITURA.

    Si riesce ad inserire un codice in VB nella casella di testo CLIENTE che restituisca il valore COLOMBO TESSITURA ?

    Grazie
    Gianni
    In access con vba c'è la funzione Mid("CT1234",1,2) che dovrebbe fare al caso tuo, poi come abbini la radice del codice alla ragione sociale lo sai ovviamente tu.
  • Re: RESTITUISCI NOME DA PARZIALE

    Esatto Osvaldo.

    VV potrebbe restituire nella casella di testo CLIENTE - VITTORIO VENEGONI
    AL potrebbe restituire nella casella di testo CLIENTE - ADOLFO LOMBARDI
    FR potrebbe restituire nella casella di testo CLIENTE - FERRETTI ROBERTO

    e così via ....
  • Re: RESTITUISCI NOME DA PARZIALE

    Per me devi avere una tabella Clienti con il campo SiglaCliente. Questo non lo hai detto, speravo tu lo chiarissi quando ho chiesto una descrizione ampia e chiara.
    A rigore di logica, sarebbe cosa buona e giusta separare le lettere dalle cifre...e poi trovare un modo per relazionare. Affidarsi alle sole espressioni di estrazione testo (Mid o Left...) non so quanto può reggere...se hai
    VITTORIO VENEGONI = VV
    VALERIO VALLANZASCA = ?? come lo vai a gestire?
    Le sigle "letterali" sono "universali/univoche" o le inventi tu?

    P.S.: Rileggendo tutto, forse l'idea Mid (proposta da MaxMag64) può essere una via. In ogni caso con una query devi "separare" la parte a sinistra dello spazio che sta in mezzo, dalla parte a destra dello spazio.

    Cerca di chiarire tutto bello bello...perché io non riesco a seguirti come pensi tu...
  • Re: RESTITUISCI NOME DA PARZIALE

    VV = VITTORIO VENEGONI
    VV = VALERIO VALLANZASCA
    Sono ingestibili perchè non univoci! Hai ragione Osvaldo non ci avevo pensato.
    Però per il momento è tutto univoco.
    Lo so che in una visione futura è poco serio però ci provo. Ho fretta !
    Faccio un passaggio sull'idea Mid.
    Per il momento grazie.
  • Re: RESTITUISCI NOME DA PARZIALE

    Perdonami Osvaldo ma non trovo " idea Mid ".
    Ho digitato nel cerca ma non esce nulla!
    Hai il link ?
  • Re: RESTITUISCI NOME DA PARZIALE

    Funzione Mid
    https://support.office.com/it-it/article/funzione-mid-427e6895-822c-44ee-b34a-564a28f2532c
  • Re: RESTITUISCI NOME DA PARZIALE

    Ciao Osvaldo,

    potrei risolvere un diversamente, ma temo che andiamo fuori tema rispetto a quanto in oggetto!
    Volendo fare un report che deriva da una query, quando apro il report, come posso fare apparire una finestra di dialogo che mi chieda di inserire le prime due lettere del campo ARTICOLO TESSUTO e mi restituisca tutti i valori?
    es. digito nella finestra di dialogo CT e mi escono tutti i record che contengono CT 2976, CT 2478, CT 3569 e così via.....
    Che istruzione devo mettere nel criterio della query in corrispondenza del campo ARTICOLO TESSUTO ?
  • Re: RESTITUISCI NOME DA PARZIALE

    Operatore LIKE che filtra tutti i valori che iniziano per 'CT*'
  • Re: RESTITUISCI NOME DA PARZIALE

    Ciao Max,

    ti ringrazio per la risposta, ma la mia richiesta è un pò più complessa !

    Quando apro il report deve apparire in popup una finestra di dialogo che mi permetta di inserire CT piuttosto che VV, AL o FR e così via ....
  • Re: RESTITUISCI NOME DA PARZIALE

    Gianni66, per fare le cose che stai chiedendo, occorre una descrizione più ampia e seriamente contestualizzata. Il tuo foglio Excel di partenza non può farcela a stare al passo con le potenzialità di Access.

    Quelle sigle VV, CT e co. sono precarissime, ti faccio i seguenti esempi sibillini:
    Vittorio Venegoni
    Vittorino Vengoni
    Vittoria Vengo
    Vito Venni
    Vitantonio Venigoni
    Mi dici seriamente come vorresti trattare questi dati tutti diversi? E non parliamo degli omonimi veri e propri. Non a caso esiste il CodiceFiscale (ben più lungo=16 caratteri), solo lui può distinguere seriamente e univocamente Tizio da Caio.
  • Re: RESTITUISCI NOME DA PARZIALE

    Ciao Osvaldo,

    quando digito nella finestra di dialogo " VV " che apre il report, va benissimo che appaiono indistintamente i record di:

    Vittorio Venegoni
    Vittorino Vengoni
    Vittoria Vengo
    Vito Venni
    Vitantonio Venigoni

    se invece digito ad esempio CC appariranno record del tipo:

    Carlo Cattaneo
    Carlino Cattaneo
    Carolina Casiraghi
    Carletto Cannaro

    In pratica mi serve una sorta di funzione LIKE che mi consenta di inserire tramite una finestra di dialogo le sole due iniziali e mi restituisca i relativi record che iniziano con quelle due iniziali che ho digitato nella finestra di dialogo.

    Purtroppo Osvaldo non riesco ad essere più chiaro ed efficace di così, mi spiace!

    Gianni
Devi accedere o registrarti per scrivere nel forum
14 risposte