Đánh giá chủ đề:
  • 0 Votes - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
[Help] Từ bảng TH chuyển thành 2 bảng con
#1
Chào cả nhà!

Mình có 1 table TH muốn tách thành 2 bảng table đơn giản DS và CTDS từ bảng TH.
Hình đính kèm.

Cảm ơn !

Links file đính kèm :
http://www.mediafire.com/download/787bzv...6/Test.mdb
Chữ ký của daihoangtu Hãy chia sẻ kinh nghiệm cùng mình trên ThuThuatAccess nhé! Chúc vui vẻ rose
Reply
Những người đã cảm ơn
#2
Chào bạn !
Như dữ liệu của bạn Up thì ko thể thực hiện tách được, vì:
- Các trường tên thuốc trong table TH của bạn bạn gõ có dấu tiếng Việt + dấu phẩy (winking nên sẽ ko thể dùng code trong Access được;
Để làm được như yêu cầu của bạn, theo mình bạn tạo:
1. table Danhmucthuoc(stt, Mathuoc,Tenthuoc,DVT)
2. table DanhmucBenhnhan (stt,Mabenhnhan,Tenbenhnhan)
Khi thiết kế các trường trong table TH bạn thiết kế các Field theo như Mathuoc trong table Danhmucthuoc. Khi nhập thông tin vào table TH bạn nhập: Theo Mabenhnhan, số lượng thuốc, ...
3. Để tách danh sách như table DS bạn yêu cầu bạn chỉ việc lập query chọn các Field (ID, BABN,HOTEN) như trong qryDS trong File Demo đính kèm là OK !
4. Để tách thông tin như table CTDS bạn yêu cầu (Mình tạo CTDS_New), bạn tạo 1 sub trên Form1 như sau:
Mã:
Private Sub Command0_Click()
    Dim stt As Integer: stt = 0
    Dim intSoluong As Integer
    Dim strHoten As String
    Dim strTenthuoc As String
    Dim i As Integer
    Dim j As Integer
    Dim rst As Recordset
    Dim db As Database
    Set db = CurrentDb()
    Set rst = db.OpenRecordset("CTDS_New")
    If rst.RecordCount > 0 Then
        db.Execute "Delete * from CTDS_New"
    End If
    For i = 1 To DMax("[ID]", "qryDS")
        strHoten = DLookup("[Hoten]", "qryDS", "[ID]=" & i & "")
        For j = 1 To DMax("[stt]", "Danhmucthuoc")
        strTenthuoc = DLookup("[Mathuoc]", "Danhmucthuoc", "[stt]=" & j & "")
        intSoluong = Nz(DLookup(strTenthuoc, "TH", "[Hoten]='" & strHoten & "'"), 0)
        If intSoluong > 0 Then
            stt = stt + 1
            rst.AddNew
            rst!ID = stt
            rst!HOTEN = strHoten
            rst!TENTHUOC = strTenthuoc
            rst!SOLUONG = intSoluong
            rst.Update
        End If
        Next j
    Next i
    DoCmd.OpenTable "CTDS_New"
    rst.Close
    Set db = Nothing
End Sub
Gọi thực hiện sub này là OK !
Demo
Bạn biến tấu theo yêu cầu của bạn và Nhờ các Pro khác chỉ thêm.
Mong giúp được bạn !
Thân chào !
Chữ ký của Minh Tiên -----------------------------------------------
Đường tuy ngắn, không đi không đến
Việc tuy nhỏ, không làm không nên.
                                           Tuân Tử
-----------------------------------------------
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
  Lỗi không tạo file mới bằng định dạng .mdb feeling 4 87 29-11-16, 04:22 PM
Bài mới nhất: feeling
  thay đổi biểu tượng Access dưới thanh Start từ win 7 đến win 10 thanhtruong 7 434 05-08-16, 10:53 PM
Bài mới nhất: hungefi
  [Hỏi] Sử dụng phần mềm viết bằng Access trong mạng LAN chantroi_19 9 753 21-06-16, 10:33 AM
Bài mới nhất: lmthu
  Lỗi Access 2003 bị đóng băng theo hàng. imt0osexy 7 480 18-06-16, 11:19 AM
Bài mới nhất: maidinhdan
  [Hỏi] Cách tạo chương trình quét và nhận dạng vân tay bằng access nguyenhungcuong 4 252 10-06-16, 03:13 PM
Bài mới nhất: ongke0711

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ơ