confrontare 2 celle in excel con VBA?
in excel devo controllare una cella (J1); se all'interno di questa cella c'è scritto "VERO" allora devo cambiare lo sfondo alla cella A1.
Ho creato una macro con questo codice e l'ho assegnata ad un pulsante,ma non funziona. potete aiutarmi?
If Range("J1") = "VERO" Then
Range("A1").Select
With Selection.Interior
.ColorIndex = 6
.Pattern = xlSolid
End With
End If
2 risposte
- Charles IILv 410 anni faRisposta preferita
Se J1 contiene il testo VERO il test non va fatto con il testo "VERO" ma con True. Vedi esempio seguente:
With Cells(1, 1).Interior ' Riga 1, Colonna 1 = Cella A1
If Cells(1, 10) = True Then ' Riga 1, Colonna 10 = Cella J1
.ColorIndex = 6
Else
.ColorIndex = xlColorIndexNone
End If
End With
Tieni presente che ci vuole la condizione Else per ripristinare il colore originale nel caso J1 non contenga VERO.
Inoltre se vuoi cambiare il colore di una cella in base al valore contenuto in un'altra ti basta usare la formattazione condizionale, vai in formato e scegli formattazione condizionale poi come condizione scegli "la formula è" ed a fianco scrivi:
=J1=VERO
Selezioni il pulsante formato ed imposti il colore di sfondo che vuoi.
Il colore cambia in automatico senza usare macro e pulsante.
Fonte/i: Professionista sviluppo SW ambienti Microsoft e Linux