Sviluppare funzionalita su Microsoft Office con VBA Contare numeri pari o dispari consecutivi

Login Registrati
Stai vedendo 17 articoli - dal 1 a 17 (di 17 totali)
  • Autore
    Articoli
  • #28029 Score: 0 | Risposta

    Oscar
    Partecipante
      45 pts

      Salve a tutti

      è possibile con una macro contare numeri pari o dispari consecutivi io ho provate e riprovato ma non mi va 

      grazie a chiunque mi dia anche solo un'indicazione

      #28030 Score: 0 | Risposta

      GiuseppeMN
      Partecipante
        19 pts

        @oscar;

        se questo schema può esserti utile si potrebbe evitare VBA; altrimenti vedo di proporti un Codice VBA.

        Ho ritenuto che i colori delle Celle potessero aiutare a discriminare il cambio tra valori Pari e valori Dispari.
        Giuseppe

        #28031 Score: 0 | Risposta

        Oscar
        Partecipante
          45 pts

          Grazie Giuseppe per la tua velocità  ma mi serve proprio il codice  VBA

           

           

          #28032 Score: 0 | Risposta

          GiuseppeMN
          Partecipante
            19 pts

            @oscar;
            grazie del riscontro, ma lo schema è corretto o ti serve una struttura diversa?

             

            Giuseppe

            #28034 Score: 0 | Risposta

            patel
            Moderatore
              51 pts

              Oscar, allega un file con i dati, il risultato desiderato ed i tuoi tentativi di macro

              #28035 Score: 0 | Risposta

              PMC77
              Partecipante
                18 pts

                Ciao @oscar!

                Un saluto a tutti!

                Con Macro VBA è relativamente semplice!

                Con un ciclo while di scansione di tutte le righe del tuo foglio, testi il resto della divisione per due del contenuto della cella ed incrementi uno dei due contatori (Pari-Dispari) e lo scrivi nella cella che desideri della riga in esame!

                Spero di essere stato chiaro!

                Ciao

                Paolo

                #28036 Score: 0 | Risposta

                GiuseppeMN
                Partecipante
                  19 pts

                  Buona giornata a Tutti.

                  Buona giornata, @oscar;
                  in attesa che la richiesta di allegare un File di riferimento venga ottemperata allego un File d'esempio.
                  Aggiungendo o modificando un valore in Colonna "A" vengono calcolati i Valori Pari/Dispari sequenziali.
                  Non devono esserci Celle vuote o Celle con Valore = 0 (Zero)

                  Molto probabilmente all'apertura del File verrà segnalato un "Errore di run-time '91' "; basta salvare il File nella Directory (Cartella) di servizio, chiuderlo e riaprirlo.

                  Il Codice VBA è protetto da Password; quando verrà proposta la reale struttura del File la Password verrà tolta.

                   

                  Giuseppe

                  Allegati:
                  You must be logged in to view attached files.
                  #28039 Score: 0 | Risposta

                  Oscar
                  Partecipante
                    45 pts

                    Questa è la mia macro , mi trova i numeri pari e dispari ma non i consecutivi , ho fatto 30 macro , ma nessuna andava bene 

                    Allegati:
                    You must be logged in to view attached files.
                    #28041 Score: 0 | Risposta

                    PMC77
                    Partecipante
                      18 pts

                      Ciao @oscar, ma  io non vedo nessuna Macro nel tuo file e non si capisce una fava (come se fosse Antani con un leggero scappellamento a sinistra)!

                      Detto questo, per capirci, tu devi tener conto delle consequenzialità dei pari e dei dispari ed al variare "azzerare" il contatore?

                      Grazie!

                      Paolo

                      #28042 Score: 0 | Risposta

                      Oscar
                      Partecipante
                        45 pts

                        Ciao PMC77 si certo è facile trovare i numeri pari o dispari , ma non i consecutivi pari e dispari

                        #28043 Score: 0 | Risposta

                        Oscar
                        Partecipante
                          45 pts

                          SI Paolo ho provato ad azzerare al variare , ma se trova la doppia  sequenza non va 

                          #28045 Score: 0 | Risposta

                          GiuseppeMN
                          Partecipante
                            19 pts

                            Buona giornata, @pmc77.

                            a proposito di:

                            ... non vedo nessuna Macro ...

                            Anche se non dovrei essere io a risponderti vorrei consigliarti di dare uno sguardo al Codice VBA legato a "CommandButton1".

                            Buona giornata, @oscar;
                            appena posso provo a sviluppare un Codice VBA per poterti proporre una possibile soluzione ma credo dovrai avere molta pazienza.

                            A disposizione.

                            Giuseppe

                            #28046 Score: 0 | Risposta

                            Oscar
                            Partecipante
                              45 pts

                              Ho allegato il File la macro è nel file

                              #28047 Score: 0 | Risposta

                              PMC77
                              Partecipante
                                18 pts

                                @oscar!

                                Mi scaricava il tuo file ma me lo bloccava e non so perché...

                                Ad ogni modo se mi dai qualche istante vedo di produrre una traccia!

                                Ciao

                                Paolo

                                #28048 Score: 0 | Risposta

                                Luca73
                                Partecipante
                                  58 pts

                                  Ciao 

                                  Ecco la mia proposta

                                  Sub Luca()
                                  [K2:L40] = ""
                                  
                                  Dim CPari
                                  Dim CPariMax
                                  Dim CDispari
                                  Dim CDispariMax
                                  Dim y
                                  Dim i
                                  For i = 2 To 40
                                      CPari = 0
                                      CPariMax = 0
                                      CDispari = 0
                                      CDispariMax = 0
                                  For y = 1 To 5
                                      If Foglio1.Cells(i, y) Mod 2 = 0 Then
                                          If (y > 1) Then
                                              If Foglio1.Cells(i, y - 1) Mod 2 = 0 Then
                                                  CPari = CPari + 1
                                              Else
                                                  CPari = 1
                                              End If
                                          Else
                                              CPari = 1
                                          End If
                                          If CPari > CPariMax Then CPariMax = CPari
                                      Else
                                          If (y > 1) Then
                                              If (Foglio1.Cells(i, y - 1) Mod 2 = 1) Then
                                                  CDispari = CDispari + 1
                                              Else
                                                  CDispari = 1
                                              End If
                                          Else
                                              CDispari = 1
                                          End If
                                          If CDispari > CDispariMax Then CDispariMax = CDispari
                                      End If
                                  Next
                                  
                                  Cells(i, 11) = CPariMax
                                  Cells(i, 12) = CDispariMax
                                  Next
                                  End Sub
                                  
                                  
                                  #28049 Score: 0 | Risposta

                                  PMC77
                                  Partecipante
                                    18 pts

                                    Ottimo @luca73!

                                    Ci stavo arrivando pure io, ma mi hai battuto sul tempo!

                                    Ciao

                                    Paolo

                                    #28050 Score: 0 | Risposta

                                    Oscar
                                    Partecipante
                                      45 pts

                                      Luca che dire sei un grande grazie mille funziona alla perfezione

                                    Login Registrati
                                    Stai vedendo 17 articoli - dal 1 a 17 (di 17 totali)
                                    Rispondi a: Contare numeri pari o dispari consecutivi
                                    Gli allegati sono permessi solo ad utenti REGISTRATI
                                    Le tue informazioni: