2013-01-07 18:44:11 +0000 2013-01-07 18:44:11 +0000
12
12

Como exibir ou visualizar caracteres não impressos em Excel?

Existe alguma opção no MS Excel 2010 que exiba caracteres não impressos dentro de uma célula (por exemplo, espaços ou o caractere de quebra de linha introduzido ao pressionar Alt-Enter)?

Odpowiedzi (7)

10
10
10
2013-05-17 13:12:55 +0000

A forma mais fácil de o fazer é simplesmente mudar a fonte para uma fonte que tenha um glifo visível integrado para o espaço (ou qualquer outro carácter que possa ser necessário identificar)

Infelizmente, não tenho nenhum bom exemplo de tal fonte para lhe fornecer, mas é muito fácil adicionar um pequeno ponto a uma fonte existente, utilizando qualquer software editor de fontes. Apenas não se esqueça de renomear a fonte (não o ficheiro da fonte, mas o NOME da fonte dentro do ficheiro da fonte), para que seja fácil distinguir esta fonte personalizada da original, se tiver ambas instaladas.

EDIT* Finalmente encontrei tempo para fazer uma fonte deste tipo! Aqui vem DottedSpace Mono, baseada em Bitstream Vera Sans Mono, mas com espaços pontilhados embutidos : http://github.com/tanusoft/DottedSpaceMono

4
4
4
2016-01-21 02:01:28 +0000

CTRL+H substituir todos os espaços por um ~ Isto ajudará rapidamente para espaços sem programação , e para inverter apenas substituir ~ por “ ”.

O melhor programa que encontrei para comparar estes tipos de ficheiros onde o texto não está a ser exibido é o Ultra Edit. Tive de o utilizar para comparar ficheiros EDI, ficheiros de interface , uploads técnicos, etc. O MS Office simplesmente não está bem equipado para a tarefa.

3
3
3
2013-01-08 19:18:04 +0000

Embora não possa mostrar caracteres especiais directamente na célula, poderia usar uma fórmula na coluna adjacente (inserida) para substituir Entradas e Espaços por caracteres da sua escolha!

E.g.

=SUBSTITUTE(A1;" ";" ¶ ")

substituiria qualquer quebra de linha com o símbolo da palavra para a quebra de linha. E a fórmula aninhada =SUBSTITUTE(SUBSTITUTE(A1;" ";" ¶ ");" ";"\_") substituirá ambos, espaço e entrada. (Nota: para introduzir um “Enter” na fórmula, é necessário premir Alt+Enter enquanto se edita a fórmula.

1
1
1
2016-03-08 14:55:45 +0000

Alterar a fonte para o tipo “Terminal” ajudá-lo-ia a vê-los e alterá-los.

0
0
0
2018-04-07 01:38:46 +0000

1 Use find e insira o espaço

2 Faça Replace All e escreva “[s-p-a-c-e]”

3 Opcional: Se também quiser destacar a célula inteira a vermelho, basta usar o selector de formato ao lado desse

Resultado: Esses espaços irritantes revelar-se-ão super claramente

Porque é que precisei de fazer isto: Usei a função COUNTA para encontrar células não em branco numa coluna. Contudo, estava a devolver um número maior do que eu esperava. Depurei cada célula uma a uma, e para meu espanto, algumas células aparentemente em branco mostraram COUNTA=0 e outras mostraram COUNTA=1, o que não faz sentido. NÃO consegui ver a diferença entre as duas. Acontece que um único resquício em branco conta nessa função, mas não é visível EM QUALQUER LUGAR nem na célula nem na caixa de entrada no topo.

Conclusão: Se está a contar com COUNTA para tarefas importantes, é melhor ter a certeza de que não está a contar os espaços problemáticos que pode não saber que existem.

0
0
0
2019-12-06 06:55:35 +0000

Normalmente não preciso de VBA, por isso prefiro fazer coisas excelentes em python + openpyxl

from docx import Document #word docx py library
import openpyxl #excel py library
from openpyxl.styles import Color, PatternFill, Font, Border
from openpyxl.styles import colors
from openpyxl.cell import Cell
import re #regular expressions
import os #work with system

wb = openpyxl.load_workbook('test.xlsx') #open needed document

redFill = PatternFill(start_color='FFFF0000',
                   end_color='FFFF0000',
                   fill_type='solid') #function to fill bad cells red

n = 0
print (wb.sheetnames) #print all sheetnames to ensure theres no hidden

for sheet in wb.worksheets: #cycle through sheets in excel file
    # get max row count
    max_row=sheet.max_row
    # get max column count
    max_column=sheet.max_column
    for i in range(1,max_row+1):
     # iterate over all columns
        for j in range(1,max_column+1): #cycle through all rows and columns
            # get particular cell value    
            cell_obj=sheet.cell(row=i,column=j)
            s = re.search('[^-*+()!№;%:?@#$%^&;:_=/\a-zA-Z0-9\ а-яА-Я°\".,,.«»<>ёЁ]', str(cell_obj.value)) #find bad symbols with regular expression
            #^ find not normal characters 
            #s = re.search('[\n]', str(cell_obj.value)) find line end
            if s:   
                print(n, " ", i, " ", j) #sheet, row, col
                #print("^", s, "^") print bad symbol
                #sheet.cell(row=i,column=j).fill = redFill
                #color current cell wth spec chars red

    print(n)
    n+=1

wb.save("test.xlsx") #save redacted book
0
0
0
2017-01-24 19:38:05 +0000

Não responde exactamente à sua pergunta, mas defini o formato numérico para isto:

;;;'@'

para aspas simples, ou este

;;;\"@\"

para aspas duplas. Isto envolve citações em torno de qualquer texto introduzido. Também defino a fonte para Courier New (ou qualquer outra fonte de largura fixa).