Chris ha un gran numero di celle che contengono numeri di parte. Queste celle possono contenere cifre o caratteri, in qualsiasi combinazione. Possono anche contenere caratteri speciali come trattini, barre e spazi.

Chris ha bisogno di un modo per identificare se una cella contiene solo cifre, senza prendere in considerazione i caratteri speciali. Pertanto, una cella contenente 123-45 risulterebbe contenente solo cifre, mentre 123AB-45 no.

Il modo più semplice per capire se una data cella contiene solo i caratteri e le cifre consentiti è utilizzare una formula che rimuove i caratteri consentiti non numerici e quindi vede se il valore risultante è numerico. Tutte le seguenti formule possono fare il trucco abbastanza bene:

=IF(IFERROR(INT(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(A1,"-", ""),"/", "")," ", "")),FALSE), TRUE, FALSE)

=OR(ISNUMBER(SUBSTITUTE(A1,"-","")+0),ISNUMBER(SUBSTITUTE(A1,"/","")+0),ISNUMBER(SUBSTITUTE(A1," ","")+0))

=ISNUMBER(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(A1," ",""),"/",""),"-","")*1)

Puoi anche usare una semplice macro per capire se una cella contiene solo cifre e i caratteri consentiti. Sebbene ci siano molti modi in cui una tale macro potrebbe essere affrontata, ecco un metodo piuttosto semplice:

Function DigitsOnly(sRaw As String) As Boolean     Dim X As Integer     Const sAllowed As String = "0123456789 -/"



Application.Volatile     For X = 1 To Len(sRaw)

If InStr(sAllowed, Mid(sRaw, X, 1)) = 0 Then Exit For     Next X     DigitsOnly = False     If X > Len(sRaw) Then DigitsOnly = True End Function

La macro esamina tutto ciò che le viene passato, confrontando ogni carattere nella stringa con un elenco di caratteri consentiti (nella costante sAllowed).

Se viene rilevato un carattere non consentito, il ciclo viene chiuso anticipatamente e viene restituito un valore False. Quindi, se volessi valutare la cella in A1, potresti usare quanto segue nella tua macro:

=DigitsOnly(A1)

Poiché restituiscono valori True o False, uno qualsiasi di questi approcci (formula o funzione definita dall’utente) potrebbe essere utilizzato insieme alla formattazione condizionale per apportare modifiche alla formattazione ai numeri di parte.

_Nota: _

Se desideri sapere come utilizzare le macro descritte in questa pagina (o in qualsiasi altra pagina dei siti ExcelTips), ho preparato una pagina speciale che include informazioni utili.

ExcelTips è la tua fonte di formazione economica su Microsoft Excel.

Questo suggerimento (12654) si applica a Microsoft Excel 2007, 2010, 2013, 2016, 2019 e Excel in Office 365.