Tìm thủ thuật nhanh hơn với chức năng tìm trong Blog

11/11/2009

Không in số 0 trong report

Khi in 1 trường bằng số thì format #,### sẽ không in nếu dữ liệu bằng 0.
- format : #,###.## : 0 không in ra nhưng 300.00 thì in ra 300. (có 2 khoản trắng phía sau)
- format #,###.00 : 0 thì in ra 0.00; 300.15 in ra 300.15 (đúng)

Mình muốn format trường số với 2 số lẻ (ví dụ trường Ngoại tệ USD) khi dữ liệu bằng 0 sẽ không in ra nếu có dữ liệu thì sẽ in ra với 2 số lẻ:

Trong phần Detail_Format của report, bạn nhập code như sau:
Code:
If Soluongtxt.Value = 0 Then
Soluongtxt.DecimalPlaces = 0
Else
Soluongtxt.DecimalPlaces = 2
End If
soluongtxt là field bạn cần format!

2 nhận xét:

  1. Theo cách này: khi dữ liệu bằng 0 thì trong textbox vẫn hiện 0 và khi dữ liệu bằng 300 thì vẫn in ra 300.00. Ý của chủ topic là trong ô đó trắng cơ (không nhìn thấy gì) và các ô tròn số, sẽ không có phần thập phân.

    Trả lờiXóa
  2. - Ý của người hỏi là khi có số 300 thì vẫn phải in 300.00 ( Tùy vào yêu cầu về độ chính xác số liệu)
    - Ô trắng có giá trị bằng 0 chuyển thành ô trắng , ta có thể sửa thành như sau:
    If Soluongtxt.Value = 0 Then
    Soluongtxt.Value = ""
    Else
    Soluongtxt.DecimalPlaces = 2
    End If

    Hoặc đơn giản hơn trong field soluongtxt, ta cho Control source:
    = IIf([SoLuong]=0,Null,Format(SoLuong,"##,###.00"))


    Xem thêm: http://www.khoahocphothong.net/forum/co-so-du-lieu-database/148202-khong-so-0-trong-report-2.html

    Trả lờiXóa

» Hãy để lại tên, email của bạn khi bạn post comment, để mình có thể dễ dàng trả lời comment của bạn khi cần.
» Có thể sử dụng các thẻ < b>,< i>,< a>. Và các icon thông dụng trên YM