Chào các Anh
Hiện nay em có macro chạy và chia số lượng đóng gói.
Nay muốn các anh điều chỉnh code cho ngắn để tiện sau này chèn thêm cột dễ sữa chữa
Hiện nay em có macro chạy và chia số lượng đóng gói.
Nay muốn các anh điều chỉnh code cho ngắn để tiện sau này chèn thêm cột dễ sữa chữa
Mã:
Sub Delivery()
Dim i As Integer, j As Integer, box As Integer, question As Integer
Dim total As Integer, s As Integer, os As Integer
Dim tensheet As String
On Error GoTo quit
question = MsgBox("BAN MUON THUC HIEN KHONG?", vbOKCancel, "tittle")
If question = 1 Then
i = 11
tensheet = InputBox("NHAP TEN SHEET:", "Request", "")
Do
If Worksheets(tensheet).Cells(i, 15) <> "" Then
box = Worksheets(tensheet).Cells(i, 13) / Worksheets(tensheet).Cells(i, 14)
total = Worksheets(tensheet).Cells(i, 13)
s = Worksheets(tensheet).Cells(i, 15)
If s = total Then
Worksheets(tensheet).Cells(i, 10) = Worksheets(tensheet).Cells(i, 10) & "S"
Worksheets(tensheet).Cells(i, 15) = ""
Else
os = total - s
If os Mod box = 0 Then
Worksheets(tensheet).Cells(i, 13) = os
Worksheets(tensheet).Cells(i, 14) = os / box
Worksheets(tensheet).Cells(i, 15) = ""
Rows(i + 1).Select
Selection.Insert Shift:=xlDown
Worksheets(tensheet).Cells(i + 1, 2) = Worksheets(tensheet).Cells(i, 2)
Worksheets(tensheet).Cells(i + 1, 3) = Worksheets(tensheet).Cells(i, 3)
Worksheets(tensheet).Cells(i + 1, 4) = Worksheets(tensheet).Cells(i, 4)
Worksheets(tensheet).Cells(i + 1, 5) = Worksheets(tensheet).Cells(i, 5)
Worksheets(tensheet).Cells(i + 1, 6) = Worksheets(tensheet).Cells(i, 6)
Worksheets(tensheet).Cells(i + 1, 7) = Worksheets(tensheet).Cells(i, 7)
Worksheets(tensheet).Cells(i + 1, 8) = Worksheets(tensheet).Cells(i, 8)
Worksheets(tensheet).Cells(i + 1, 9) = Worksheets(tensheet).Cells(i, 9)
Worksheets(tensheet).Cells(i + 1, 10) = Worksheets(tensheet).Cells(i, 10) & "S"
Worksheets(tensheet).Cells(i + 1, 11) = Worksheets(tensheet).Cells(i, 11)
Worksheets(tensheet).Cells(i + 1, 12) = Worksheets(tensheet).Cells(i, 12)
Worksheets(tensheet).Cells(i + 1, 13) = s
Worksheets(tensheet).Cells(i + 1, 14) = s / box
i = i + 1
ElseIf os < box Then
Worksheets(tensheet).Cells(i, 13) = os
Worksheets(tensheet).Cells(i, 14) = "1"
Worksheets(tensheet).Cells(i, 15) = ""
If s < box Then
Rows(i + 1).Select
Selection.Insert Shift:=xlDown
Worksheets(tensheet).Cells(i + 1, 2) = Worksheets(tensheet).Cells(i, 2)
Worksheets(tensheet).Cells(i + 1, 3) = Worksheets(tensheet).Cells(i, 3)
Worksheets(tensheet).Cells(i + 1, 4) = Worksheets(tensheet).Cells(i, 4)
Worksheets(tensheet).Cells(i + 1, 5) = Worksheets(tensheet).Cells(i, 5)
Worksheets(tensheet).Cells(i + 1, 6) = Worksheets(tensheet).Cells(i, 6)
Worksheets(tensheet).Cells(i + 1, 7) = Worksheets(tensheet).Cells(i, 7)
Worksheets(tensheet).Cells(i + 1, 8) = Worksheets(tensheet).Cells(i, 8)
Worksheets(tensheet).Cells(i + 1, 9) = Worksheets(tensheet).Cells(i, 9)
Worksheets(tensheet).Cells(i + 1, 10) = Worksheets(tensheet).Cells(i, 10) & "S"
Worksheets(tensheet).Cells(i + 1, 11) = Worksheets(tensheet).Cells(i, 11)
Worksheets(tensheet).Cells(i + 1, 12) = Worksheets(tensheet).Cells(i, 12)
Worksheets(tensheet).Cells(i + 1, 13) = s
Worksheets(tensheet).Cells(i + 1, 14) = ""
i = i + 1
ElseIf s > box Then
Rows(i + 1).Select
Selection.Insert Shift:=xlDown
Worksheets(tensheet).Cells(i + 1, 2) = Worksheets(tensheet).Cells(i, 2)
Worksheets(tensheet).Cells(i + 1, 3) = Worksheets(tensheet).Cells(i, 3)
Worksheets(tensheet).Cells(i + 1, 4) = Worksheets(tensheet).Cells(i, 4)
Worksheets(tensheet).Cells(i + 1, 5) = Worksheets(tensheet).Cells(i, 5)
Worksheets(tensheet).Cells(i + 1, 6) = Worksheets(tensheet).Cells(i, 6)
Worksheets(tensheet).Cells(i + 1, 7) = Worksheets(tensheet).Cells(i, 7)
Worksheets(tensheet).Cells(i + 1, 8) = Worksheets(tensheet).Cells(i, 8)
Worksheets(tensheet).Cells(i + 1, 9) = Worksheets(tensheet).Cells(i, 9)
Worksheets(tensheet).Cells(i + 1, 10) = Worksheets(tensheet).Cells(i, 10) & "S"
Worksheets(tensheet).Cells(i + 1, 11) = Worksheets(tensheet).Cells(i, 11)
Worksheets(tensheet).Cells(i + 1, 12) = Worksheets(tensheet).Cells(i, 12)
Worksheets(tensheet).Cells(i + 1, 13) = s Mod box
Worksheets(tensheet).Cells(i + 1, 14) = ""
i = i + 1
Rows(i + 1).Select
Selection.Insert Shift:=xlDown
Worksheets(tensheet).Cells(i + 1, 2) = Worksheets(tensheet).Cells(i, 2)
Worksheets(tensheet).Cells(i + 1, 3) = Worksheets(tensheet).Cells(i, 3)
Worksheets(tensheet).Cells(i + 1, 4) = Worksheets(tensheet).Cells(i, 4)
Worksheets(tensheet).Cells(i + 1, 5) = Worksheets(tensheet).Cells(i, 5)
Worksheets(tensheet).Cells(i + 1, 6) = Worksheets(tensheet).Cells(i, 6)
Worksheets(tensheet).Cells(i + 1, 7) = Worksheets(tensheet).Cells(i, 7)
Worksheets(tensheet).Cells(i + 1, 8) = Worksheets(tensheet).Cells(i, 8)
Worksheets(tensheet).Cells(i + 1, 9) = Worksheets(tensheet).Cells(i, 9)
Worksheets(tensheet).Cells(i + 1, 10) = Worksheets(tensheet).Cells(i, 10)
Worksheets(tensheet).Cells(i + 1, 11) = Worksheets(tensheet).Cells(i, 11)
Worksheets(tensheet).Cells(i + 1, 12) = Worksheets(tensheet).Cells(i, 12)
Worksheets(tensheet).Cells(i + 1, 13) = box * Int(s / box)
Worksheets(tensheet).Cells(i + 1, 14) = Int(s / box)
i = i + 1
End If
ElseIf os > box Then
Worksheets(tensheet).Cells(i, 13) = box * Int(os / box)
Worksheets(tensheet).Cells(i, 14) = Int(os / box)
Worksheets(tensheet).Cells(i, 15) = ""
Rows(i + 1).Select
Selection.Insert Shift:=xlDown
Worksheets(tensheet).Cells(i + 1, 2) = Worksheets(tensheet).Cells(i, 2)
Worksheets(tensheet).Cells(i + 1, 3) = Worksheets(tensheet).Cells(i, 3)
Worksheets(tensheet).Cells(i + 1, 4) = Worksheets(tensheet).Cells(i, 4)
Worksheets(tensheet).Cells(i + 1, 5) = Worksheets(tensheet).Cells(i, 5)
Worksheets(tensheet).Cells(i + 1, 6) = Worksheets(tensheet).Cells(i, 6)
Worksheets(tensheet).Cells(i + 1, 7) = Worksheets(tensheet).Cells(i, 7)
Worksheets(tensheet).Cells(i + 1, 8) = Worksheets(tensheet).Cells(i, 8)
Worksheets(tensheet).Cells(i + 1, 9) = Worksheets(tensheet).Cells(i, 9)
Worksheets(tensheet).Cells(i + 1, 10) = Worksheets(tensheet).Cells(i, 10)
Worksheets(tensheet).Cells(i + 1, 11) = Worksheets(tensheet).Cells(i, 11)
Worksheets(tensheet).Cells(i + 1, 12) = Worksheets(tensheet).Cells(i, 12)
Worksheets(tensheet).Cells(i + 1, 13) = os Mod box
Worksheets(tensheet).Cells(i + 1, 14) = "1"
i = i + 1
If s < box Then
Rows(i + 1).Select
Selection.Insert Shift:=xlDown
Worksheets(tensheet).Cells(i + 1, 2) = Worksheets(tensheet).Cells(i, 2)
Worksheets(tensheet).Cells(i + 1, 3) = Worksheets(tensheet).Cells(i, 3)
Worksheets(tensheet).Cells(i + 1, 4) = Worksheets(tensheet).Cells(i, 4)
Worksheets(tensheet).Cells(i + 1, 5) = Worksheets(tensheet).Cells(i, 5)
Worksheets(tensheet).Cells(i + 1, 6) = Worksheets(tensheet).Cells(i, 6)
Worksheets(tensheet).Cells(i + 1, 7) = Worksheets(tensheet).Cells(i, 7)
Worksheets(tensheet).Cells(i + 1, 8) = Worksheets(tensheet).Cells(i, 8)
Worksheets(tensheet).Cells(i + 1, 9) = Worksheets(tensheet).Cells(i, 9)
Worksheets(tensheet).Cells(i + 1, 10) = Worksheets(tensheet).Cells(i, 10) & "S"
Worksheets(tensheet).Cells(i + 1, 11) = Worksheets(tensheet).Cells(i, 11)
Worksheets(tensheet).Cells(i + 1, 12) = Worksheets(tensheet).Cells(i, 12)
Worksheets(tensheet).Cells(i + 1, 13) = s
Worksheets(tensheet).Cells(i + 1, 14) = ""
i = i + 1
ElseIf s > box Then
Rows(i + 1).Select
Selection.Insert Shift:=xlDown
Worksheets(tensheet).Cells(i + 1, 2) = Worksheets(tensheet).Cells(i, 2)
Worksheets(tensheet).Cells(i + 1, 3) = Worksheets(tensheet).Cells(i, 3)
Worksheets(tensheet).Cells(i + 1, 4) = Worksheets(tensheet).Cells(i, 4)
Worksheets(tensheet).Cells(i + 1, 5) = Worksheets(tensheet).Cells(i, 5)
Worksheets(tensheet).Cells(i + 1, 6) = Worksheets(tensheet).Cells(i, 6)
Worksheets(tensheet).Cells(i + 1, 7) = Worksheets(tensheet).Cells(i, 7)
Worksheets(tensheet).Cells(i + 1, 8) = Worksheets(tensheet).Cells(i, 8)
Worksheets(tensheet).Cells(i + 1, 9) = Worksheets(tensheet).Cells(i, 9)
Worksheets(tensheet).Cells(i + 1, 10) = Worksheets(tensheet).Cells(i, 10) & "S"
Worksheets(tensheet).Cells(i + 1, 11) = Worksheets(tensheet).Cells(i, 11)
Worksheets(tensheet).Cells(i + 1, 12) = Worksheets(tensheet).Cells(i, 12)
Worksheets(tensheet).Cells(i + 1, 13) = s Mod box
Worksheets(tensheet).Cells(i + 1, 14) = ""
i = i + 1
Rows(i + 1).Select
Selection.Insert Shift:=xlDown
Worksheets(tensheet).Cells(i + 1, 2) = Worksheets(tensheet).Cells(i, 2)
Worksheets(tensheet).Cells(i + 1, 3) = Worksheets(tensheet).Cells(i, 3)
Worksheets(tensheet).Cells(i + 1, 4) = Worksheets(tensheet).Cells(i, 4)
Worksheets(tensheet).Cells(i + 1, 5) = Worksheets(tensheet).Cells(i, 5)
Worksheets(tensheet).Cells(i + 1, 6) = Worksheets(tensheet).Cells(i, 6)
Worksheets(tensheet).Cells(i + 1, 7) = Worksheets(tensheet).Cells(i, 7)
Worksheets(tensheet).Cells(i + 1, 8) = Worksheets(tensheet).Cells(i, 8)
Worksheets(tensheet).Cells(i + 1, 9) = Worksheets(tensheet).Cells(i, 9)
Worksheets(tensheet).Cells(i + 1, 10) = Worksheets(tensheet).Cells(i, 10)
Worksheets(tensheet).Cells(i + 1, 11) = Worksheets(tensheet).Cells(i, 11)
Worksheets(tensheet).Cells(i + 1, 12) = Worksheets(tensheet).Cells(i, 12)
Worksheets(tensheet).Cells(i + 1, 13) = box * Int(s / box)
Worksheets(tensheet).Cells(i + 1, 14) = Int(s / box)
i = i + 1
End If
End If
End If
End If
i = i + 1
Loop Until Worksheets(tensheet).Cells(i, 2) = ""
j = 0
Do
j = j + 1
Worksheets(tensheet).Cells(j + 10, 1) = j
Loop Until Worksheets(tensheet).Cells(j + 11, 2) = ""
MsgBox ("FINISH")
End If
quit:
End Sub



