|
A-D列为数据源,F列是根据D列需机器数总数和如8,自动在F列生成机器编号1,2,3,4,5,6,7,8。H列工作料号是根据D列需机器数数量,对应它机器台数数量。i列以后根据B列机器工作趟数数据,后生成C列加工时间个数。最后在G列生成加工总时间,谢谢帮忙!!
本帖最后由 suye1010 于 2012-7-22 21:51 编辑
- Sub test()
- Dim LastRow, i, j, k, TempRow, Times
- LastRow = Cells(65536, 1).End(xlUp).Row
- For i = 2 To LastRow
- For j = 1 To Cells(i, 4)
- TempRow = Cells(65536, 6).End(xlUp).Row
- Cells(TempRow + 1, 6) = TempRow
- Cells(TempRow + 1, 8) = Cells(i, 1)
- If Cells(i, 2) \ Cells(i, 4) = Cells(i, 2) / Cells(i, 4) Then
- Times = Cells(i, 2) \ Cells(i, 4)
- Else
- Times = Cells(i, 2) \ Cells(i, 4) + IIf(j <= Cells(i, 2) Mod Cells(i, 4), 1, 0)
- End If
- For k = 1 To Times
- Cells(TempRow + 1, 8 + k) = Cells(i, 3)
- Next k
- Cells(TempRow + 1, 7) = Application.WorksheetFunction.CountA(Range(Cells(TempRow + 1, 9), Cells(TempRow + 1, 256))) * Cells(i, 3)
- Next j
- Next i
- End Sub
复制代码
|
|