trantheco1
Thành viên mới
- Tham gia
- 31/12/22
- Bài viết
- 1
- Được thích
- 0
Hi các bác, em đang làm file hóa đơn bán hàng bằng VBA, e làm xong các bước: in và lưu hóa đơn rồi, đến bước load lại hóa đơn để sửa hoặc in lại thì bị lỗi.
Sub laylaihoadon()
Dim shnguon As Worksheet, shdich As Worksheet
Dim i As Long, a As Long, dk As Long, arr(), kq(), lr As Long
Set shnguon = Sheets("Chitiethd")
Set shdich = Sheets("Hoadon")
dk = shdich.Range("G1").Value
With shnguon
lr = .Range("A" & Rows.Count).End(xlUp).Row
arr = .Range("A4:K" & lr).Value
ReDim kq(1 To UBound(arr, 1), 1 To 7)
For i = 1 To UBound(arr, 1)
If arr(i, 1) = dk Then
a = a + 1
kq(a, 1) = arr(i, 6)
kq(a, 2) = arr(i, 7)
kq(a, 3) = arr(i, 8)
kq(a, 4) = arr(i, 9)
kq(a, 5) = arr(i, 10)
kq(a, 6) = arr(i, 11)
End If
Next
End With
' output dua ket qua ra sheet hoa don
With shdich
.Range("B14:H27").ClearContents ' xoa trang du lieu
.Range("B14").Resize(a, 7).Value = kq
End With
End Sub
dòng màu vàng cứ báo lỗi, không biết lỗi ở đâu, các bác cho e xin ý kiến ạ
Sub laylaihoadon()
Dim shnguon As Worksheet, shdich As Worksheet
Dim i As Long, a As Long, dk As Long, arr(), kq(), lr As Long
Set shnguon = Sheets("Chitiethd")
Set shdich = Sheets("Hoadon")
dk = shdich.Range("G1").Value
With shnguon
lr = .Range("A" & Rows.Count).End(xlUp).Row
arr = .Range("A4:K" & lr).Value
ReDim kq(1 To UBound(arr, 1), 1 To 7)
For i = 1 To UBound(arr, 1)
If arr(i, 1) = dk Then
a = a + 1
kq(a, 1) = arr(i, 6)
kq(a, 2) = arr(i, 7)
kq(a, 3) = arr(i, 8)
kq(a, 4) = arr(i, 9)
kq(a, 5) = arr(i, 10)
kq(a, 6) = arr(i, 11)
End If
Next
End With
' output dua ket qua ra sheet hoa don
With shdich
.Range("B14:H27").ClearContents ' xoa trang du lieu
.Range("B14").Resize(a, 7).Value = kq
End With
End Sub
dòng màu vàng cứ báo lỗi, không biết lỗi ở đâu, các bác cho e xin ý kiến ạ