You are here:--[RISOLTO] Come ottenere un contatore
[RISOLTO] Come ottenere un contatore2019-11-06T11:39:02+01:00

Home Forum Domande su Excel VBA e MACRO [RISOLTO] Come ottenere un contatore

  • Autore
    Articoli
  • AvatarKris_9951
    Partecipante
      Post totali: 110

      Salve a tutti!

      Ho un piccolo problema perchè non riesco ad ottenere un contatore.

      Prima di spiegare i particolari premetto che non sto usando Excel ma Access, però credo sia la stessa cosa…

      Spiego i dettagli:

      ho una TextBox dove sul doppioclick vorrei che restituisse un numero.

      Ho pensato ad usare una variabile statica e quindi ho scritto:

      Static Contatore As Long
      Contatore= 2019000000

      faccio presente che inizialmente avevo scritto 201900000000 ma poi VBA metteva il segno # dopo il numero (non so perchè, quindi ho eliminato le cifre fino a quando il segno # non scompariva)

      Poi ho scritto:

      Me.TxtBox1.Value = Contatore + 1
      Contatore= Contatore+ 1

      Effettivamente ottengo come risultato 2019000001 ma il proble è che ottengo sempre questo risultato mentre io vorrei che fosse sempre sequenziale.

       

      Come posso fare?

       

      Grazie a tutti per l’aiuto :-)

       

      • Questo argomento è stato modificato 1 settimana, 6 giorni fa da sid sid.
    • Avatarpatel
      Partecipante
        Post totali: 10

        bisognerebbe vedere tutto il codice che hai scritto

        Static Contatore As Long
        Contatore= 2019000000

        devono stare fuori dell’evento doppio clic e poi nell’evento

        Contatore= Contatore+ 1
        Me.TxtBox1.Value = Contatore

        • Questa risposta è stata modificata 2 settimane, 3 giorni fa da Avatar patel.
        • Questa risposta è stata modificata 2 settimane, 3 giorni fa da Avatar patel.
      • AvatarKris_9951
        Partecipante
          Post totali: 110

          Buongiorno Patel,

          grazie per la risposta :-)

          Non so su Excel ma su Access non mi fa dichiarare la variabile fuori dalla routine… :scratch:

        • Avatarpatel
          Partecipante
            Post totali: 10

            purtroppo io non conosco access, su excel di possono dichiarare le variabili in un modulo standard, ma in attesa di altri interventi posta tutto il codice che hai scritto

          • sidsid
            Moderatore
              Post totali: 723

              Ciao
              Dovresti spiegare bene il tuo progetto
              Immagino che la textbox si trovi su una form
              Il valore del Contatore deve essere = 2019000000 ogni volta che apri il form, oppure ogni volta che lo apri deve avere il valore raggiunto al momento della chiusura precedente?

            • AvatarKris_9951
              Partecipante
                Post totali: 110

                Ciao Sid!! :-)

                Allora lo scopo era questo:

                ad ogn doppio Click sulla TextBox la stessa TextBox deve restituire il valore precedente +1

                Io ho trovato una soluzione che vorrei condividere anche se si tratta di Access potrebbe sempre essere utile.

                Il numero “contatore” l’ho inserito in una tabella che si chiama tblContatore. Lì ho messo un campo che si chiama RMANum e su quel campo ho scritto il valore di partenza 10000000

                A quel punto al doppio click della TextBox avvio la routine:

                Dim RMAContatore As Long
                Dim strUpdateSQL As String

                ‘prendo il numero che sta nel campo RMANum della tabella tblContatore tramite la funzione DLookup che   sarebbe una specie di Cerca.Vert
                RMAContatore = DLookup(“RMANum”, “tblContatore”)
                ‘ aumento di 1 la variabile RMAContatore
                RMAContatore = RMAContatore + 1

                ‘Aggiorno la mia TextBox con il valore nuovo il quale è concatenato all’anno corrente
                Me.RAn = Year(Now()) & RMAContatore

                DoEvents
                ‘Aggiorno la tabella tblContatore con una Query di aggiornamento al file di aggiornare il contatore con il nuovo valore

                strUpdateSQL = “UPDATE tblContatore SET RMANum=” & RMAContatore
                CurrentDb.Execute strUpdateSQL

                 

                Ovviamente ho preso le info su qua e la su Internet

                 

                Ma la domanda è:

                su Excel come si poteva fare? Più o meno allo stesso modo oppure in altro modo?

              • sidsid
                Moderatore
                  Post totali: 723

                  l valore del Contatore deve essere = 2019000000 ogni volta che apri il form, oppure ogni volta che lo apri deve avere il valore raggiunto al momento della chiusura precedente?

                  Non hai risposto

                • AvatarKris_9951
                  Partecipante
                    Post totali: 110

                    Pensavo di averlo descritto nella Routine…

                    Quando apro il Form non deve succedere nulla ma nel momento che faccio doppio click sulla TextBox nella TextBox deve comparire il numero successivo a quello uscito in precedenza

                  • sidsid
                    Moderatore
                      Post totali: 723

                      Provo a spiegare meglio quello che intendevo:
                      Ammettiamo che il valore iniziale sia 1
                      – apro il form e nella textbox appare 1
                      – doppioclick nella textbox e diventa 2..3..4..5 ecc… ogni doppioclick aumenta il valore di una unità
                      – chiudo il form
                      – riapro il form: nella textbox avrò valore 5 o ricomincia da 1?

                    • AvatarKris_9951
                      Partecipante
                        Post totali: 110

                        Avrai valore 5 ed è per questo che con Access ho pensato di mettere il valore in una tabella (ed aggiornarlo di volta in volta) perché non trovavo altro modo per memorizzarlo

                      • sidsid
                        Moderatore
                          Post totali: 723

                          Un esempio con excel; memorizzo il valore in una cella
                          https://app.box.com/s/wel5fbghnvjnalkqvdfsj62bu2etvh6p

                        • AvatarKris_9951
                          Partecipante
                            Post totali: 110

                            Grazie mille Sid!!!

                            Funziona benissimo :-)

                          Devi essere loggato per rispondere a questa discussione.

                          Utilizzando il sito, accetti l'utilizzo dei cookie da parte nostra. maggiori informazioni

                          Questo sito utilizza i cookie per fornire la migliore esperienza di navigazione possibile. Continuando a utilizzare questo sito senza modificare le impostazioni dei cookie o cliccando su "Accetta" permetti il loro utilizzo.

                          Chiudi