Đánh giá chủ đề:
  • 0 Votes - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
[Help] Dùng hàm Do while lấy dữ liệu từ table lên form
#1
Em có 1 Bảng tên là DMTHUOC_TOA.
Em muốn tính tổng tiền thuốc trên toa đó bằng cách lấy ra (DonGia,SoLuong) những dòng nào có số thự tự toa là 15 để tính.
Code của em như sau:
Private Sub Command0_Click()
Dim DB As Database
Dim Rs As Recordset
Dim hope As Boolean
Dim stt As Integer
Dim dongia As Double
Dim tien As Double
Dim sluong As Integer
Set DB = CurrentDb()
Set Rs = DB.OpenRecordset("DMTHUOC_TOA", DB_OPEN_TABLE)
If (Rs.BOF) Then
MsgBox "KHONG CO DU LIEU"
Rs.Close
Exit Sub
End If
Rs.MoveFirst
bhope = False
'...
Do While ((Not Rs.EOF) And (Not bhope = True))
stt = Rs!STTToa
Debug.Print "stt toa..........", stt
If (stt = 15) Then
Debug.Print "11111111111111111111"
dongia = Rs!dongia
sluong = Rs!SoLuong
tien = dongia * sluong
Debug.Print "tong tien.....:", tien
bhope = True
Else
Rs.MoveNext
Debug.Print "22222222222222222"
End If
Loop
Rs.Close
End Sub
Nhưng em chỉ lấy ra đường dòng đâu tiền có số thứ tự toa là 15 thôi, mặc dù trong bảng của em có tất cả là 2 dòng như thế.?
Không biết là code e viết như thế sai ở chỗ nào mà ko đc như ý.
Mong sớm nhận đc sự hồi âm.
Chữ ký của vannguyen0206 Xin chào, mình là vannguyen0206, Tham gia http://thuthuataccess.com/forum từ ngày 13-04 -12.
Reply
Những người đã cảm ơn
#2
Sao không dùng Query để tính cho nó đơn giản mà viết code VBA lằng nhằng vậy bạn?
Hoặc muốn sửa Code thì sửa lại như sau:
Mã PHP:
Private Sub Command0_Click()
    
Dim DB As Database
    Dim Rs 
As Recordset
    Dim stt 
As Integer
    Dim dongia 
As Double
    Dim tien 
As Double
    Dim sluong 
As Integer
    Set DB 
CurrentDb()
    
Set Rs DB.OpenRecordset("DMTHUOC_TOA"DB_OPEN_TABLE)
    If (
Rs.BOFThen
        MsgBox 
"KHONG CO DU LIEU"
        
Rs.Close
        
Exit Sub
    End 
If
    
tien 0
    Rs
.MoveFirst
    
Do While Not Rs.EOF
        stt 
Rs!stt
        
If (stt 15Then
            dongia 
Rs!dongia
            sluong 
Rs!SoLuong
            tien 
tien + (dongia sluong)
            
Rs.MoveNext
        
Else
            
Rs.MoveNext
        End 
If
    
Loop
    Rs
.Close
    MsgBox 
"Tong tien: " tien
End Sub 
Chữ ký của nhannt4 Xin chào, mình là nhannt4, Tham gia http://thuthuataccess.com/forum từ ngày 22-07 -12.
Reply
Những người đã cảm ơn


Có thể liên quan đến chủ đề
Chủ đề: Tác giả Trả lời: Xem: Bài mới nhất
  Tự động hiện Form khi loading hết thời gian ChiMai 1 37 02-12-16, 08:59 PM
Bài mới nhất: ongke0711
  [Help] Cập nhật combobox 2 từ combobox 1 (dữ liệu ở nhiều bảng) votinh.tq 6 199 22-11-16, 11:34 PM
Bài mới nhất: votinh.tq
Photo [Hỏi] Mở Form trên access 2007 báo lỗi jason 5 187 22-11-16, 09:23 AM
Bài mới nhất: jason
  [Hỏi] Làm sao để ấn định Null cho trường Date khi sử dụng Class Module Minh Tiên 8 613 18-11-16, 09:29 AM
Bài mới nhất: MinhnHang
  Query hiện lên trên form? feeling 4 162 09-11-16, 09:49 PM
Bài mới nhất: toancvp

Chuyển nhanh:


User(s) browsing this thread: 1 Guest(s)
Diễn Đàn Thơ Văn Thi Ẩm Lâu|Nhà Hàng Sông Thơ