Sviluppare funzionalita su Microsoft Office con VBA Controllare i valori di 2 colonne

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

    Oscar
    Partecipante
      45 pts

      Salve ragazzi c'è qualcuno che ha qualche idea buona a me non mi riesce proprio 

      Devo trovare il totale delle celle uguali  , ma il risultato esatto non mi torna

      Private Sub CommandButton1_Click()
      For I = 3 To 16
          If Right(Cells(I, 16), 1) = Cells(I, 12) Then a = a + 1
          If Left(Cells(I, 16), 1) = Cells(I, 12) Then a = a + 1
          If Range("L" & I) = Cells(I, 16) Then a = a + 1
      Next
         Cells(17, 16) = a
      End Sub
      Allegati:
      You must be logged in to view attached files.
      #31511 Score: 0 | Risposta

      tanimon
      Partecipante
        16 pts

        ciao a tutti,

        ciao Oscar, così a me torna.

        Ciao

        Frank

        Private Sub CommandButton1_Click()
        For I = 3 To 16
            If Right(Cells(I, 16), 1) = Cells(I, 12) _
                Or Left(Cells(I, 16), 1) = Cells(I, 12) _
                Or Range("L" & I) = Cells(I, 16) Then
                a = a + 1
            End If
        Next
           Cells(17, 16) = a
        End Sub
        #31513 Score: 0 | Risposta

        Oscar
        Partecipante
          45 pts

          Grazie tanimon per la risposta 

          Ho provato ma non va bene (il controllo che devo fare è su un sistema , e va bene solo in alcuni casi ) infatti la seconda colonna non va più mi da solo 10 anzichè 12 

          Questa è la seconda colonna

          2
          1X
          1
          1
          2
          2
          1
          1
          2X
          X
          1X
          1X

          #31514 Score: 0 | Risposta

          Oscar
          Partecipante
            45 pts

            In passato lo avevo già fatto poi col cambio di Computer ho perso tutto e ora mi sono ricordato che anche ad allora con le variabili non andava bene ,  bisogna scompattare la colonna con le doppie e scrivere il segno su altre celle 

            Questa è la macro su singola colonna , ma va benissimo anche su tutto il sistema 

            Ringrazio tutto il forum

            For I = 3 To 16
            If Len(Cells(I, 16)) = 2 Then                       'Controllo se c'è una doppia
               Cells(20, 15) = Left(Cells(I, 16), 1)            'Scrivo il segno di sinistra
               Cells(20, 16) = Right(Cells(I, 16), 1)           'Scrivo il segno di destra
            If Cells(20, 15) = Cells(I, 12) Then a = a + 1      'Controllo la cella con il segno di sinistra
            If Cells(20, 16) = Cells(I, 12) Then a = a + 1      'Controllo la cella con il segno di destra
               Cells(20, 15) = ""                               'Elimino il segno di sinistra
               Cells(20, 16) = ""                               'Elimino il segno di destra
            End If
            If Cells(I, 12) = Cells(I, 16) Then a = a + 1       'Controllo le celle senza doppie
            Next
               Cells(17, 16) = a                                'Scrivo il risultato
            #31515 Score: 0 | Risposta

            tanimon
            Partecipante
              16 pts

              ciao Oscar,

              sicuramente la tua soluzione sarà più funzionale, ma anche con questa tua soluzione

              a me non dà nè 10 nè 12, ma continua a dare 13 anche se in colonna "P" metto quella che hai

              indicato al post #31513 che è la stessa di quella del tuo file al post #31509.

              Hai qualche idea in merito?

              Puoi per favore allegare il file nel quale ottieni 12 come risultato?

              Ciao

              Frank

               

              #31516 Score: 0 | Risposta

              Oscar
              Partecipante
                45 pts

                Forse non l'hai copiata bene comunque vedi l'allegato

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

                tanimon
                Partecipante
                  16 pts

                  ciao Oscar,

                  ti riallego 2 files:

                  Oscar.xlsm ( il primo che hai allegato) ed Oscar-2.xlsm

                  del secondo ho copiato ed incollato il range("k3:p16") nell primo ed in entrambi ci sono i 2 buttons

                  con i relativi codici per i quali se in Oscar-2, sostituisci il codice che ti avevo proposto,

                  con il tuo primo codice che hai postato, ottengo lo stesso risultato di 14 con entrambi.

                  Se comunque hai verificato che non sempre ottieni il risultato voluto, ed hai risolto con la tua 

                  ultima soluzione, meglio così.

                  Buona giornata 

                  Frank

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

                  Oscar
                  Partecipante
                    45 pts

                    Si sulla quella colonna va bene , ma come avevo già specificato è un sistema le colonne possono essere 3 come 100 , e con la prima  non tutte andavano bene  invece con la seconda hanno tutte il risultato giusto 

                    Comunque ti ringrazio tanto Oscar

                  Login Registrati
                  Stai vedendo 8 articoli - dal 1 a 8 (di 8 totali)
                  Rispondi a: Controllare i valori di 2 colonne
                  Gli allegati sono permessi solo ad utenti REGISTRATI
                  Le tue informazioni: