Aiuto su access e comboBox

di il
4 risposte

Aiuto su access e comboBox

Salve a tutti e complimenti per il forum ed il sito...

ho un piccolo problema con access, mi spiego:
ho una maschera dove inserisco i dati relativi ad un capo di bestiame. ad ogni capo di bestiame dovrei assegnare dei risultati di esami di laboratorio a secondo dell'organo prelevato.
tutti i risultati di tutte le analisi (visto che sono per lo più simili)sono dentro la stessa tabella.
ho swicchato da questa tabella un numero di query tale da soddisfare tutti gli organi prelevati.

Problema: da una casella combinata, dove ho la lista degli organi da prelevare, mi servirebbe aprire, per ogni valore selezionato dalla casella, la query corrispondente nella stessa sottomaschera non associata.

sarà na cretinata, ma non son un esperto....dunque mi affido a gente esperta come voi.

4 Risposte

  • Re: Aiuto su access e comboBox

    Se ho capito bene, in base alla scelta della casella combinata vuoi visualizzare i relativi dati nella sottomaschera?

    Se è così è sufficiente che nell'evento "su aggiornamento (after update)" della casella combinata assegni l'origine dati alla sottomaschera.
    Il codice potrebbe essere qualcosa del genere.

    Dim MiaSQL as String

    'In base al item scelto nella casella combinata (me.casellacombinata)</font id=green>
    Select case me.casellacombinata
    case 1:
    <font color=green>' Codice SQL dell'origine dati risultati di tipo 1</font id=green>
    MiaSQL = "SELECT * FROM ... WHERE ... tipo=1 ...";
    case 2:
    <font color=green>' Codice SQL dell'origine dati risultati di tipo 2</font id=green>
    MiaSQL = "SELECT * FROM ... WHERE ... tipo=2 ...";

    ...

    End Select

    Spero che ho capito quello che intendevi e spero che l'esempio in grandissime linee sia chiaro.$

    Buon lavoro


    Stefano
  • Re: Aiuto su access e comboBox

    Si, così potrebbe essere una soluzione, ma io le query già le ho e sono già inserite in maschere.
    Il problema è che vorrei sapere come fare per assegnare ad ogni valore della casella combinata, una maschera da aprire nella stessa sottomaschera.

    esempio:
    ho una tabella "esami" che contiene "IDorgano, IDSoggetto, Esame anatomo-patologico, parassita, q.tàxcm, brucella, emocormo-completo ecc."
    una tabella "allevamento" dove prelevo tutti i dati dell'allevamento e del soggetto: "IDsoggetto, eta, sesso, ecc."
    una tabella con tutti gli organi e campioni da prelevare:
    "IDOrgano, ecc"
    dalla casella combinata scelgo il tipo di organo da prelevare:
    selezione 1="cuore" apri nella sotto-maschera "ciccio" la maschera "cuore"
    selezione 2="polmone" apri nella sotto-maschera "ciccio" la maschera "polmone"
    ed ovviamente assegnare il valora scelto dalla casella combinata, nella prima colonna della tabella che contiene tutti i risultati.

    magari non sono stato chiaro, ma meglio di così....

    dimenticavo che dalla tabella "esami" ho estratto tante query (es. per il cuore basta semplicemente: anatomo-patologico, e parassita per il rene invece anatomo-patologico, brucella e leptospirosi e così via per le altre query)invece i valori sono "quanti sono i campioni da prelevare ed ho costruito le relative maschere (visto che anche la sistemazione grafica ha la sua importanza).



    Modificato da: santpir il 11/09/2006 alle 19:49:59
  • Re: Aiuto su access e comboBox

    Forse è sufficiente, sempre su "after update" della casella combinata assegnare alla proprietà datasource della sottomaschera la maschera desiderata, se necessario credo che si possano assegnare i fase di runtime anche altri valori come i campi master e secondari ecc. ecc. ...

    Purtroppo non posso controllare di preciso l'istruzione necessaria perché dove sono adesso non ho access sotto mano

    Buona fortuna

    Stefano
  • Re: Aiuto su access e comboBox

    Risolto
    ecco come:
    ho creato una sottomaschera non associata ed assegnato il nome "Organo"
    dalla casella combinata "sceltaOrgano" nell'evento "dopo aggiornamento" applico il seguente codice:

    <font color=green>Private Sub sceltaOrgano_AfterUpdate()
    If Me.sceltaOrgano = "1" Then Me.Organo.SourceObject = "Cuore"
    If Me.sceltaOrgano = "2" Then Me.Organo.SourceObject = "Fegato"
    If Me.sceltaOrgano = "3" Then Me.Organo.SourceObject = "Milza"
    If Me.sceltaOrgano = "4" Then Me.Organo.SourceObject = "Ossa"
    If Me.sceltaOrgano = "5" Then Me.Organo.SourceObject = "Polmone"
    end sub</font id=green>
    creo tante maschere dalle query con i vari nomi(Cuore, Fegato, Milza, ecc)
    ...ed il gioco è fatto...
    se avete una soluzione meno macchinosa, postatela.
Devi accedere o registrarti per scrivere nel forum
4 risposte