xin viết giúp code cho nút Sửa phiếu (1 người xem)

Người dùng đang xem chủ đề này

quoc nhat

Thành viên tiêu biểu
Tham gia
8/3/12
Bài viết
567
Được thích
43
Nghề nghiệp
cán bộ ngành y tế
Chào các anh chị
Nhờ các anh chị viết giúp em đoạn code cho nút Tìm và nút Sửa phiếu
Nội dung em đã viết trên trong sheet trong File đính kèm.
Mong được sự giúp đỡ của mọi người
Em cảm ơn nhiều
 

File đính kèm

Chắc cận tết mọi người bận quá nên không có ai giúp cả.
Nếu có ai có time thì giúp em một tay nhé
em cảm ơn nhiều
//////.
 
Upvote 0
giúp em với mọi người ơi!
 
Upvote 0
giúp em với mọi người ơi!

1/ Bạn có làm thử bằng thủ công chưa?
2/ Các cột dữ liệu bên Data không đủ để điền đầy đủ cho bảng biểu bên Xuat Kho như Hạn dùng từ - Đến ... có đâu mà lấy.
3/ Dữ liệu bên Data kiểu đó thì khó cho việc lấy dữ liệu sang sheet Xuat Kho vì dòng có dòng không như cột số phiếu chẳng hạn, (cột 7 - Data). Nhìn bằng mắt thì bạn tự hiểu dòng nào không có dữ liệu thì "như trên" nhưng Excel gặp chuyện này làm rối rắm thêm.
Gặp dữ liệu không chuẩn nên rất nhiều người xem qua rồi ... đi luôn.
Tôi nghĩ rất nhiều người "ngứa tay" nhưng cũng "chạy".
-----------------------
Tặng bạn Sub này cho nút Sửa Phiếu.
Có điền thêm cho đầy cột Số Phiếu
Chuyện Lưu lại thì ... chưa biết.
PHP:
Public Sub Bate()
Dim sArr(), dArr(1 To 10, 1 To 25), tArr(), I As Long, J As Long, DK As Long, K As Long
With Sheets("DATA")
    sArr = .Range(.[A3], .[Y65536].End(xlUp)).Value
End With
DK = Sheets("xuat kho").[N49].Value
For I = 1 To UBound(sArr, 1)
    If sArr(I, 7) = DK Then
        K = K + 1
        For J = 1 To 25
            dArr(K, J) = sArr(I, J)
        Next J
    End If
Next I
ReDim tArr(1 To K, 1 To 10)
With Sheets("xuat kho")
    .[D53].Value = dArr(1, 4)
    .[J53].Value = IIf(dArr(1, 2) <> Empty, dArr(1, 2), dArr(1, 3))
    .[D55].Value = dArr(1, 1)
    .[J55].Value = IIf(dArr(1, 2) <> Empty, "Nam", "Nu")
    .[D57].Value = dArr(1, 8)
    .[K59].Value = dArr(1, 6)
    .[D53].Value = dArr(1, 4)
    For I = 1 To K
            tArr(I, 1) = dArr(I, 23)
            tArr(I, 3) = dArr(I, 25)
            tArr(I, 7) = "=VLOOKUP(RC[-6],BangGia,3,0)"
            tArr(I, 8) = dArr(I, 24)
            tArr(I, 9) = "=VLOOKUP(RC[-8],BangGia,4,0)"
            tArr(I, 10) = "=RC[-1]*RC[-2]"
    Next I
    .[B63:L68].ClearContents
    .[B63].Resize(K, 10) = tArr
End With
End Sub
 

File đính kèm

Lần chỉnh sửa cuối:
Upvote 0
1/ Bạn có làm thử bằng thủ công chưa?
2/ Các cột dữ liệu bên Data không đủ để điền đầy đủ cho bảng biểu bên Xuat Kho như Hạn dùng từ - Đến ... có đâu mà lấy.
3/ Dữ liệu bên Data kiểu đó thì khó cho việc lấy dữ liệu sang sheet Xuat Kho vì dòng có dòng không như cột số phiếu chẳng hạn, (cột 7 - Data). Nhìn bằng mắt thì bạn tự hiểu dòng nào không có dữ liệu thì "như trên" nhưng Excel gặp chuyện này làm rối rắm thêm.
Gặp dữ liệu không chuẩn nên rất nhiều người xem qua rồi ... đi luôn.
Tôi nghĩ rất nhiều người "ngứa tay" nhưng cũng "chạy".
Cảm ơn anh đã nhận xét:
em trả lời anh như sau:
1. Em đã làm thủ công rồi nhưng chỉ biết sử trực tiếp trên sheet Data
2. vì sheet Data không lưu hạn dùng nên không cần lấy thông tin về hạn dùng nên chỉ cần lấy số thẻ BHYT vì sheet Xuat kho sẽ dựa vào số thẻ BHYT lấy thông tin về thẻ BHYT đó có chứa ở sheet BHYT.
3. Em cũng thấy khó thật nhưng em có thể thêm đoạn code để sao chép dữ liệu của số phiếu đó vào dòng trống ví dụ:
1 phiếu có 5 dòng, 5 dòng đó có dữ liệu y chang nhau chỉ khác ở cột W,X,Y là khác nhau, mỗi dòng tương đương với 1 loại thuốc

Như thế có được không anh Ba tê
 

File đính kèm

Lần chỉnh sửa cuối:
Upvote 0
1/ Bạn có làm thử bằng thủ công chưa?
2/ Các cột dữ liệu bên Data không đủ để điền đầy đủ cho bảng biểu bên Xuat Kho như Hạn dùng từ - Đến ... có đâu mà lấy.
3/ Dữ liệu bên Data kiểu đó thì khó cho việc lấy dữ liệu sang sheet Xuat Kho vì dòng có dòng không như cột số phiếu chẳng hạn, (cột 7 - Data). Nhìn bằng mắt thì bạn tự hiểu dòng nào không có dữ liệu thì "như trên" nhưng Excel gặp chuyện này làm rối rắm thêm.
Gặp dữ liệu không chuẩn nên rất nhiều người xem qua rồi ... đi luôn.
Tôi nghĩ rất nhiều người "ngứa tay" nhưng cũng "chạy".
-----------------------
Tặng bạn Sub này cho nút Sửa Phiếu.
Có điền thêm cho đầy cột Số Phiếu
Chuyện Lưu lại thì ... chưa biết.
PHP:
Public Sub Bate()
Dim sArr(), dArr(1 To 10, 1 To 25), tArr(), I As Long, J As Long, DK As Long, K As Long
With Sheets("DATA")
    sArr = .Range(.[A3], .[Y65536].End(xlUp)).Value
End With
DK = Sheets("xuat kho").[N49].Value
For I = 1 To UBound(sArr, 1)
    If sArr(I, 7) = DK Then
        K = K + 1
        For J = 1 To 25
            dArr(K, J) = sArr(I, J)
        Next J
    End If
Next I
ReDim tArr(1 To K, 1 To 10)
With Sheets("xuat kho")
    .[D53].Value = dArr(1, 4)
    .[J53].Value = IIf(dArr(1, 2) <> Empty, dArr(1, 2), dArr(1, 3))
    .[D55].Value = dArr(1, 1)
    .[J55].Value = IIf(dArr(1, 2) <> Empty, "Nam", "Nu")
    .[D57].Value = dArr(1, 8)
    .[K59].Value = dArr(1, 6)
    .[D53].Value = dArr(1, 4)
    For I = 1 To K
            tArr(I, 1) = dArr(I, 23)
            tArr(I, 3) = dArr(I, 25)
            tArr(I, 7) = "=VLOOKUP(RC[-6],BangGia,3,0)"
            tArr(I, 8) = dArr(I, 24)
            tArr(I, 9) = "=VLOOKUP(RC[-8],BangGia,4,0)"
            tArr(I, 10) = "=RC[-1]*RC[-2]"
    Next I
    .[B63:L68].ClearContents
    .[B63].Resize(K, 10) = tArr
End With
End Sub
em có dùng thử nhưng khi thay đổi số phiếu và nhấn nút tìm thì không thấy nó nhúc nhích gì cả
 
Upvote 0
Upvote 0

Bài viết mới nhất

Back
Top Bottom