Visualizzazione dei risultati da 1 a 8 su 8
  1. #1

    [VB6] Menù a tendina con scelta mese

    Salve a tutti e ben rotrovati.

    Forse nel titolo non mi sono spiegato tanto bene, ma cerco di rimediare subito. Ho un gestionale che mi stampa la lista dei lavori eseguiti in un determinato mese. La scelta del mese, ora come ora,
    la faccio inserendo in una text il numero del mese (1=gennaio, 2=febbraio ecc). Questo è il codice che uso:

    codice:
    Private Sub OK_Click()
        Adoreport.Refresh
        Set Report_lavori.DataSource = Adoreport
        Adoreport.Recordset.Filter = "[Mes]=" & N_Mese.Text
        Report_lavori.Show
    End Sub
    Come si nota faccio un controllo tra il valore della casella di testo dove inserisco il numero del mese (N_Mese) e il valore di [Mes] che è in nome della colonna contenuta nella query che raccoglie tutti i lavori.
    Ora vorrei, se possibile, usare una sorta di DataCombo o qualcosa di analogo, che mi facca vedere il nome del mese e non il numero. Sto diventando pazzo ma non riesco a fargli passare il numero corrispondente al mese scelto dalla tendina.

    Qualcuno mi potrebbe aiutare???

    Grazie mille a tutti....a presto.


  2. #2
    Ciao BoboVieri.

    Potresti provare così:
    crei una combobox (cboMese) con impostato lo "Style" a 2 (solo scelta da parte dell'utente); qui, nella "List" metti tutti i nomi dei mesi.

    Di seguito, per gestire la tua variabile, un esempio potrebbe essere quello dell'evento "Click":

    codice:
    Private sub cboMese_Click()
       Select Case cboMese.Text
          Case "Gennaio"
             LaTuaVariabile = 1
          Case "Febbraio"
             LaTuaVariabile = 2
    
          ' e così via....
    
       End Sub
    End Sub
    Ovviamente ci possono essere altri metodi, ma ora devo andare a pranzo e ne possiamo riparlare dopo...

    Fammi sapere.

    Giulio C. - Roma

  3. #3
    Errata corrige:

    Ovviamente "End Select" e non End Sub per chiudere il "Select Case"...
    Scusa, mi sono accorto ora dell'errore di digitazione.
    Giulio C. - Roma

  4. #4
    anzichè utilizzare una variabile esterna prova a utilizzare itemdata che è interno al controllo combobox... controlla nell'help per avere i dettagli sul funzionamento...
    I database... la mia passione + o -

  5. #5
    Intanto ringrazio entrambi per le informazioni.

    Sto continuando seguendo le direttive fornitemi da Giulio C.

    Ho compilato il mio "Select Case" ma il problema rimane questo: nel pulsante OK, se io lascio il codice così com'è (cambiando ovviamente a N_Mese --> cboMese) mi da errore o nel debug vedo che il valore che si prende cboMese è ="Maggio" (per esempio), non 5 (che è quello che serve a me). Perchè??? Cosa devo cambiare???

    Grazie ancora a chi mi illuminerà...


  6. #6
    Ciao di nuovo BoboVieri.
    Ho paura che tu non abbia ben compreso il codice postato, o forse io sono stato poco chiaro. In tal caso mi scuso sin da ora.

    Al posto del tuo "N_Mese.Text" devi indicare la variabile che ti indicavo con il nome "LaTuaVariabile".

    Faccio un esempio esplicativo:

    Nella sezione "dichiarazioni" metti:
    codice:
    Dim nMese as Integer
    Di seguito lascia il codice che hai scritto ma prima dell'End Sub prova a scrivere questo che dopo ovviamente toglierai:

    codice:
    MsgBox nMese
    Vedrai che il valore è quello numerico da te desiderato e quindi, per riportare il tutto al tuo caso:

    codice:
    Adoreport.Recordset.Filter = "[Mes]=" & nMese
    Si poteva comunque anche utilizzare il metodo "ListIndex" per gestire la tua situazione (come giustamente diceva PowerMobile).
    Se serve sono a tua disposizione, non voglio adesso complicarti le cose con troppi concetti.

    Fammi sapere.

    Giulio C. - Roma

  7. #7
    SEI GRANDE!!!!!!!!!!

    Chiedo scusa sin da ora...so che in informatica le scritte in maiuscolo significano urlare, ed infatti io urlo dalla felicità!!!!

    Grazie...funziona alla perfezione. Salverò questo codice e lo tramanderò ai posteri...è troppo figo!!!

    Grazie ancora per l'immenso aiuto.

    Un salutone a tutti.


  8. #8
    Lieto di esserti stato d'aiuto!

    Ciao di nuovo e buon lavoro!

    Giulio C. - Roma

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.