Ciao Paloma
Quando sei nell'editor del Vba
hai sulla finestra di sinistra (con office 2003) sia i fogli (Foglio1, Foglio2 etc), un ThisWorkbook e sia i moduli, se già hai creato delle macro al loro interno.
La macro di Ricky va inserita nel Foglio1 o 2 o 3 (dove hai i dati) in quanto si attiva ad ogni variazione di selezione.
Puoi anche mettere nel foglio1 (dove hai i dati) solo il richiamo della macro in questa maniera
- Codice: Seleziona tutto
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Call sommat '<<<<< chiamata macro che si trova nel modulo
End Sub
e nel modulo
- Codice: Seleziona tutto
Sub sommat()
somma = 0
For Each cella In Range("A1:B4")
If cella.Interior.ColorIndex = 3 Then somma = somma + cella.Value
Next
Range("C2").Value = somma
End Sub
ottenendo lo stesso risultato
Io non so se tu devi fare la somma del contenuto delle cellle colorate oppure sapere solo quante celle sono colorate (come numero) in quest'ultimo caso
devi usare il codice
- Codice: Seleziona tutto
If cella.Interior.ColorIndex = 3 Then somma = somma +1
come riportato da Anthony e Ricky
e non
- Codice: Seleziona tutto
If cella.Interior.ColorIndex = 3 Then somma = somma + cella.Value
Inoltre non avrai il calcolo immediato alla variazione del colore cella
ma solo al momento che cambierai selezione con click o con invio dopo aver variato il colore.
Fai sapere