vanle33
Thành viên gạo cội




			
		- Tham gia
 - 30/10/08
 
- Bài viết
 - 5,970
 
- Được thích
 - 4,010
 
- Giới tính
 - Nam
 
Tôi muốn chỉnh sửa code trong file đính kèm để lấy dữ liệu từ cột Yêu cầu để xuất được kết quả sang Sheet "04-Nhat ky".
Kết quả ở cột D sau khi kích vào nút LE VAN có dạng: Yêu cầu NT & Nội dung công việc ở cột C Sheet "01-Danh muc".
Tương tự như Nghiêm thu công viêc ....
Code trong nút LE VAN là:
	
	
	
		
Tôi đang sử dụng Excel 2010 32 bit.
Xin nhờ các thành viên trợ giúp.
Xin cảm ơn.
				
			Kết quả ở cột D sau khi kích vào nút LE VAN có dạng: Yêu cầu NT & Nội dung công việc ở cột C Sheet "01-Danh muc".
Tương tự như Nghiêm thu công viêc ....
Code trong nút LE VAN là:
		Mã:
		
	
	Public Sub hello2HamDuyet()
Dim r As Long, k As Long, dArr(1 To 65000, 1 To 4), arr
Dim startDate As Date, endDate As Date, ub As Long, h As Boolean
arr = Sheet1.Range("A19:K" & Sheet1.[A65000].End(xlUp).Row).Value
ub = UBound(arr)
startDate = Sheet5.[F5].Value
endDate = Sheet5.[F6].Value
With Sheet4
    .Range("A16:D" & .UsedRange.SpecialCells(xlCellTypeLastCell).Row).ClearContents
    k = 1
    Do While WorksheetFunction.RoundDown(startDate, 0) <= _
             WorksheetFunction.RoundDown(endDate, 0)
        r = 1: h = False
        dArr(k, 1) = k
        dArr(k, 2) = startDate
        dArr(k, 4) = " " 'Da xoa chu : Mua cong truong nghi
        Do While arr(r, 1) <> arr(ub, 1)
            If arr(r, 11) = startDate Then
                dArr(k, 1) = k
                dArr(k, 2) = startDate
                dArr(k, 3) = arr(r, 2)
                dArr(k, 4) = "Nghiêm thu công viêc " & arr(r, 3) ' Them chu : cong viec
                k = k + 1: h = True
            End If
            If arr(r, 6) <= startDate And arr(r, 7) >= startDate Then
                dArr(k, 1) = k
                dArr(k, 2) = startDate
                dArr(k, 3) = arr(r, 2)
                dArr(k, 4) = "" & arr(r, 3) 'Bo chu : Thi cong
                k = k + 1: h = True
            End If
            r = r + 1
        Loop
        startDate = startDate + 1
        If Not h Then k = k + 1
    Loop
  
Dim l, Tren, Duoi As Long
l = 1
For i = 1 To k - 1
Tren = dArr(i, 2)
Duoi = dArr(i + 1, 2)
If Tren <> "" Then Tam = Tren
If Tam = Duoi Then
dArr(i + 1, 2) = ""
End If
If dArr(i, 2) <> "" Then
dArr(i, 1) = l
l = l + 1
Else
dArr(i, 1) = ""
End If
Next i
    .Range("A16:D16").Resize(k).Value = dArr
End With
End Sub
	Xin nhờ các thành viên trợ giúp.
Xin cảm ơn.
	
	  

