Kiểu Format Number: General cho năm 2010 lạ quá!

Liên hệ QC

dvu58

Thành viên thường trực
Tham gia
29/4/07
Bài viết
298
Được thích
378
Chào các bạn.
Mình đang sử dụng MS Excel 2003.

Vấn đề:

+ Cell được format Number: General
+ Khi nhập tháng 10 năm 2009: dạng MM.yyyy như sau: 10.2009 thì -> 10.2009 (Được)
+ Khi nhập 10.2010 -> 10.201
+ Khi nhập 01.2010 -> 1.201
+ Tương tự nhập các tháng cho năm 2010 đều chuyển thành xx.201

Cách xử lý: Format Number -> Custom: MM.yyyy

Xin các bạn giải thích dùm.
Cảm ơn các bạn
 
Bạn phải nhập là 10-2010 hay 10/2010 sau đó định dạng mm.yyyy. Như trên bạn gõ 10.2010 thì Excel hiểu là bạn đang gõ số thập phân nên nó hiện 10.201 là đúng rồi.
 
Bạn phải nhập là 10-2010 hay 10/2010 sau đó định dạng mm.yyyy. Như trên bạn gõ 10.2010 thì Excel hiểu là bạn đang gõ số thập phân nên nó hiện 10.201 là đúng rồi.

Xin nói thêm:
1. Mình đã thiết lập từ Control Panel -> Regional And language -> Customize-> Date -> short date: dd.MM.yyyy và separator là dấu chấm phân cách rồi!

(Chắc cũng xin nói thêm: Về định dạng ngày tháng năm thì ngày là "d" (d nhỏ), tháng là "M" (M lớn) và năm là "y" (y nhỏ): VD: dd.MM.yyyy (có lẽ để phân biệt với kiểu dùng đã được định nghĩa hh:mm:ss

Đúng là khi format, người dùng dùng mm.yyyy cũng chẳng sao cả. Nhưng nên dùng theo cách đã được định nghĩa.
)

2.Tiếp theo, định dạng Cells -> number -> Custom: MM.yyyy rồi gõ luôn 10.2010 là được thôi chứ đâu cần phải gõ 10-2010 hoặc 10/2010 rồi mới format MM.yyyy. Khi mình thiết đặt từ control panel thì toàn hệ thống (dưới windows) đều áp dụng hệ thống ngày tháng năm cùng kiểu rồi cơ mà!

3. Mình đồng ý là có thể Excel đã tự hiểu 10.2010 là số thập phân vì có lẽ khi thiết lập kiểu ngày tháng năm ở Regional and Language, mình đã vô tình dùng dấu phân cách là dấu chấm (.) trùng với kiểu dùng dấu phân cách số thập phân cũng là dấu chấm(.) nên khi nhập số 10.2010 thì Excel đã tự chuyển đổi sang dạng số thập phân chăng?

Mong tiếp tục đón nhận thêm ý kiến của các bạn.
Xin cảm ơn bạn ptlong04x1
 
Anh dvu58 à, sao em làm y như anh, thì không bị trường hợp đó?

Nghĩa là nhập 10.2010 vẫn ra là 10.2010 (tháng 10 năm 2010), không bị bỏ bớt số 0.
 
Chào các bạn.
Mình đang sử dụng MS Excel 2003.

Vấn đề:

+ Cell được format Number: General
+ Khi nhập tháng 10 năm 2009: dạng MM.yyyy như sau: 10.2009 thì -> 10.2009 (Được)
+ Khi nhập 10.2010 -> 10.201
+ Khi nhập 01.2010 -> 1.201
+ Tương tự nhập các tháng cho năm 2010 đều chuyển thành xx.201

Cách xử lý: Format Number -> Custom: MM.yyyy

Xin các bạn giải thích dùm.
Cảm ơn các bạn
Theo em thì anh đừng nên chỉnh gì trong Control Panel (cùng lắm chỉ chỉnh Only dd/mm/yyyy mà thôi)
Đụng đến khu vực nhạy cảm này dể rách việc lắm ---> Nếu anh muốn hiển thị theo dạng MM.yyyy sao anh không dùng Custom Format ---> Đây mới là CHUẨN
 
Anh dvu58 à, sao em làm y như anh, thì không bị trường hợp đó?

Nghĩa là nhập 10.2010 vẫn ra là 10.2010 (tháng 10 năm 2010), không bị bỏ bớt số 0.

BNTT thân.

Mình thử nhiều máy và hầu như máy nào cũng bị tình trạng này.
Không biết General có xác lập độ ưu tiên không (VD nếu nhập 10.2010 thì ưu tiên chọn kiểu số thập phân trước kiểu Date không nhỉ?)

Hay là máy của bạn đã format Custom: MM.yyyy rồi?

Theo em thì anh đừng nên chỉnh gì trong Control Panel (cùng lắm chỉ chỉnh Only dd/mm/yyyy mà thôi)
Đụng đến khu vực nhạy cảm này dể rách việc lắm ---> Nếu anh muốn hiển thị theo dạng MM.yyyy sao anh không dùng Custom Format ---> Đây mới là CHUẨN

Chào ndu96081631.

Thật ra chỉnh Date từ Control Panel -> Regional and Language cũng không phải là chỗ nhạy cảm lắm. Mình muốn chỉnh nó để dùng hệ ngày tháng theo Việt Nam cho toàn hệ thống và cũng dễ nhìn, dễ sử dụng luôn trong cả Excel luôn mà! (Cái này mới chính là chuẩn đấy! còn Custom Format chỉ "nội bộ" thôi!)

Còn cách xử lý thì mình đã có rồi (đã nói ở trên). Mình muốn nêu vấn đề để các bạn giúp mình hiểu kỹ hơn về cơ chế hoạt động của Excel chứ kiểu ngày tháng phức tạp lắm!
 
Chỉnh sửa lần cuối bởi điều hành viên:
Giải thích kiểu Excel coi số nhập vào là số thập phân là chính xác, nhưng Excel nhất quán lắm, không lung tung đâu:

Thứ nhất:

Sau khi Set Regional language Option thành MM.yyyy:
- Gõ 10.2009, tưởng là được, nhưng không phải thế, đó là số không phải ngày. Thử nhân ô đó với 10 thì biết ngay. Hoặc cộng 2 vào ô đó, sẽ ra 12.2009, cộng 5 sẽ ra 15.2009.
- Gõ 10.2010 sẽ hiện trên màn hình là 10.201, tưởng là sai, thật ra là đúng. Nếu định dạng 4 số thập phân thì ra cái mà bạn cho là tháng 10 năm 2009 hoặc tháng 10 năm 2010.

Có thể dòm trên formula bar cũng thấy kết quả: đó là số thập phân, 10.2009 và 10.201

Thứ 2:

nếu định dạng trước là Custom MM.yyyy, khi bạn gõ tháng năm bất kỳ nó sẽ thể hiện đúng như mong muốn: 10.2009 và 10.2010
Tuy nhiên, nhìn trên formula bar bạn sẽ thấy 01.10.2009 và 01.10.2010, nghĩa là Excel tự nhét thêm ngày 01 vào cho đủ bộ ngày tháng.
Nếu bạn cộng thêm 1 số ngày (thí dụ 32) vào ô đó sẽ thấy kết quả là tháng 11 năm 2009 (theo định dạng sẽ là 11.2009 hoặc 11.2010), nếu cộng 1 số bằng hoặc nhỏ hơn 30, sẽ thấy kết quả hiện ra vẫn y nguyên. Như vậy mới là ngày tháng đích thực.

Như vậy câu suy đoán này sai:

Không biết General có xác lập độ ưu tiên không (VD nếu nhập 10.2010 thì ưu tiên chọn kiểu số thập phân trước kiểu Date không nhỉ?)

Cả 10.2009 và 10.2010 đều là số thập phân cả. Không biết BNTT có ngó trên thanh công thức không nhỉ?

Và: Nếu phải Custom format, thì không nhất thiết phải set Control panel

Ý kiến riêng:

Format customs dùng để định dạng cho những kiểu thể hiện không giống trong control panel, nhưng tôi sẽ chỉ dùng cho những trường hợp như MM/yyyy cho tháng, hoặc "000" cho số thứ tự, ... nhằm trình bày.
Còn dùng Customs để định dạng dd.MM.yyyy thì tôi mới thấy lần đầu, và chắc cũng chẳng mấy ai dùng trên thế giới. (dd-MM-yyyy thì có)
 
Lần chỉnh sửa cuối:
Hì hì... cam đoan với mấy anh rằng, 10.2010 mà em nhập và em thây là tháng 10 năm 2010, chính xác luôn!

Nếu nhìn lên thanh công thức, sẽ thấy 01.10.2010, cũng chính xác luôn, bởi vì, nếu không nhập ngày, thì mặc định Excel sẽ hiểu đó là ngày 01.
Và nếu +1, nó sẽ ra kết quả là 02.10.2010

Chỉ còn một chuyện mà em chưa nói: Em test trên Excel 2007 và 2010, chứ không có Excel 2003 để test.
 
Khà khà, Cam đoan với BNTT rằng, BNTT đã định dạng custom trước khi gõ. (trường hợp 2 bài trên)
Nếu để nguyên general như bài 1 của chủ topic,(trường hợp 1 bài trên) mà gõ ra ngày, lão chết tiệt thua 1 chầu, chầu gì cũng chịu.
 
Lần chỉnh sửa cuối:
Dear anh dvu58,

Dữ liệu kiểu General là bao hàm tất cả các kiểu khác trong Excel, nên nó có thể là Date và cũng có thể là Number.

Mặc dù anh đã điều chỉnh Date trong Control Panel dùng . làm seperator và anh để kiểu dữ liệu là General khi nhập ngày dạng 10.2010 thì Excle sẽ hiểu đó là dữ liệu dạng số (vì khi đó Excel có 2 lựa chọn là dữ liệu dạng Number (default) và dữ liệu dạng Date (option)) --> Excel sẽ chọn default trước nếu không có khai báo nào khác. Do vậy, anh cần qui định trước các vùng cần nhập liệu trên bảng tính với các kiểu dữ liệu tương ứng.

Thanh Phong
 
Lần chỉnh sửa cuối:
Ý kiến riêng:

Còn dùng Customs để định dạng dd.MM.yyyy thì tôi mới thấy lần đầu, và chắc cũng chẳng mấy ai dùng trên thế giới. (dd-MM-yyyy thì có)

Phần này chưa thỏa đáng lắm!

dd.MM.yyyy cũng được dùng khá phổ biến. Hơn nữa, trong Regional And Language cũng cho phép người dùng có thể chọn 1 trong 3 dấu phân cách (separator):

1. Dấu "/"
2. Dấu "-"
3. Dấu "."

Nếu các bạn còn sử dụng Win XP về trước, vào Control Panel sẽ thấy rõ hơn
Rất nhiều biểu mẫu, danh sách đã dùng dạng này (dd.MM.yyyy)

Tóm lại, xin cảm ơn các bạn đã tham gia đề tài, đã giúp tôi hiểu rõ hơn về cách định dạng dữ liệu nói chung, kiểu Date nói riêng. Chúc các bạn thật vui và khỏe!


Nhân tiện, nhiều nội dung của Regional And Language tôi chưa rõ lắm nên rất mong anh Thanh Phong có bài viết thêm về Regional And Language. Trân trọng cảm ơn anh Thanh Phong.
 
Lần chỉnh sửa cuối:
Cái ý chính tôi muốn nói trong topic này là:
Nếu chỉ set control panel không thôi, mà không định dạng custom cho vùng dữ liệu, thì khi gõ tháng năm dạng 10.2009 thì sẽ vẫn chỉ là số (Cũng như thanhphong nói, nhưng thanhphong nói rõ ràng hơn tôi).

Ban đầu ở bài 1, và ngay cả tiêu đề topic này, bạn nói rằng gõ như vậy sẽ đúng cho 10.2009 và sai cho 10.2010. Thực tế là sai hết, chẳng có số nào là ngày tháng cả.

Nếu bạn thử tiếp với 10.2011, chắc bạn sẽ cho rằng đúng? Và sẽ đúng cho đến 10.2019, rồi lại sai cho 10.2020?

Đành rằng thanhphong đã giải thích rõ ràng, và bạn đã hiểu rõ vấn đề, nhưng tôi chỉ muốn nói thêm về cái căn bản ban đầu, vì sao bạn mở topic này mà thôi.
 
Lần chỉnh sửa cuối:
Web KT
Back
Top Bottom