Trích lọc dữ liệu sang sheet khác theo một cấu trúc khác (1 người xem)

Liên hệ QC

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

sonthanh8484

Thành viên mới
Tham gia
19/7/12
Bài viết
10
Được thích
1
Đây là phần quản lý thu tiền học sinh trong trường thpt. Mình muốn trích lọc thông tin của học sinh có tham gia BHYT với các thông tin có sẵn trong sheet "noptien". Các thông tin được trích sẽ đưa sang sheet DSTGBHYT theo đúng cấu trúc của sheet này. Sử dụng nút lệnh để mỗi lần có cập nhật chỉ cần nhấn vào nút (sử dụng VBA). Mong mọi người giúp đỡ. Nếu giải thích các dòng code trong chương trình thì chân thành cảm ơn. -\\/.
Mong mọi người giúp giải quyết. Minh đang rất cần nhưng chỉ trích lọc được trong một sheet bằng advanced filter. Mình lại yếu VBA mong giúp đỡ.
 

File đính kèm

Lần chỉnh sửa cuối:
Đây là phần quản lý thu tiền học sinh trong trường thpt. Mình muốn trích lọc thông tin của học sinh có tham gia BHYT với các thông tin có sẵn trong sheet "noptien". Các thông tin được trích sẽ đưa sang sheet DSTGBHYT theo đúng cấu trúc của sheet này. Sử dụng nút lệnh để mỗi lần có cập nhật chỉ cần nhấn vào nút (sử dụng VBA). Mong mọi người giúp đỡ. Nếu giải thích các dòng code trong chương trình thì chân thành cảm ơn. -\\/.
Mong mọi người giúp giải quyết. Minh đang rất cần nhưng chỉ trích lọc được trong một sheet bằng advanced filter. Mình lại yếu VBA mong giúp đỡ.
Cái danh sách bên sheet NOPTIEN làm gì có thông tin liên quan đến sheet DSTGBHXH ngoài cái tên, bạn định lấy cái gì để cập nhật đây??? (Lại cung cấp thông tin kiểu nhỏ giọt)
 
Cái danh sách bên sheet NOPTIEN làm gì có thông tin liên quan đến sheet DSTGBHXH ngoài cái tên, bạn định lấy cái gì để cập nhật đây??? (Lại cung cấp thông tin kiểu nhỏ giọt)
Cả chương trình lớn dung lượng 16mB mình post không được. Mục đích là lọc ra danh sách các học sinh có tham gia bảo hiểm y tế nên điều kiện lọc là có tham gia bảo hiểm y tế. Trích lọc sang sheet DSTGBHYT theo thứ tự các cột khác nhau. Minh mong được giúp đỡ tạo ra một nút bấm. Mỗi lần bấm thì sẽ tự lọc đưa sang. Cập nhật ở đây có nghĩa là khi danh sách nộp tiền thay đổi (HSinh đóng tiền tham gia BHYT nhưng sau đó trường phải trả lại hoặc có học sinh bổ sung tiền học phí). Minh đã bổ sung thông tin. Bên sheet DSTGBHYT Cột Địa chĩ chính là lớp.
 

File đính kèm

Lần chỉnh sửa cuối:
sheet Notien vừa thừa vừa thiếu thông tin khi trích lọc sang sheet DSTGBHYT. Ví dụ lớp đưa vào cột nào? Phần lớn các cột ở sheet DSTGBHYT sẽ bị bỏ trống. Trích lọc kiểu này hơi lạ. Bạn cần nói rõ thêm.
 
Mình có sửa chữa rồi. Cột lớp đưa vào cột Địa chỉ. Đúng rồi phần lớn là bỏ trống.
 
Cả chương trình lớn dung lượng 16mB mình post không được. Mục đích là lọc ra danh sách các học sinh có tham gia bảo hiểm y tế nên điều kiện lọc là có tham gia bảo hiểm y tế. Trích lọc sang sheet DSTGBHYT theo thứ tự các cột khác nhau. Minh mong được giúp đỡ tạo ra một nút bấm. Mỗi lần bấm thì sẽ tự lọc đưa sang. Cập nhật ở đây có nghĩa là khi danh sách nộp tiền thay đổi (HSinh đóng tiền tham gia BHYT nhưng sau đó trường phải trả lại hoặc có học sinh bổ sung tiền học phí). Minh đã bổ sung thông tin. Bên sheet DSTGBHYT Cột Địa chĩ chính là lớp.
Sao lại cứ phải tạo nút bấm? Cho nó hoành tráng ư?
Dùng tạm cột phụ và hàm thử nhé! Dữ liệu thiếu nhiều wa? Năm sinh, nơi đăng ký ....
 

File đính kèm

Xem file đính kèm. Làm giúp bạn nút "GO" để chạy macro nè.

Hoặc, copy đoạn code dưới đây vô 1 module nào đó. Rôì assign macro BHYT cho 1 đối tượng (nút, art) nào mà bạn muốn.

---------
'''writen by MoCS
'''Aug 22, 2012
Sub BHYT()

Dim src As Worksheet
Dim des As Worksheet
Dim sFomular As String
Dim studentcount, i, rowcount As Integer
Dim BHYT As String 'col E
Dim NAME1 As String ' col B
Dim NAME2 As String ' col C
Dim CLASS As String ' col D (src), G (des)
Dim FEMALE As String ' col F
Dim ID As String 'col A

'Value will be pasted to DSTGBHYT sheet start at the row
Dim iDesStartRow As Integer
iDesStartRow = 9

Set src = Application.Sheets(1)
Set des = Application.Sheets(2)

'i assumed that students are located on column A
sFomular = "=counta(a:a)"
'count the number of students on "notien" sheet(1)
studentcount = src.Evaluate(sFomular)

For i = 1 To studentcount
'check if a students has joined the "BHYT", this mean number value on colume E > 0

BHYT = src.Range("E" & (i + 1)).Value

If IsNumeric(BHYT) Then
If BHYT > 0 Then
'copy student information on "NOTIEN" sheet: name, class, female, ID
NAME1 = src.Range("B" & (i + 1)).Value
NAME2 = src.Range("C" & (i + 1)).Value
CLASS = src.Range("D" & (i + 1)).Value
FEMALE = src.Range("F" & (i + 1)).Value
ID = src.Range("A" & (i + 1)).Value

'paste it to DSTGBHYT sheet
des.Range("B" & (iDesStartRow)).Value = NAME1
des.Range("C" & (iDesStartRow)).Value = NAME2
des.Range("G" & (iDesStartRow)).Value = CLASS
des.Range("F" & (iDesStartRow)).Value = FEMALE
des.Range("A" & (iDesStartRow)).Value = ID
iDesStartRow = iDesStartRow + 1
End If

End If


Next i

End Sub
 

File đính kèm

Web KT

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

Back
Top Bottom