Qual è una formula per rimuovere lo spazio bianco da una cella di Excel quando il taglio non funziona?


10

Ho una tabella di dati Excel che ho copiato da una tabella html in Internet Explorer. Una colonna di valori di tabella sembra avere uno spazio alla fine, ma Trimnon lo rimuoverà. Quando incollo-speciale il valore del risultato della Trimfunzione, ha ancora lo spazio bianco alla fine.

Potrebbe essere un altro tipo di personaggio degli spazi bianchi che Trimnon viene rimosso?


1
Se lo guardi nella modalità in cui puoi vedere che tipo di personaggi ci sono, che tipo di personaggio non viene rimosso?
soandos,

se lo fai = LEN (CELL), cosa restituisce?
Kobaltz,

1
Per curiosità, qual è il numero ASCII dell'ultimo personaggio? Usa =CODE(RIGHT(A1,1))(supponendo A1che il testo problematico sia contian) per vederlo. Lo spazio è 32, Tab è 9 e i nuovi caratteri di linea sono 10 e 13.
Hand-E-Food

1
@ Hand-E-Food, il risultato di questa funzione è 160
Altamente irregolare,

@kobaltz, = LEN (CELL) restituisce 9. Il valore della cella è (senza virgolette doppie) "010-0000", ma il trim non sembra rimuovere l'ultimo carattere. Il copia e incolla per inserire il valore qui potrebbe essere modificato per essere uno spazio dal mio browser, o in qualche altro modo ...
Altamente irregolare,

Risposte:


17

Il personaggio 160 è uno spazio senza interruzioni , un personaggio progettato per apparire come uno spazio ma essere ancora parte della parola, costringendo le parole adiacenti a stare insieme. Puoi convertirli in spazi regolari e quindi usare il trim.

Supponendo che il testo sia presente A1, utilizzare:

=TRIM(SUBSTITUTE(A1, CHAR(160), " "))

2
+1. Questo link è un utile riferimento . Molto spesso CLEAN, TRIMe SUBSTITUTEsono tutti necessari per trattare con le stringhe
brettdj

1

Se ha solo uno spazio e supponiamo che la colonna sia A.

A1= "CELL A1 "
A2= "CELL A2 "

Then B1 would be =LEFT(A1, LEN(A1)-1)
Then B2 would be =LEFT(A2, LEN(A2)-1)

Se fosse quello che era, allora il trim avrebbe funzionato ...
soandos

E da quanto indicano i commenti, questo avrebbe funzionato altrettanto bene.
Kobaltz,

1
Perché sei stato fortunato. Lì avrebbe potuto esserci più di un personaggio e non lo avresti mai saputo. Inoltre, l'altra risposta lo affronta indipendentemente da dove si trova nella cella, rendendola in ogni caso una risposta generale molto migliore.
soandos,

A meno che non avesse qualcosa come ASCII 160 e ASCII 161. Dove, se conosci la lunghezza di ogni stringa e vedi che è una cosa diversa da ciò che ci si aspetta, personalmente non vedo il problema con questo. Sono aperto a provare a capire la tua visione, ma entrambe le soluzioni hanno i loro limiti in diversi ambienti.
Kobaltz,

Concordato. Immagino che mi piaccia di più l'altra risposta perché ha identificato il problema e poi risolto. Hai una soluzione a qualcosa che risolve problemi simili. Vedo il tuo punto però, +1.
soandos,

0

Suggerisco che sarebbe più facile selezionare l'intero foglio di lavoro e usare Sostituisci (Ctrl + H) per sostituire ogni spazio non interrotto (NBSP) con uno spazio. Questo lascia ancora spazi alla fine delle celle ma evita di rimuovere NBSP dal centro delle celle. Hai ancora bisogno di Trim, ma è più facile di TRIM (SUBSTITUTE (...)).

Pensavo di poter inserire un NBSP usando Alt + 160 ma non ha funzionato per me. Ho dovuto usare Inserisci simbolo per posizionare un NBSP in una cella, copiarlo da lì e rilasciarlo nel campo Trova.

Con Inserisci simbolo, NBSP è la cella vuota sulla terza riga sotto 4.

Se si tratta di un problema ricorrente, è possibile utilizzare il registratore macro per salvare Sostituisci. Tuttavia, potrebbe essere meglio scrivere una macro che utilizza FIND per individuare NBSP ovunque all'interno di qualsiasi stringa e sostituirlo con spazio o eliminarlo in base alla sua posizione all'interno della stringa. Questa macro dovrebbe essere ripetuta fino a quando FIND non riesce.


È possibile digitare NBSP con Alt + 0160. I numeri da una a tre cifre sono ASCII, i numeri a quattro cifre sono unicode.
Hand-E-Food,

Ho rinunciato non appena non ha funzionato. Il tuo commento mi ha convinto a riprovare. Avevo dimenticato che funzionava solo con il tastierino numerico che su un laptop si trova al centro della tastiera. Proverò a ricordare la prossima volta che dovrò inserire un personaggio in questo modo. Grazie per la richiesta.
Tony Dallimore,

0

Prova la funzione CLEAN (x): elimina tutto quel guff, specialmente dove hai un mix di 161, 160 ecc.


no non lo fa. non ha funzionato con 160 di sicuro.
robotik,
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.