มีตัวเลือกใน MS Excel 2010 ที่จะแสดงอักขระที่ไม่พิมพ์ภายในเซลล์ (เช่นช่องว่างหรืออักขระบรรทัดคำแนะนำโดยการกด Alt-Enter) หรือไม่
มีตัวเลือกใน MS Excel 2010 ที่จะแสดงอักขระที่ไม่พิมพ์ภายในเซลล์ (เช่นช่องว่างหรืออักขระบรรทัดคำแนะนำโดยการกด Alt-Enter) หรือไม่
คำตอบ:
ในขณะที่คุณไม่สามารถแสดงอักขระพิเศษในเซลล์ได้โดยตรงคุณสามารถใช้สูตรในคอลัมน์ที่อยู่ติดกัน (แทรก) เพื่อแทนที่ Enters และ Spaces ด้วยอักขระที่คุณเลือก!
เช่น
= SUBSTITUTE (A1;" ";" ¶ ")จะแทนที่ linebreak ใด ๆ ด้วยสัญลักษณ์คำสำหรับการแบ่งบรรทัด และสูตรที่ซ้อนกัน
= SUBSTITUTE (SUBSTITUTE (A1;" ";" ¶ ");" ";" _ ")จะแทนที่ทั้งเว้นวรรคและป้อน (หมายเหตุ: ในการป้อน "Enter" ในสูตรคุณต้องกด
Alt+Enter
ขณะแก้ไขสูตร
วิธีที่ง่ายที่สุดในการทำคือเปลี่ยนฟอนต์เป็นฟอนต์ที่มี glyph ที่มองเห็นในตัวสำหรับพื้นที่ (หรืออักขระอื่น ๆ ที่คุณอาจต้องระบุ)
น่าเสียดายที่ฉันไม่มีตัวอย่างที่ดีของแบบอักษรดังกล่าวที่จะให้คุณ แต่มันง่ายมากที่จะเพิ่มจุดเล็ก ๆ ลงในแบบอักษรที่มีอยู่โดยใช้ซอฟต์แวร์ตัวแก้ไขแบบอักษรใด ๆ อย่าลืมเปลี่ยนชื่อฟอนต์ (ไม่ใช่ไฟล์ฟอนต์ แต่เป็นฟอนต์ NAME ภายในไฟล์ฟอนต์) เพื่อให้ง่ายต่อการแยกความแตกต่างของฟอนต์ที่กำหนดเองนี้จากฟอนต์ดั้งเดิมถ้าคุณติดตั้งทั้งคู่
แก้ไขในที่สุดฉันก็ถึงเวลาที่จะทำให้ตัวอักษรดังกล่าว! นี่คือ DottedSpace Mono ซึ่งมาจาก Bitstream Vera Sans Mono แต่มีช่องว่างแบบบิวด์อิน build-in:
CTRL + H แทนที่ช่องว่างทั้งหมดด้วย a ~ ซึ่งจะช่วยให้มีช่องว่างได้อย่างรวดเร็วโดยไม่ต้องเขียนโปรแกรมและย้อนกลับเพียงแทนที่ด้วย ~ ""
โปรแกรมที่ดีที่สุดที่ฉันพบสำหรับการเปรียบเทียบไฟล์ประเภทนี้ที่ข้อความไม่แสดงคือ Ultra Edit ต้องใช้มันเพื่อเปรียบเทียบไฟล์ EDI, ไฟล์อินเตอร์เฟส, การอัปโหลดทางเทคนิคเป็นต้น MS Office เพียง แต่ไม่ได้มีความพร้อมสำหรับงาน
Alt-Enter
)
การเปลี่ยนแบบอักษรเป็นประเภท "Terminal" จะช่วยให้คุณเห็นและแก้ไขได้
ไม่ตอบคำถามของคุณอย่างแน่นอน แต่ฉันได้กำหนดรูปแบบตัวเลขเป็น:
;;;'@'
สำหรับคำพูดเดียวหรือนี่
;;;\"@\"
สำหรับเครื่องหมายคำพูดคู่ ที่ล้อมรอบคำพูดรอบข้อความที่ป้อน ฉันยังตั้งแบบอักษรเป็น Courier ใหม่ (หรือแบบอักษรที่มีความกว้างคงที่อื่น ๆ )
1 ใช้การค้นหาและป้อนพื้นที่
2 ทำการแทนที่ทั้งหมดและพิมพ์ใน "[space]"
3 ตัวเลือก: หากคุณต้องการเน้นทั้งเซลล์ด้วยสีแดงด้วยเพียงแค่ใช้ตัวเลือกรูปแบบถัดจากนั้น
ผลลัพธ์: ช่องว่างที่น่ารำคาญเหล่านั้นจะเปิดเผยตัวเองอย่างชัดเจน
ทำไมฉันต้องทำสิ่งนี้: ฉันใช้ฟังก์ชัน COUNTA เพื่อค้นหาเซลล์ที่ไม่ว่างในคอลัมน์ อย่างไรก็ตามมันกลับมามีขนาดใหญ่กว่าที่ฉันคาดไว้ ฉัน debugged แต่ละเซลล์ทีละคนและเพื่อความประหลาดใจของฉันเซลล์ว่างเปล่าที่เห็นได้ชัดบางอย่างแสดงให้เห็นว่า COUNTA = 0 และคนอื่น ๆ แสดงให้เห็นว่า COUNTA = 1 ซึ่งไม่มีเหตุผล ฉันไม่เห็นความแตกต่างระหว่างคนทั้งสอง มันจะนับเป็นค่าว่างที่เหลืออยู่ในฟังก์ชันนั้น แต่จะมองไม่เห็นไม่ว่าจะอยู่ที่ใดในเซลล์หรือช่องป้อนข้อมูลที่ด้านบน
สรุป: หากคุณพึ่งพา COUNTA สำหรับงานที่สำคัญคุณควรตรวจสอบให้แน่ใจว่าไม่ได้นับช่องว่างที่เป็นปัญหาที่คุณอาจไม่ทราบ
ปกติฉันไม่ต้องการ VBA ดังนั้นฉันชอบทำ excel ใน 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")
เซลล์ถัดจากเซลล์ถัดจากเซลล์หรือคุณสามารถใช้การจัดรูปแบบตามเงื่อนไขโดยใช้เครื่องหมายถ่าน () (หรือ chr ใน VBA) เพื่อค้นหาการส่งคืน carraige (ถ่าน (13)) หรืออักขระอื่น ๆนี่คือ ลิงก์ไปยังหมายเลขถ่าน