Come aprire diverse maschere rispetto al pulsante cliccato

di il
11 risposte

Come aprire diverse maschere rispetto al pulsante cliccato

Salve a tutti,
provo a spiegare la situazione, ho una maschera dove ci sono diversi pulsanti che rappresentano i comuni, ad esempio cardeto, e reggio calabria (faccio l'esempio con due soli comuni) e vorrei che cliccando su reggio calabria la query mi selezioni tutti i valori di interesse aventi come ubicazione reggio,(questo riesco a farlo) mentre se seleziono cardeto vorrei che la stessa query mi filtri tutti i valori con ubicazione cardeto.
Per far questo penso serva una condizione if, ma non so se esiste e come utilizzarla in questo caso. Penso che con vba si possa fare ma sinceramente non sono per niente pratico.
Spero possiate aiutarmi, grazie! =)

11 Risposte

  • Re: Come aprire diverse maschere rispetto al pulsante cliccato

    Perchè non mostri il codice che usi per selezionare i valori di Reggio Calabria?
    Magari basta una semplice modifica...

  • Re: Come aprire diverse maschere rispetto al pulsante cliccato

    Intendi il codice Sql?
    SELECT *
    FROM terreni
    WHERE terreni.ubicazione='Reggio Calabria'

    Al posto di reggio calabria vorrei poter inserire una funzione di controllo, che verifica quale pulsante ho cliccato, e al posto del "reggio calabria " inserisce il valore del pulsante, spero di essermi spiegato.
    Grazie!
  • Re: Come aprire diverse maschere rispetto al pulsante cliccato

    Potresti memorizzare nella proprietà TAG di ogni pulsante il nome del comune da passare alla query come parametro, esempio:
    - Nel pulsante di Reggio Calabria imposti la TAG = Reggio Calabria
    - Nel pulsante di Cardeto imposti la TAG = Cardeto
    e così via.

    Trasformi la query in una query parametrica: sostituendo 'reggio calabria' con il segnaposto del parametro, esempio:

    WHERE terreni.ubicazione= [nome]

    e quando la esegui, gli passi la proprità TAG del pulsante premuto come parametro.

    Documentati sull query parametriche.
  • Re: Come aprire diverse maschere rispetto al pulsante cliccato

    Wow, grazie mille, non conoscevo queste query parametriche, è un passo avanti!
    C'è però un problema, nella maschera dove seleziono i comuni, ci sono più comuni, ossia più pulsanti, e non capisco come posso indicare nella query parametrica di prendere il tag del pulsante che ho premuto. Potrei fare anche le singole query per ogni comune, però non imparerei nulla di nuovo
  • Re: Come aprire diverse maschere rispetto al pulsante cliccato

    Se i Comuni cominciano a diventare un po' tanti, non pensi che la soluzione di avere molti pulsanti comincia a diventare poco ottimale? Io penserei a una casella combinata di scelta...poi un codice o query a seguire in base al valore selezionato.
  • Re: Come aprire diverse maschere rispetto al pulsante cliccato

    Si, sarebbe molto più comodo, però non posso farlo perché è una specie di compito, e mi è stato chiesto di mettere la cartina dei comuni, e in corrispondenza di questi bisogna mettere un pulsante corrispondente al comune e che mi filtra i terreni relativi. =/ Se proprio non c'è soluzione penso di fare tutti i casi possibili, anche se riempirò il DB di query!
  • Re: Come aprire diverse maschere rispetto al pulsante cliccato

    Davideark92 ha scritto:


    mi è stato chiesto di mettere la cartina dei comuni, e in corrispondenza di questi bisogna mettere un pulsante corrispondente al comune
    Questo è un discorso a sè e va per la sua strada.

    Davideark92 ha scritto:


    Se proprio non c'è soluzione penso di fare tutti i casi possibili, anche se riempirò il DB di query!
    Qua nasce il tuo errore concettuale. Ti basta una sola query che preleva il valore che deve provenire dal clic sulla cartina. Se tu dici alla tua query "filtrami la query in base al valore Comune che ho appena cliccato", la query restituirà quello che ti aspetti.

    Solo non sappiamo come hai progettato la tua cartina. E' l'immagine in una maschera?...
  • Re: Come aprire diverse maschere rispetto al pulsante cliccato

    OsvaldoLaviosa ha scritto:


    Se tu dici alla tua query "filtrami la query in base al valore Comune che ho appena cliccato", la query restituirà quello che ti aspetti.

    Solo non sappiamo come hai progettato la tua cartina. E' l'immagine in una maschera?...
    Si, ho una maschera con un immagine, e per ogni comune corrisponde un pulsante relativo.
    In ogni caso è proprio quello che tu dici che vorrei fare, ma come faccio a dire alla query di prendere il valore che ho appena cliccato avendo più pulsanti? Come posso identificarlo all'interno della query?
    Immagino che con VBA si possa fare abbastanza semplicemente, ma purtroppo non sono pratico!
  • Re: Come aprire diverse maschere rispetto al pulsante cliccato

    ...mmhhh...non sono molto pratico con le Public Sub o Public Function, ma qualcosa mi dice che devi ingegnarti in questa direzione con qualche codice VBA. Sicuramente devi passare un valore che parte dal pulsante che fa il clic: può essere una proprietà qualsiasi di ogni tuo pulsante (io penserei a Nome controllo o Etichetta (Caption)). Tale valore deve andare a finire dentro il filtro della query...
    Ti ho dato solo una imbeccata logica...attendi suggerimenti tecnici da utenti più esperti.
  • Re: Come aprire diverse maschere rispetto al pulsante cliccato

    Ovviamente l'idea di avere una gestione FLESSIBLE è un MUST con un Database... quindi ComboBox che sfruttano Tabelle di Selezione con Relazioni sarebbe meglio...

    Giusto per farti vedere un giochino in più, prova a vedere questo:
    http://forum.masterdrive.it/access-79/mappa-cliccabile-91193/
  • Re: Come aprire diverse maschere rispetto al pulsante cliccato

    WOW! Fatastico! Inutile dire che no ci capisco niente del codice vba, però è davvero notevole.
    A me basta una cosa anche più grossolana, però vorrei evitare di fare miliardi di query diverse.
Devi accedere o registrarti per scrivere nel forum
11 risposte