Hỏi về định dạng cell

Liên hệ QC

thiennx

Thành viên chính thức
Tham gia
18/9/08
Bài viết
73
Được thích
14
Nhờ các cao thủ chỉ giúp tình huống này,Em có 1 cột dữ liệu từ A1-A20, trong đó chỉ có dữ liệu từ A8-A13 có định dạng có 3 số sau dấu phẩy. Ở ô B1 gõ công thức = A1, sau đó kéo xuống đến B20. Vậy làm sao để giữ được định dạng ô B8-B13 cũng có định dạng có 3 số sau dấu phẩy. Xin cám ơn!
 

File đính kèm

  • Book1.xls
    13.5 KB · Đọc: 21
Nhờ các cao thủ chỉ giúp tình huống này,Em có 1 cột dữ liệu từ A1-A20, trong đó chỉ có dữ liệu từ A8-A13 có định dạng có 3 số sau dấu phẩy. Ở ô B1 gõ công thức = A1, sau đó kéo xuống đến B20. Vậy làm sao để giữ được định dạng ô B8-B13 cũng có định dạng có 3 số sau dấu phẩy. Xin cám ơn!
Câu hỏi thấy đơn giản thế chứ giải quyết thật không đơn giản tí nào
Cách thông thường nhất: dùng Format Painter (cây chổi), copy Format vùng nguồn rồi paste qua vùng kết quả ---> Vì hàm chỉ cho kết quả, không có khả năng thay đổi những gì liên quan đến Format của cell
Đương nhiên dùng code không có vấn đề, nhưng phí
 
Nhưng vấn đề thực tế là hai cái cột A,B như trong câu hỏi thì không ở cùng 1 file mà luôn ở 2 file khác nhau, và số dòng cần phải điều chỉnh lại khi kéo để copy là rất nhiều nên cần để tự động định dạng, nếu dùng chổi quét thì cũng mất nhiều thòi gian
 
Nhưng vấn đề thực tế là hai cái cột A,B như trong câu hỏi thì không ở cùng 1 file mà luôn ở 2 file khác nhau, và số dòng cần phải điều chỉnh lại khi kéo để copy là rất nhiều nên cần để tự động định dạng, nếu dùng chổi quét thì cũng mất nhiều thòi gian
Làm Excel tôi ít khi thấy yêu cầu này ---> Thực chất Excel quan trọng kết quả tính toán, định dạng chỉ là đẹp mắt, đâu phải là vấn đề quan trọng đến mức không có không được!
Thật ra cũng chưa hình dung rõ lắm vấn đề của bạn lắm! Tuy nhiên tôi nghĩ giải quyết vấn đề này chắc phải đụng đến code VBA rồi... Nếu bạn đồng ý, hãy đưa 2 file lên xem thử (ghi rõ yêu cầu vào file nha)
 
Mình có cách này không biết có đúng không, Bạn thử xem nhé?
1/ Bạn quét chọn từ ô B8:B13 vào format cho những ô này có 3 số lẻ như đề bài của bạn.
2/ Bạn chọn hết các ô từ ô B1 đến B20 -> Gõ công thức mà bạn muốn làm. và nhấn tổ hợp phím ctrl + enter là được.
 
Mình có cách này không biết có đúng không, Bạn thử xem nhé?
1/ Bạn quét chọn từ ô B8:B13 vào format cho những ô này có 3 số lẻ như đề bài của bạn.
2/ Bạn chọn hết các ô từ ô B1 đến B20 -> Gõ công thức mà bạn muốn làm. và nhấn tổ hợp phím ctrl + enter là được.
Trời... làm vậy chẳng hóa ra là làm bằng tay rồi còn gì... Mà chắc gì đã nhanh hơn cách dùng Format Painter
 
Bác ơi em làm về ngành điện, chuyên thiết kế cải tạo lưới điện 0,4kV-35kV nên cái định dạng 3 số sau dấu phẩy là số km, khi cải tạo 1 đoạn dây mà cần thay thế 234m thì cái định dạng trong bảng tính tổng và bảng dự toán đơn vị là km thì đwơng nhiên fải là 3 số sau dấu phẩy rồi, ko thể đẹp mắt đwợc vì nếu để bình thwờng nó thành 0 km mất.
Còn 2 file của em nó rất nhiều thứ, nhất là file dự toán nó có hơn 20 sheet em ko muốn đưa lên, nhờ bác làm code vào cái book1 em gửi lên cũng được, sau đấy em sẽ viết vào file của em sau. Cám ơn nhiều
 
Bác ơi em làm về ngành điện, chuyên thiết kế cải tạo lưới điện 0,4kV-35kV nên cái định dạng 3 số sau dấu phẩy là số km, khi cải tạo 1 đoạn dây mà cần thay thế 234m thì cái định dạng trong bảng tính tổng và bảng dự toán đơn vị là km thì đwơng nhiên fải là 3 số sau dấu phẩy rồi, ko thể đẹp mắt đwợc vì nếu để bình thwờng nó thành 0 km mất.
Còn 2 file của em nó rất nhiều thứ, nhất là file dự toán nó có hơn 20 sheet em ko muốn đưa lên, nhờ bác làm code vào cái book1 em gửi lên cũng được, sau đấy em sẽ viết vào file của em sau. Cám ơn nhiều
Làm đại... Bạn tùy biến thế nào sau đó là việc của bạn nhé!
 

File đính kèm

  • GetFormat.xls
    19.5 KB · Đọc: 18
Anh Du ơi của em nó đang là số, anh biến nó thành text thì làm sao em dùng nó để tính toán tiếp cho các cột bên cạnh đây.(Sau cột B nó là 8 cột nữa dùng kết quả ở cột B để tính toán)
 
Anh Du ơi của em nó đang là số, anh biến nó thành text thì làm sao em dùng nó để tính toán tiếp cho các cột bên cạnh đây.(Sau cột B nó là 8 cột nữa dùng kết quả ở cột B để tính toán)
Bạn nói sao chứ sao mà không tính được! Text thì text, tính thì tính... có vấn đề gì đâu
Bạn thử lấy mấy cái text ấy nhân hoặc cộng với 1 số nào đó xem nó ra kết quả không?
Nói thêm: Yêu cầu của bạn chắc chắn phải ra dạng TEXT rồi, không có cách khác đâu!
 
Đây là kết quả của anh đây, lỗi không tính được, mà sao format ở cột A là 8,000 mà kéo một cái lại thành 0.008
 
Đây là kết quả của anh đây, lỗi không tính được, mà sao format ở cột A là 8,000 mà kéo một cái lại thành 0.008
Không tính được chổ nào? Bạn thử đưa 1 ví dụ lên đây xem!
Làm gì có cái vụ: cột A là 8,000 mà kéo một cái lại thành 0.008 ---> Nếu có chăng là bạn đã định dạng sai từ cột A mà thôi!
 
Đây vẫn là cái file bác làm đây, em chỉ kéo có 1 nhát nó thế này
 

File đính kèm

  • Book1.xls
    20 KB · Đọc: 5
Đây vẫn là cái file bác làm đây, em chỉ kéo có 1 nhát nó thế này
Tôi biết vấn đề ở đâu rồi... Đoán 90% là trên máy bạn đang cài đặt định dạng số theo kiểu VN ---> Tức dấu phân cách ngàn là dấu chấm, còn dấu thập phân là dấu phẩy
Vì với file vừa rồi, tôi mở trên máy của tôi lại hoàn toàn không có vấn đề gì (tôi dùng định dạng chuẩn của Windows)
Quả thật là rắc rối với mấy cái định dạng "tự chế" ở VN
--------------
Tạm thời sửa code lại thế này (hơi chuối)
PHP:
Function GetFormat(Cell As Range) As String
  Application.Volatile
  If Application.DecimalSeparator = "," Then
    GetFormat = Replace(Cell.NumberFormat, ".", ",")
  Else
    GetFormat = Cell.NumberFormat
  End If
End Function
Bạn test lại thử xem!
 

File đính kèm

  • Book1.xls
    22 KB · Đọc: 7
Lần chỉnh sửa cuối:
Chắc chắn là vậy rồi, trường hợp máy của bạn do lỗi định dạng trong Regional and language Options.
Bạn vào đó set lại cho đúng chuẩn #,##.## là được.
 
Chắc chắn là vậy rồi, trường hợp máy của bạn do lỗi định dạng trong Regional and language Options.
Bạn vào đó set lại cho đúng chuẩn #,##.## là được.
Tạm thời thì làm thế hoặc dùng code đã sửa lại của tôi ở trên
Giá như biết toàn bộ ý đồ của tác giả (có 2 file đính kèm) thì biết đâu ta sẽ làm bằng 1 cách khác hay hơn ---> Vì thông thường, làm theo sự "dẩn dắt" của tác giả, có đến 90% kết quả toàn dở ẹt!
 
Vậy bây giờ em lại phải chuyển lại định dạng chuẩn của window ah? Có cách khắc phục không?
 
Rồi rất cám ơn thầy Du. vừa nãy thử code nhưng paste nhầm mất cái dòng option explicit nên không chạy được
 
Web KT
Back
Top Bottom