Xử lý số âm ở định dạng tùy chỉnh phức tạp (Microsoft Excel)
Douglas đang gặp một số vấn đề trong việc tìm định dạng tùy chỉnh mà anh ấy cần. Anh ấy đã tạo một định dạng tùy chỉnh hiển thị số lượng lớn theo cách anh ấy muốn, chẳng hạn như 1.000.000 đô la được hiển thị dưới dạng 1,0 triệu đô la và 1.000 đô la được hiển thị là 1,0 nghìn đô la. Định dạng này như sau:
[> 1000000] $ . 0 ,, “M”; [> 1000] $ #. 0, “K”; $ #, # 0.0. Douglas muốn biết cách điều chỉnh định dạng tùy chỉnh để các số âm xuất hiện theo cùng kiểu này, nhưng có màu đỏ với dấu ngoặc đơn xung quanh chúng, chẳng hạn như ($ 1,0K).
Thật không may, những gì bạn muốn làm không thể thực hiện được với một định dạng tùy chỉnh duy nhất. Lý do là vì một định dạng tùy chỉnh duy nhất chỉ có thể có bốn điều kiện, mỗi điều kiện được phân tách bằng dấu chấm phẩy. Đây là cú pháp chung của định dạng tùy chỉnh:
positive; negative; zero; text
Lưu ý rằng định dạng đầu tiên được sử dụng khi giá trị là dương, định dạng thứ hai khi là âm, định dạng thứ ba khi giá trị chính xác bằng 0 và định dạng thứ tư khi giá trị là văn bản. Mặc dù đây là cú pháp chung cho các định dạng tùy chỉnh, nhưng bạn có thể “sửa đổi” các định dạng một chút theo cách bạn đang làm. Xem xét định dạng bạn đang sử dụng:
[>1000000]$#.0,,"M";[>1000]$#.0,"K";$#,##0.0
Lưu ý rằng theo cú pháp chung, định dạng trước dấu chấm phẩy đầu tiên sẽ được sử dụng cho giá trị dương, định dạng tiếp theo cho giá trị âm và định dạng thứ ba cho giá trị 0. Tuy nhiên, đây không phải là cách Excel dịch định dạng tùy chỉnh này. Nó dịch là “nếu lớn hơn 1.000.000, hãy làm điều này; nếu lớn hơn 1.000 hãy làm điều này; người khác làm điều này”. Không có ý nghĩa tích cực hoặc tiêu cực trong định dạng; trên thực tế, bất kỳ giá trị âm nào đều được xử lý mặc định, là định dạng thứ ba.
Những gì bạn đang cố gắng làm là xác định hai điều kiện tích cực (một cho hàng triệu và một cho hàng nghìn) và hai điều kiện tiêu cực (một lần nữa, cho hàng triệu và hàng nghìn). Điều này không thể được thực hiện trong một định dạng tùy chỉnh duy nhất, bất kể bạn cố gắng kết hợp chúng như thế nào. Thay vào đó, bạn nên sử dụng hai định dạng tùy chỉnh, chẳng hạn như sau:
[>=1000000]$#.0,,"M ";[>=1000]$#.0,"K ";$#,##0.0 [Red][<=-1000000]($#.0,,"M");[Red][<=-1000]($#.0,"K");[Red]($#,##0.0)
Định dạng đầu tiên được sử dụng trong trường hợp giá trị dương; nó là một biến thể trên định dạng ban đầu được đề xuất ở đầu tiên của mẹo. Định dạng thứ hai sẽ được sử dụng với các giá trị âm. Các định dạng tùy chỉnh này sẽ cần được áp dụng theo cách thủ công, dựa trên giá trị trong ô.
Điều này có vẻ như rất nhiều công việc phải trải qua để có được định dạng bạn muốn. Có thể tạo macro áp dụng các định dạng, nhưng macro sẽ không phải là một nỗ lực tầm thường. Nó sẽ cần phải kiểm tra giá trị trong ô là gì, chọn định dạng thích hợp, xây dựng định dạng, đưa nó vào định dạng tùy chỉnh cho ô, rồi chuyển sang ô tiếp theo.
Một số người cũng có thể nghĩ rằng bạn có thể sử dụng định dạng có điều kiện trong trường hợp này. Tuy nhiên, định dạng có điều kiện không cho phép bạn sửa đổi cách trình bày số trong ô. Trong khi bạn có thể kiểm tra giá trị (ví dụ: hơn một nghìn hoặc một triệu), bạn không thể chia, làm tròn và thêm hậu tố vào giá trị trong ô. Bạn cũng không thể làm những việc như thêm dấu ngoặc đơn vào các giá trị âm.
ExcelTips là nguồn của bạn để đào tạo Microsoft Excel hiệu quả về chi phí.
Mẹo này (10226) áp dụng cho Microsoft Excel 97, 2000, 2002 và 2003.
Bạn có thể tìm thấy phiên bản của mẹo này cho giao diện ribbon của Excel (Excel 2007 trở lên) tại đây: