Nhờ cách xử lý font chữ

Liên hệ QC

logica

Thành viên thường trực
Tham gia
27/11/08
Bài viết
241
Được thích
253
Giới tính
Nam
Nghề nghiệp
Xây Dựng
Trong quá trình xử lý dữ liệu của các bảng biểu Excel tôi bị vấn đề về font chữ không biết phải làm sao. Rõ ràng là font chữ giống nhau và nội dung text như nhau nhưng khi dùng hàm so sánh thì Excel báo rằng không giống! Nay xin nhờ các sư huynh chỉ giáo dùm cách xử lý như thế nào. Xin cảm ơn nhiều!
 

File đính kèm

  • VD.xls
    13.5 KB · Đọc: 16
Trong quá trình xử lý dữ liệu của các bảng biểu Excel tôi bị vấn đề về font chữ không biết phải làm sao. Rõ ràng là font chữ giống nhau và nội dung text như nhau nhưng khi dùng hàm so sánh thì Excel báo rằng không giống! Nay xin nhờ các sư huynh chỉ giáo dùm cách xử lý như thế nào. Xin cảm ơn nhiều!
Đúng là nội dung như nhau, font chữ như nhau, nhưng vấn đề là bạn đã sử dụng 2 bảng mã khác nhau:

Ở ô A6, bạn dùng bảng mã Unicode dựng sẵn (chữ có dấu là một ký tự có sẵn), kết quả là độ dài của chuỗi ký tự trong ô A6 = 12 (Lịch = 4, Sử = 2, Đảng = 4, cộng thêm 2 khoảng trắng).

Ở ô A5, bạn dùng bảng mã Unicode tổ hợp (chữ riêng dấu riêng), kết quả là độ dài của chuỗi ký tự trong ô A5 = 15 (là như ô A6, nhưng cộng thêm 3 cái dấu: 1 dấu nặng và 2 dấu hỏi)...

Để kiểm tra tôi nói đúng hay sai, bạn dùng hàm LEN, gõ =LEN(A5) và =LEN(A6), bạn thấy liền.

Cách xử lý: Khi sử dụng Unicode, chỉ nên dùng một bảng mã thôi, và nên dùng Unicode dựng sẵn. Với những file lớn, sự chênh lệch về kích thước file giữa cách dùng 2 loại bảng mã Unicode này (tổ hợp và dựng sẵn) là không ít đâu! Có khi lên đến vài MB đó.

Nói ngoài lề: Cái công thức của bạn dài quá: =IF(A5=A6, TRUE, FALSE)
Chỉ cần vầy thôi nè: =A5=A6
 
Lần chỉnh sửa cuối:
Đúng là nội dung như nhau, font chữ như nhau, nhưng vấn đề là bạn đã sử dụng 2 bảng mã khác nhau:

Ở ô A6, bạn dùng bảng mã Unicode dựng sẵn (chữ có dấu là một ký tự có sẵn), kết quả là độ dài của chuỗi ký tự trong ô A6 = 12 (Lịch = 4, Sử = 2, Đảng = 4, cộng thêm 2 khoảng trắng).

Ở ô A5, bạn dùng bảng mã Unicode tổ hợp (chữ riêng dấu riêng), kết quả là độ dài của chuỗi ký tự trong ô A5 = 15 (là như ô A6, nhưng cộng thêm 3 cái dấu: 1 dấu nặng và 2 dấu hỏi)...

Để kiểm tra tôi nói đúng hay sai, bạn dùng hàm LEN, gõ =LEN(A5) và =LEN(A6), bạn thấy liền.

Cách xử lý: Khi sử dụng Unicode, chỉ nên dùng một bảng mã thôi, và nên dùng Unicode dựng sẵn. Với những file lớn, sự chênh lệch về kích thước file giữa cách dùng 2 loại bảng mã Unicode này (tổ hợp và dựng sẵn) là không ít đâu! Có khi lên đến vài MB đó.

Xin cảm ơn BNTT rất nhiều!Tôi cũng biết vấn đề như thế nhưng vì phải xử lý những bảng tính tổng hợp từ nhiều người nên chuyện dùng bảng mã khác nhau là không thể tránh khỏi.Xin BNTT hướng dẫn thêm dùm cách chuyển về cùng bảng mã nhé!Cảm ơn!
 
Xin cảm ơn BNTT rất nhiều!Tôi cũng biết vấn đề như thế nhưng vì phải xử lý những bảng tính tổng hợp từ nhiều người nên chuyện dùng bảng mã khác nhau là không thể tránh khỏi.Xin BNTT hướng dẫn thêm dùm cách chuyển về cùng bảng mã nhé!Cảm ơn!
Dễ lắm, nếu như bạn dùng bộ gõ Unikey.

Bạn chọn nguyên cột chứa dữ liệu tùm lum đó, nhấn Ctrl+C (copy), rồi nhấn Ctrl+Shift+F6, cái hộp thoại chuyển font của Unikey sẽ hiện ra:
000-1452.jpg

Ở cả hai ô nguồnđích, bạn đều chọn Unicode, và nhớ đánh dấu ô Chuyển mã clipboard (xem hình trên), rồi bạn nhấn nút Chuyển mã.

Quay lại bảng tính (cái cột mà bạn copy vẫn đang được chọn), bạn nhấn Ctrl+V để dán cái đã được Unikey chuyển mã vào.

Có vậy thôi.
 
xin hỏi thêm BNTT là mình có dùng hàm nào trong excel để giải quyết được vấn đề này ko vay?
 
Không, thưa bạn. Hàm của Excel không làm được.
Vì các bảng tính này dung lượng rất lớn mà phải thường xuyên cập nhật nội dung mới từ nhiều người khác nhau nên làm bằng cách chuyển bảng mã như BNTT hướng dẫn cực quá.BNTT có code VBA nào giải quyết chuyện này không?Có thể send cho tôi xin được không?Cảm ơn nhiều!
 
Web KT
Back
Top Bottom