tuquyen1711
Thành viên chính thức


- Tham gia
- 27/6/18
- Bài viết
- 94
- Được thích
- 17
Dạ, em chào anh/chị
Em có 1 file có mã nhân viên, từ ngày -> đến ngày. Ví dụ 01/06/2021 - 10/06/2021.
Em muốn chạy ra 10 dòng, mỗi dòng là 1 ngày.
Nhờ anh/chị xem thử giúp em ạ.
Em cám ơn
Dạ, em cám ơn anh/ chị ạ, mà không hiểu sao, e click vô chỗ chạy code nó không có chạy ạGóp thêm một cách. Hãy thử xem sao
Bạn phải chuột vào nút lệnh, chọn Assign macro, chọn tên macro, nhấn ok rồi thử lại xem sao.không hiểu sao, e click vô chỗ chạy code nó không có chạy ạ
Bài này đâu cần Dic? Có thể viết gọn lại thế này:Góp thêm một cách. Hãy thử xem sao
Sub TONGHOP()
Dim I&, J&, Lr&, k&
Dim Arr(), KQ()
With Sheet1
Lr = .Range("B" & Rows.Count).End(xlUp).Row
If Lr < 3 Then Exit Sub
Arr = .Range("B3:E" & Lr).Value
End With
ReDim KQ(1 To UBound(Arr) * 100, 1 To 5)
For I = 1 To UBound(Arr)
For J = Arr(I, 3) To Arr(I, 4)
k = k + 1
KQ(k, 1) = k
KQ(k, 2) = Arr(I, 1)
KQ(k, 3) = Arr(I, 2)
KQ(k, 4) = J
KQ(k, 5) = J
Next J
Next I
Sheet2.[G3].Resize(10000, 5).ClearContents
Sheet2.[G3].Resize(k, 5) = KQ
End Sub
Bài này đâu cần Dic? Có thể viết gọn lại thế này:
dạ, em làm được rồi ạ. hihi, e cám ơn ạBạn phải chuột vào nút lệnh, chọn Assign macro, chọn tên macro, nhấn ok rồi thử lại xem sao.
Bài 2 có khai báo Dic mà đâu có xài đâu anhBài này đâu cần Dic?
Cách của bạn cũng đâu có dở. Xét về số lần lặp thì như nhau, chỉ tiếc là không tận dụng giá trị biến j mà thôicảm ơn anh đã chỉ giáo. cái chỗ để tăng lên một ngày tôi lay hoay mãi sau đành phải dùng cách đó.
Đúng là tầm chuyên gia GPE có khác. thật đáng ngưỡng mộ. Một lần nữa cảm ơn anh.
Tại tôi thấy khai báo Dic và có Set Dic ...Bài 2 có khai báo Dic mà đâu có xài đâu anh
Cách của bạn cũng đâu có dở. Xét về số lần lặp thì như nhau, chỉ tiếc là không tận dụng giá trị biến j mà thôi
Tôi thì khai báo dần dần, xài đế nđâu khai đến đó nên hỏng có dưTại tôi thấy khai báo Dic và có Set Dic ...
Nói vậy không phải "chỏi bảng" mà chỉ là "mắc cười" thôi, có những biến khác khai báo mà không dùng.
Có lẽ do thói quen, tôi cũng thường vậy, Khai báo I, J, K, R ,v.v... cuối cùng xem lại có những biến khai báo chẳng xài (Bị lão Cò Già bắt bài hoài). Híc!
Ngược lại. nhiều người đến giờ vẫn còn "dùng chùa" biến. Xài cả lô lốc biến mà chẳng khai cái nào hoặc chỉ khai vài biến quan trọng.Tại tôi thấy khai báo Dic và có Set Dic ...
Nói vậy không phải "chỏi bảng" mà chỉ là "mắc cười" thôi, có những biến khác khai báo mà không dùng.
Có lẽ do thói quen, tôi cũng thường vậy, Khai báo I, J, K, R ,v.v... cuối cùng xem lại có những biến khai báo chẳng xài (Bị lão Cò Già bắt bài hoài). Híc!
có cùng đam mê với cháu rồi, đến giai đoạn giải phóng biến ở cuối, áp lực đề nặng lên vaiTôi thì khai báo dần dần, xài đế nđâu khai đến đó nên hỏng có dư
Vẫn có trường hợp bỏ sót, ví dụ ban đầu khai báo 1 Dict 1 mảng, sau đó code chạy không tốt đổi phương án 2 mảng, bỏ quên biến Dict dù không xài nữa.có cùng đam mê với cháu rồi, đến giai đoạn giải phóng biến ở cuối, áp lực đề nặng lên vai
Người khác nhìn vào rất "ngầu". Sửa vậy đôi khi không sửa hếtvaf cái kết là không đẹp tẹo nào. gặp những pha như vậy bác tính như nào?Vẫn có trường hợp bỏ sót, ví dụ ban đầu khai báo 1 Dict 1 mảng, sau đó code chạy không tốt đổi phương án 2 mảng, bỏ quên biến Dict dù không xài nữa.
Với biến thường thì sót vài biến còn được chứ với các biến đối tượng, khai báo và đã Set rồi mà không dùng thì không ổn nhỉ?Vẫn có trường hợp bỏ sót, ví dụ ban đầu khai báo 1 Dict 1 mảng, sau đó code chạy không tốt đổi phương án 2 mảng, bỏ quên biến Dict dù không xài nữa.
Rõ ràng là không ổn.Với biến thường thì sót vài biến còn được chứ với các biến đối tượng, khai báo và đã Set rồi mà không dùng thì không ổn nhỉ?
Phải nhận sai, xin lỗi, hứa không tái phạm, và khắc phục chứ sao bây giờNgười khác nhìn vào rất "ngầu". Sửa vậy đôi khi không sửa hếtvaf cái kết là không đẹp tẹo nào. gặp những pha như vậy bác tính như nào?