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

Comment afficher ou visualiser les caractères non imprimables dans Excel ?

Advertisement

Existe-t-il une option dans MS Excel 2010 permettant d'afficher des caractères non imprimables dans une cellule (par exemple, des espaces ou le caractère de retour à la ligne introduit en appuyant sur Alt-Enter) ?

Advertisement
Advertisement

Réponses (7)

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

Le plus simple est de changer la police pour une police qui intègre un glyphe visible pour l'espace (ou tout autre caractère que vous devez identifier)

Malheureusement, je n'ai pas de bon exemple d'une telle police à vous fournir, mais il est très facile d'ajouter un petit point à une police existante, en utilisant n'importe quel logiciel d'édition de police. N'oubliez pas de renommer la police (pas le fichier de police, mais le NOM de la police dans le fichier de police), afin qu'il soit facile de distinguer cette police personnalisée de la police originale si vous avez installé les deux.

EDIT J'ai enfin trouvé le temps de faire une telle police ! Voici DottedSpace Mono, basé sur le Bitstream Vera Sans Mono, mais avec des espaces en pointillés intégrés : http://github.com/tanusoft/DottedSpaceMono

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

CTRL+H remplacez tous les espaces par un ~. Cela vous aidera rapidement pour les espaces sans programmation, et pour inverser, remplacez simplement ~ par “ ”.

Le meilleur programme que j'ai trouvé pour comparer ces types de fichiers où le texte n'est pas affiché est Ultra Edit. J'ai dû l'utiliser pour comparer les fichiers EDI, les fichiers d'interface, les téléchargements techniques, etc. MS Office n'est tout simplement pas bien équipé pour cette tâche.

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

Bien que vous ne puissiez pas afficher les caractères spéciaux directement dans la cellule, vous pourriez utiliser une formule dans la colonne adjacente (insérée) pour remplacer les entrées et les espaces par les caractères de votre choix !

Par exemple,

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

remplacerait tout saut de ligne par le symbole du mot pour le saut de ligne. Et la formule imbriquée =SUBSTITUTE(SUBSTITUTE(A1;" ";" ¶ ");" ";"\_") remplacera les deux, espace et entrée. (Note : pour entrer une “Entrée” dans la formule, vous devez appuyer sur Alt+Enter pendant l'édition de la formule.

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

Changer la police pour le type “Terminal” vous aiderait à les voir et à les modifier.

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

1 Utilisez find et entrez l'espace

2 Faites Remplacez tout et tapez “[s-p-a-c-e]”

3 Facultatif : si vous voulez également surligner toute la cellule en rouge, utilisez simplement le sélecteur de format à côté de ce

Résultat : Ces espaces gênants se révéleront super clairement

Pourquoi ai-je besoin de faire cela : J'ai utilisé la fonction COUNTA pour trouver les cellules non blanches dans une colonne. Cependant, elle renvoyait un nombre plus important que ce que j'attendais. J'ai débogué chaque cellule une par une, et à ma grande surprise, certaines cellules apparemment vierges affichaient COUNTA=0 et d'autres COUNTA=1, ce qui n'a aucun sens. Je n'ai pas pu voir la différence entre les deux. Il s'avère qu'un seul reste de blanc compte dans cette fonction, mais il n'est visible nulle part, ni dans la cellule ni dans la case d'entrée en haut.

Conclusion : Si vous comptez sur COUNTA pour des tâches importantes, vous feriez mieux de vous assurer qu'il ne compte pas ces espaces gênants dont vous ne savez peut-être pas qu'ils existent.

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

En général, je n'ai pas besoin de VBA, donc je préfère faire des choses excellentes en 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
Advertisement
0
0
2017-01-24 19:38:05 +0000
Advertisement

Cela ne répond pas exactement à votre question, mais j'y ai mis le format des nombres :

;;;'@'

pour les guillemets simples, ou ce

;;;\"@\"

pour les guillemets doubles. Cela permet d'enrouler les guillemets autour de n'importe quel texte saisi. J'ai également défini la police Courier New (ou toute autre police à largeur fixe).

Advertisement

Questions connexes

6
13
9
10
4
Advertisement