MS Excel - Convalida dei dati


2

Sto cercando la formula che posso usare nello strumento di convalida dei dati in Excel.

Esiste un tipo di campo a cui voglio applicare le regole:

  1. Solo numeri e simboli (no alfa)

Sono in completa perdita, ho provato diverse ricerche su Google senza risultati. Solo numerico o Testo sembra essere facile, ma rimuovere solo 1 tipo di carattere e lasciare l'altro 2 sembra complicato.

Vorrei farlo tramite lo strumento di convalida dei dati di Excel, piuttosto che qualsiasi tipo di componente aggiuntivo.

Qualcuno può aiutare?

C'è forse un modo in cui posso affermare =AND(ISNUMBER(A1)e quindi elencare tutti i caratteri da consentire? !@#$%^&*-()'";:/?.><,?

Tentativo 1 Deve esserci un modo migliore del seguente (anche la convalida dei dati in Excel non mi consente di inserire una formula abbastanza lunga da includere anche solo i caratteri Alpha minuscoli)

=AND(ISERROR(FIND("a",N14)),ISERROR(FIND("b",N14)),ISERROR(F‌​IND("c",N14)),ISERRO‌​R(FIND("d",N14)),ISE‌​RROR(FIND("e",N14)),‌​ISERROR(FIND("f",N14‌​)),ISERROR(FIND("g",‌​N14)),ISERROR(FIND("‌​h",N14)),ISERROR(FIN‌​D("i",N14)),ISERROR(‌​FIND("j",N14)),ISERR‌​OR(FIND("k",N14)),IS‌​ERROR(FIND("l",N14))‌​,ISERROR(FIND("m",N1‌​4)),ISERROR(FIND("n"‌​,N14)),ISERROR(FIND(‌​"o",N14)),ISERROR(FI‌​ND("p",N14)),ISERROR‌​(FIND("q",N14)),ISER‌​ROR(FIND("r",N14)),I‌​SERROR(FIND("s",N14)‌​))

Tentativo 2 Quanto segue funziona con caratteri Alpha sia maiuscoli che minuscoli, ma solo se viene inserito un singolo carattere, ad es. 'A', non appena si immette 'AB' la soluzione non riesce

= E (N14 <> "a", N14 <> "b", N14 <> "c", N14 <> "d", N14 <> "e", N14 <> "f", N14 <> "g ", N14 <> "h", N14 <> "i", N14 <> "j", N14 <> "k", N14 <> "l", N14 <> "m", N14 <> "n" , N14 <> "o", N14 <> "p", N14 <> "q", N14 <> "r", N14 <> "s", N14 <> "t", N14 <> "u", N14 <> "v", N14 <> "w", N14 <> "x", N14 <> "y", N14 <> "z")

Aggiornamento: per chiarire, ho bisogno che l'utente sia in grado di inserire un massimo di 12 caratteri. ad es. '- $ 4000,00' (mi sento a mio agio con l'aggiunta di LEN (N14) <13

Risposte:


1

utilizzare la seguente formula in Convalida dati, Personalizzata, Formula:
=OR(AND(CODE(A1)>90,CODE(A1)<97),CODE(A1)<65,CODE(A1)>122,A1="")
consentirà numeri e punteggiatura ma non az, AZ
Se o restituisce True
Per più di un carattere nell'uso della cella:

=AND(OR(AND(CODE(A1)>90,CODE(H1)<97),CODE(A1)<65,CODE(A1)>122),NOT(ISNUMBER(LOOKUP(2^15,SEARCH(CHAR(ROW(INDIRECT("65:90"))),A1)))))

qualunque cosa sia scritta nel primo carattere o nel mezzo lo rileverà
Perché il codice testerà solo il primo carattere

Aggiornamento
Per essere più semplice basta usare:
=NOT(ISNUMBER(LOOKUP(2^15,SEARCH(CHAR(ROW(INDIRECT("65:90"))),A1))))


Ciao Sam - Funziona se il primo carattere da inserire è un Alpha, ma inserendo un numero / simbolo e quindi alpha, ad esempio "4cheese", non si verifica un errore :(
OpenTage,

Immagino che OP volesse che le stringhe fossero più grandi di un solo carattere.
Herb,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.