Una famiglia di software per fogli di calcolo Microsoft con strumenti per l'analisi, la creazione di grafici e la comunicazione dei dati.
Buongiorno!
chiedo venia, preso dalla foga di risolvere mi sono completamente dimenticato di dirvi che deve essere inserito in una macro, quindi la domanda la riformulo così:
Come posso contare univocamente dei valori non contigui presenti in una colonna con una macro?
Grazie
A
Leggi qui, per favore:
Grazie.
Per la tua NUOVA domanda, sempre basandomi sui dati che ho postato in precedenza (da A2 a A10 del Foglio1):
Public Sub m()
Dim sh As Worksheet
Dim lng As Long
Dim rng As Range
Dim c As Range
Dim col As Collection
Set sh = ThisWorkbook.Worksheets("Foglio1")
Set col = New Collection
With sh
Set rng = .Range("A2:A10")
On Error Resume Next
For Each c In rng
If Len(c.Value) > 0 Then
col.Add CStr(c.Value), CStr(c.Value)
End If
Next
lng = col.Count
End With
MsgBox lng
Set col = Nothing
Set c = Nothing
Set rng = Nothing
Set sh = Nothing
End Sub
Modifica nome del foglio e Range con i tuoi.
Volendo, all'interno della macro potresti anche ciclare/recuperare/utilizzare gli items della Collection(in grassetto le parti aggiunte):
Public Sub m()
Dim sh As Worksheet
Dim lng As Long
Dim rng As Range
Dim c As Range
Dim col As Collection
Dim v As Variant
Dim s As String
Set sh = ThisWorkbook.Worksheets("Foglio1")
Set col = New Collection
With sh
Set rng = .Range("A2:A10")
On Error Resume Next
For Each c In rng
If Len(c.Value) > 0 Then
col.Add CStr(c.Value), CStr(c.Value)
End If
Next
lng = col.Count
End With
MsgBox lng
For Each v In col
s = s & v & vbNewLine
Next
MsgBox s
Set col = Nothing
Set c = Nothing
Set rng = Nothing
Set sh = Nothing
End Sub
In entrambi i casi NON ho implementato la correzione delle eccezioni(errori) lasciando a te il compito. Vedi comunque qui: