Các bạn xem giúp đoạn code này

  • Thread starter phoenixking
  • Ngày gửi
P

phoenixking

Thành viên sơ cấp
#1
Xin lõi các ban trước nha . mình đốt lăm
mình có code này không hiểu lắm xin được các bạn chỉ giáo .
F00_chamcong có : Finter(Combo box) , Txtgiolam , Cbngay , cmdsave , F00_chamcongdata (Form lòng vào Form F00_chamcong)
F00_chamcongdata có : sothe , hoten , mato , ngayvaoCty , 1 , 2 , ....đến , 31 , LyDoTV , NgayHauSan. (Form nay được load dữ liệu từ Q00_chamcong)
giờ minh muốn khi nhấn "CmdSave" thì dữ liệu ở "Txtgiolam" sẽ được Add vào F00_chamcongdata. Có điều kiện ph̉ải theo "Cbngay" VD : Cbngay =1 thì khi click vào "Cmdsave" sẽ add vào cột số 1 của F00_chamcongdata . mình làm được đến đây . đây là code :

Private Sub Cmdsave_Click()
Dim sql As String, msg As Integer, Msgb As Integer
msg = MsgBox("ban co thuc su muon thay doi khong", vbOKCancel)
If msg = vbOK Then
Select Case CbNgay
Case 1
sql = "select f00_chamcongdata.sothe, hoten, mato, ngayvaocty " & _
"from f00_chamcongdata where(( finter = '" & F00_ChamCongData.Form!MaTo & "'));"

sql = "update q00_chamcong set 1 = txtgiolam " & _
"Where (('" & Finter & "' = '" & F00_ChamCongData.Form!MaTo & "'));"
Case 2
sql = "update q00_chamcong set 2 = txtgiolam"
Case 3
sql = "update q00_chamcong set 3 = txtgiolam"
Case 4
sql = "update q00_chamcong set 4 = txtgiolam"
Case 5
sql = "update q00_chamcong set 5 = txtgiolam"
Case 6
sql = "update q00_chamcong set 6 = txtgiolam"
Case 7
sql = "update q00_chamcong set 7 = txtgiolam"
Case 8
sql = "update q00_chamcong set 8 = txtgiolam"
Case 9
sql = "update q00_chamcong set 9 = txtgiolam"
Case 10
sql = "update q00_chamcong set 10 = txtgiolam"
Case 11
sql = "update q00_chamcong set 11 = txtgiolam"
Case 12
sql = "update q00_chamcong set 12 = txtgiolam"
Case 13
sql = "update q00_chamcong set 13 = txtgiolam"
Case 14
sql = "update q00_chamcong set 14 = txtgiolam"
Case 15
sql = "update q00_chamcong set 15 = txtgiolam"
Case 16
sql = "update q00_chamcong set 16 = txtgiolam"
Case 17
sql = "update q00_chamcong set 17 = txtgiolam"
Case 18
sql = "update q00_chamcong set 18 = txtgiolam"
Case 19
sql = "update q00_chamcong set 19 = txtgiolam"
Case 20
sql = "update q00_chamcong set 20 = txtgiolam"
Case 21
sql = "update q00_chamcong set 21 = txtgiolam"
Case 22
sql = "update q00_chamcong set 22 = txtgiolam"
Case 23
sql = "update q00_chamcong set 23 = txtgiolam"
Case 24
sql = "update q00_chamcong set 24 = txtgiolam"
Case 25
sql = "update q00_chamcong set 25 = txtgiolam"
Case 26
sql = "update q00_chamcong set 26 = txtgiolam"
Case 27
sql = "update q00_chamcong set 27 = txtgiolam"
Case 28
sql = "update q00_chamcong set 28 = txtgiolam"
Case 29
sql = "update q00_chamcong set 29 = txtgiolam"
Case 30
sql = "update q00_chamcong set 30 = txtgiolam"
Case 31
sql = "update q00_chamcong set 31 = txtgiolam"
End Select
Else
End
End If
DoCmd.RunSQL sql
Me.Refresh
Finter.SetFocus
CmdSave.Enabled = False
End Sub

Còn một chổ nửa là khi add vào thi nó cứ add hét trơn a` không lọc ra theo (mato) từng tổ để add . Em không thể nghĩ ra cách viết Pó foot rùi
Ai bít xin xửa giúp em cám ơn nhìu .
Bạn nào Có thể giúp đở mình và muốn bít rõ hơn về chương trình xin vui lòng để lại Email Để minh send cho chương trình xem cho rõ nha các bạn . mình vo cùng cám ơn những bạn đã ghé wa . Mail mình Lả : Phoenixkinges@Gamil.com Rất hân hạnh được làm wen với tất cả các bạn .
 
Sửa lần cuối:
ruadangyeu

ruadangyeu

Thành viên sơ cấp
30/9/06
143
2
0
Hanoi
my.opera.com
#2
Cho mình hỏi một chút
Ngày xưa khi bạn học query trong access bạn có học ngôn ngữ sql không hay chỉ học giao diện đồ họa thôi.
Mình xem code thì cấu trúc không phức tạp lắm nhưng mà không nhì thấy form khó tưởng tượng yêu cầu của bạn quá.
Bạn có thể up cái form và module liên quan lên mọi người mới có thể giúp bạn được còn nói không thế này thì khó làm lắm
 
S

Song Huong

Thành viên thân thiết
#5
phoenixking nói:

Select Case CbNgay
Case 1
sql = "select f00_chamcongdata.sothe, hoten, mato, ngayvaocty " & _
"from f00_chamcongdata where(( finter = '" & F00_ChamCongData.Form!MaTo & "'));"

sql = "update q00_chamcong set 1 = txtgiolam " & _
"Where (('" & Finter & "' = '" & F00_ChamCongData.Form!MaTo & "'));"
Case 2
sql = "update q00_chamcong set 2 = txtgiolam"
Nếu bạn update cho ngày 1 thì câu SQL của bạn sẽ đúng

sql = "select f00_chamcongdata.sothe, hoten, mato, ngayvaocty " & _
"from f00_chamcongdata where(( finter = '" & F00_ChamCongData.Form!MaTo & "'));"
Câu này thừa.

Trường hợp bạn cần kiểm tra xem đã có record này hay chưa để quyết định update hay Insert thì dùng:

If Exists (Select * From f00_chamcongdata Where Finter = MaTo)
Update …
Else
Insert …

Bạn phải thêm ...Where Finter = Mato cho các Case còn lại.

sql = "Update q00_chamcong Set 2 = txtgiolam Where Finter = Mato"

Thân
 
Sửa lần cuối:

Thành viên trực tuyến

  • HT Hòa
  • daongocnam0603

Xem nhiều