Có một tùy chọn trong MS Excel 2010 sẽ hiển thị các ký tự không in trong một ô (ví dụ: khoảng trắng hoặc ký tự ngắt dòng được giới thiệu bằng cách nhấn Alt-Enter)?
Có một tùy chọn trong MS Excel 2010 sẽ hiển thị các ký tự không in trong một ô (ví dụ: khoảng trắng hoặc ký tự ngắt dòng được giới thiệu bằng cách nhấn Alt-Enter)?
Câu trả lời:
Mặc dù bạn không thể hiển thị các ký tự đặc biệt trực tiếp trong ô, bạn có thể sử dụng công thức trong cột liền kề (được chèn) để thay thế Enters và Spaces bằng các ký tự bạn chọn!
Ví dụ
= SUBSTITUTE (A1; " ";" ¶ ")sẽ thay thế bất kỳ ngắt dòng nào bằng ký hiệu từ cho ngắt dòng. Và công thức lồng nhau
= SUBSTITUTE (SUBSTITUTE (A1; " ";" ¶ ");" ";" _ ")sẽ thay thế cả hai, không gian và nhập. (Lưu ý: để nhập "Enter" trong công thức, bạn cần nhấn
Alt+Enter
trong khi chỉnh sửa công thức.
Cách dễ nhất để làm điều đó là chỉ cần thay đổi phông chữ thành phông chữ có glyph hiển thị tích hợp cho khoảng trắng (hoặc bất kỳ ký tự nào khác mà bạn có thể cần xác định)
Thật không may, tôi không có ví dụ hay về phông chữ như vậy để cung cấp cho bạn, nhưng rất dễ dàng để thêm một dấu chấm nhỏ vào phông chữ hiện có, sử dụng bất kỳ phần mềm chỉnh sửa phông chữ nào. Chỉ cần quên đổi tên phông chữ (không phải tệp phông chữ, mà là TÊN phông chữ bên trong tệp phông chữ) để dễ dàng phân biệt phông chữ tùy chỉnh này với phông chữ gốc nếu bạn đã cài đặt cả hai.
EDIT Cuối cùng tôi đã tìm thấy thời gian để tạo ra một phông chữ như vậy! Ở đây có DopedSpace Mono, dựa trên Bitstream Vera Sans Mono, nhưng với các không gian rải rác tích hợp:
CTRL + H thay thế tất cả các khoảng trắng bằng a ~ Điều này sẽ giúp nhanh chóng cho các không gian mà không cần lập trình và để đảo ngược chỉ cần thay thế ~ bằng "".
Chương trình tốt nhất tôi tìm thấy để so sánh các loại tệp này mà văn bản không hiển thị là Ultra Edit. Phải sử dụng nó để so sánh các tệp EDI, tệp giao diện, tải lên kỹ thuật, v.v. MS Office không được trang bị tốt cho nhiệm vụ.
Alt-Enter
)
Thay đổi phông chữ thành loại "Terminal" sẽ giúp bạn nhìn thấy và thay đổi chúng.
Không trả lời chính xác câu hỏi của bạn, nhưng tôi đặt định dạng số thành này:
;;;'@'
cho dấu ngoặc đơn, hoặc cái này
;;;\"@\"
cho dấu ngoặc kép. Đó là kết thúc trích dẫn xung quanh bất kỳ văn bản nhập. Tôi cũng đặt phông chữ thành Courier New (hoặc bất kỳ phông chữ có chiều rộng cố định nào khác).
1 Sử dụng tìm và nhập không gian
2 Thay thế Tất cả và nhập "[dấu cách]"
3 Tùy chọn: Nếu bạn cũng muốn làm nổi bật toàn bộ ô màu đỏ, chỉ cần sử dụng bộ chọn định dạng bên cạnh đó
Kết quả: Những không gian phiền phức đó sẽ lộ diện siêu rõ
Tại sao tôi cần phải làm điều này: Tôi đã sử dụng hàm COUNTA để tìm các ô không trống trong một cột. Tuy nhiên, nó đã trả lại một con số lớn hơn tôi mong đợi. Tôi đã gỡ lỗi từng ô một, và với sự kinh ngạc của tôi, một số ô trống dường như hiển thị COUNTA = 0 và các ô khác hiển thị COUNTA = 1 không có ý nghĩa gì. Tôi KHÔNG thể thấy sự khác biệt giữa hai. Nó chỉ ra một số lượng trống còn lại trong hàm đó, nhưng nó không hiển thị BẤT CỨ NƠI NÀO trong ô hoặc hộp nhập ở trên cùng.
Kết luận: Nếu bạn đang dựa vào COUNTA cho các nhiệm vụ quan trọng, bạn nên chắc chắn rằng nó không tính những không gian rắc rối mà bạn có thể không biết là có.
Tôi thường không cần VBA, vì vậy tôi thích làm excel trong 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
=IF(CLEAN(A1)=A1,"NA","Needs Cleaning")
vào ô bên cạnh ô bên cạnh hoặc bạn có thể sử dụng định dạng có điều kiện bằng cách sử dụng ký hiệu char () (hoặc chr trong VBA) để tìm kiếm trả về carraige (char (13)) hoặc bất kỳ ký tự nào khác, ở đây là một liên kết đến các số char