Ciao,
se ho capito bene questo dovrebbe fare quello che chiedi:
codice:
Private Sub CommandButton1_Click()
With Range("H:H")
.Value = ""
End With
For Each casella In Range("a1", "g10")
If casella.Interior.ColorIndex = xlColorIndexNone Then
casella.Value = ""
Else
If Cells(casella.Row, 8).Value = "" Then
Cells(casella.Row, 8).Value = casella.Value
Else
Cells(casella.Row, 8).Value = Cells(casella.Row, 8).Value & "," & casella.Value
End If
End If
Next
End Sub
Il with iniziale ripulisce la colonna H da precedenti contenuti e poi il ciclo esplora il range dei dati (impostalo con il tuo range) e, casella per casella si chiede se il colore interno è impostato o meno.
Se non è impostato cancella il contenuto della cella.
Se invece è impostato accoda il contenuto della cella a quanto già presente nella cella H (che è la numero 8).
Vedi un po' se va bene
Ciao