Newsgroup: it.comp.os.win.software
Titolo: conta valori unici con Excel

Come si possono contare dei valori unici in Excel ? Mi spiego meglio:
In una colonna ho i seguenti valori: A - B - C - A - B - B - D - C - C
I valori "unici" sono A - B - C - D perchč il resto sono delle ripetizioni.
Il valore quindi che dovrebbe restituirmi la formula che Vi chiedo č: 4.
Come si puň fare tutto questo con Excel ?
Grazie.

iiiii <i...@ii.ii> wrote in message
dSUH6.26101$0t6.1...@news.infostrada.it...

Ti propongo una soluzione in due passaggi. Per prima cosa utilizzi la
funzione del filtro avanzato. Se nella colonna hai di valori ma non dei
numeri, nella prima riga utilizza come intestazione della colonna un numero.
Lo stesso numero lo scrivi nella colonna adiacente. Quindi selezioni la
colonna contenente i valori e dal menu Dati scegli Filtro Avanzato,
selezioni la casella "Copia in un'altra posizione", in "copia in" immetti il
nome della prima cella della colonna adiacente o cmq quella in cui hai
riportato l'intestazione della colonna contenente i valori da filtrare,
quindi selezioni "Copia unica dei record" e dai l'OK. Otterrai cosi' una
colonna coi valori unici. A questo punto ti basta contare questi valori con
la funzione CONTA.VALORI.
Ciao, Max

 Lo stesso numero lo scrivi nella colonna adiacente. Quindi selezioni la
colonna contenente i valori e dal menu Dati scegli Filtro Avanzato,
selezioni la casella "Copia in un'altra posizione", in "copia in" immetti il
nome della prima cella della colonna adiacente o cmq quella in cui hai
riportato l'intestazione della colonna contenente i valori da filtrare,
quindi selezioni "Copia unica dei record" e dai l'OK. Otterrai cosi' una
colonna coi valori unici. A questo punto ti basta contare questi valori con
la funzione CONTA.VALORI.
  Ottima soluzione ma, se ne hai la possibilita`, corri a vedere cosa ha
proposto fernando cinquegrani su microsoft.public.it.office!... Altrimenti
fammi sapere che faccio un copia/incolla anche qui.
--
Ciao.
Maurizio
--------
?SPQR(C)
 X
--------

 proposto fernando cinquegrani su microsoft.public.it.office!...
L'ho vista e l'ho provata ed ho provato anche la tua che inserisce ulteriori
controlli. La tua fa apparire anche un'altra casella intitolata CONTA VUOTE
che e' opzionale ma che non ho capito a cosa serva. Se hai voglia di
spiegarmelo...
Ciao, Max
PS - se mi rispondi forse sarebbe il caso di postare i codici delle due
funzioni anche su questo ng, altrimenti capiamo solo noi due :-)

 forse si puň migliorare.
  Dato che val sempre la pena complicarsi la vita per un nobile scopo...
Option Explicit
Public Function Unix( _
  ByVal RangeInput As Excel.Range _
, Optional ByVal ContaVuote As Boolean = False _
) As Variant
  On Error GoTo Err
  Dim colElementi As Collection
  Dim lngIndex    As Long
  Dim lngMaxRow   As Long
  Dim lngMaxCol   As Long
  Application.Volatile True
  Set colElementi = New Collection
  With RangeInput.Cells
    With .Parent.UsedRange
      lngMaxRow = .Rows.Count
      lngMaxCol = .Columns.Count
    End With
    For lngIndex = 1 To .Count
      If _
        .Item(lngIndex).Row <= lngMaxRow And _
        .Item(lngIndex).Column <= lngMaxCol Then
        If Len(.Item(lngIndex)) > 0 Or ContaVuote Then
          On Error Resume Next
          colElementi.Add Item:="", Key:="K" & .Item(lngIndex)
          On Error GoTo Err
        End If
      Else
        Exit For
      End If
    Next
  End With
  Unix = colElementi.Count
Ext:
  Set colElementi = Nothing
  Exit Function
Err:
  Unix = CVErr(Err.Number)
  Resume Ext
End Function
  Da testare!...
*** FINE *****************************************************


 (scusa il gioco di parole) oltre che essere decisamente elegante.
Non c'e' dubbio. Per quanto mi riguarda cerco di fare tutto quanto e'
possibile senza usare l'ambiente vba, anche perche' non conoscendolo dovrei
sempre chiedere a qualcuno.  Utilizzare qualcosa che non conosco mi porta ad
avere un minor controllo sul foglio che utilizzo, quindi preferisco
effettuare qualche passaggio in piu' ma, laddove e' possibile, non
utilizzare il vba.
Mi piacerebbe cmq sapere cosa ha scelto di fare iiiii.
Grazie per la spiegazione.
Ciao, Max