Ricerca su colonne Excel

  • Cicli for next di Enzo
    Ragazzi c'e' qualcosa che non mi sfagiola in quello che ho scritto nella macro qui sotto
    ho due elenchi
    il primo da a1 a a3 e il secondo da c1 a c3
    il risultato dovrebbe essere che se il contenuto di ogni cella nella colonna a e' uguale a quello della colonna c pone nella colonna b la parola trovato altrimenti in d la parola non trovato
    il problema come nell'esempio qui sotto e' che se in a1 a2 e a3 (vedi esempio) inserisco 1000 2000 3000 e gli stessi valori sono in c1 c2 c3 lui mi inserisce trovato ma anche non trovato nella colonna d non so proprio dove intervenire
    p.s. complimenti per il nuovo look

     
    For i = 1 To 3
    For h = 1 To 3
    If Range("a" & i).Text = Range("c" & h).Text Then
    Range("B" & i).Select
    ActiveCell.Value = "trovato"
    Else
    Range("d" & h).Select
    ActiveCell.Value = "non trovato"
    End If
    Next h
    Next i
    End Sub

    Rimedio di Apoben64
    Ciao enzo, diciamo che lascerei la prima parte del tuo codice , fino al "activecell....trovato" e poi inserirei il riferimento a questa macro .
    scusa , ma al momento di più non posso fare, ho una giornataccia. un saluto luca
     
    Sub confronta ()
    Dim X, Y As Long
    For X = 1 To 3
    If Range("a" & X).Text <> Range("c" & X).Text Then
    Range("d" & X).Select
    ActiveCell.Value = " non trovato"
    End If
    Next
    End Sub

    di Big ronnie
    Ciao enzo, se tu vuoi confrontare a1 con c1,a2 con c2,a3 con c3 hai semplicemente messo un ciclo(h) in più.questo perchè ad ogni valore di "i" il ciclo (h) assume tutti e 3 i suoi valori essendo all'interno del ciclo "i".quindi ogni cella "a" è confrontata con tutte e 3 le celle "c" trovando 1 valore uguale e 2 no.è per questo motivo che la macro ti scrive "trovato" e "non trovato" nelle rispettive celle "b" e "d".ti invio il codice esatto.ciao
     
    sub Macro1
    For i = 1 To 3
    If Range("a" & i) = Range("c" & i) Then
    Range("B" & i) = "trovato"
    Else
    Range("d" & i) = "non trovato"
    End If
    Next i
    End Sub