Cerca valori textbox in tabella

di il
6 risposte

Cerca valori textbox in tabella

Buonasera a tutti,

anzitutto vi ringrazio per leggere questo mio argomento. Ci tengo a scusarmi da subito con i più esperti, in quanto, è il mio primo post e sono alle prime armi con MS Access.

Il DB
Sto creando un DB per la gestione di progetti nel settore dell'ingegneria civile. Ho creato diverse tabelle per immagazzinare (spero nel modo migliore) i dati. Il problema specifico riguarda i seguenti elementi:
- Tabella: "T_progetti_AAP"
- Tabella: "T_note_progetti"
- Form: "F_note_progetti"

In sostanza: nella Form "F_note_progetti" ho creato una Text Box che mi permette di ricercare il progetto desiderato nella tabella "T_progetti_AAP", il tutto viene eseguito tramite un codice. Fin qui nessun problema, infatti, il codice individua il oppure i record che rispecchiano la condizione di ricerca e va a riportare i campi corrispondenti (da me scelti nel codice) in alcune Text Box sotto. Il problema, è che nella stessa Form ho altre Text Box che non devono essere coinvolte nella ricerca, poiché i campi non sono presenti nella tabella "T_progetti_AAP". Attualmente con il codice allegato gli anzidetti campi all'avvio del codice riportano la dicitura #Name? (vedi immagine allegata).

********************************************************************

Private Sub Command122_Click()
Dim z As String

If Text119 <> "" Then
'ricerca per numero progetto
z = "SELECT Numero_progetto,Genere,Data_creazione,Nome,Descrizione From T_progetti_AAP Where Numero_progetto Like '*" & Text119.Value & "*'Order by Numero_progetto;"
Else
'ricerca per nome
z = "SELECT Numero_progetto,Genere,Data_creazione,Nome,Descrizione From T_progetti_AAP Where Nome Like '*" & Text127.Value & "*'Order by Numero_progetto;"
End If

[Form_F_note_progetti].RecordSource = z


Text119 = ""
Text127 = ""

End Sub

********************************************************************

In pratica, vorrei capire come modificare il codice affinché i campi sotto non vengano coinvolti.
Vi ringrazio sin d'ora per un vostro gentile riscontro.

Saluti Galgia
Allegati:
27204_36147df04998a7599d6c1315ba7be51d.png
27204_36147df04998a7599d6c1315ba7be51d.png

27204_b33c3705467ed346d61fa6270e61578e.png
27204_b33c3705467ed346d61fa6270e61578e.png

6 Risposte

  • Re: Cerca valori textbox in tabella

    Piuttosto che variare il RecordSource (in funzione della ricerca) è preferibile impostare un criterio per filtrare i dati che alimentano la maschera; inoltre per quanto riguarda le Note, l'errore è dovuto al non corretto riferimento nell'Origine controllo di ciascun controllo nella parte inferiore della form.
  • Re: Cerca valori textbox in tabella

    Ciao Willy,

    grazie per la risposta. Ho capito cosa intendi, sapresti gentilmente darmi una dritta su come filtrare i dati che alimentano la maschera?

    Ti ringrazio.
    Saluti Galgia
  • Re: Cerca valori textbox in tabella

    Devi usare la proprietà FILTER di Maschera e poi FILTERON=True per attivarla.



    Nel tuo caso se hai 2 o più criteri devi concatenarli con operatore Booleano AND/OR, puoi ottimizzare il codice seguendo questo 3D:
    forum.masterdrive.it/access-79/codice-vba-per-filtrare-maschera-n-combo-box-95223/
  • Re: Cerca valori textbox in tabella

    Grazie Alex,
    mi sono preso 2 giorni per fare un po' di prove, ma purtroppo non ne arrivo a capo.
    Non mi piace la richiesta che sto per fare ma qui non avanzo più: potresti essere più elementare nella spiegazione?

    Il mio problema attuale è che quando il codice arriva al comando "RecordSource", va a cercare tutti i campi sulla form, quindi anche quelli sotto che non trova chiaramente nella tabella "T_progetti_AAP". In sostanza, sarebbe possibile impostare che "RecordSource" cerchi solo i campi sopra?

    Scusatemi... grazie.
    Galgia
  • Re: Cerca valori textbox in tabella

    Galgia ha scritto:


    Grazie Alex,
    mi sono preso 2 giorni per fare un po' di prove, ma purtroppo non ne arrivo a capo.
    Non mi piace la richiesta che sto per fare ma qui non avanzo più: potresti essere più elementare nella spiegazione?
    Più di avere CODICE pronto è complesso pensare in una semplificazione...

    Galgia ha scritto:


    Il mio problema attuale è che quando il codice arriva al comando "RecordSource", va a cercare tutti i campi sulla form, quindi anche quelli sotto che non trova chiaramente nella tabella "T_progetti_AAP". In sostanza, sarebbe possibile impostare che "RecordSource" cerchi solo i campi sopra?

    Scusatemi... grazie.
    Galgia
    Non so di cosa parli... usare il RecordSource è proprio quello che non devi fare... quindi qualche cosa non quadra nella comprensione...
  • Re: Cerca valori textbox in tabella

    Galgia,
    aggiungo che traspare dalla tua descrizione una incongruenza strutturale fra i dati presenti nella maschera. Non si comprende quale sia il legame fra le due porzioni della maschera stessa. Vi deve essere una relazione fra i dati (e quindi fra le tabelle interessate). Dal punto di vista pratico, ad esempio, con una maschera e sotto-maschera avresti immediatamente risolto il problema (in quanto variando la prima si aggiorna automaticamente la seconda correlata).
Devi accedere o registrarti per scrivere nel forum
6 risposte