我试图自动化一些繁琐的工作任务,即复制选定的行,然后在每行中添加一个额外的值,而我只能停留在后一部分。
如下所示,我能够复制所选行,但是当我添加一个并发值时,偏移不会对齐。
理想情况下,我希望它复制该行,分配一个大小值,然后为每种大小重复该值,然后再使用一种新样式。
有人能指出我正确的方向吗?这是我的位置:
server.host: 0.0.0.0
初始数据 Initial Data
当前结果:
所需结果:
答案 0 :(得分:1)
您可以这样做。
因此,我使用Array函数填充大小值,因此我们不需要任何虚拟列。
VBA代码:
Sub RepeatRepeat()
Dim myArrayVal()
Dim i As Long
Dim j As Long
Dim k As Long
Dim lrow As Long
Dim lrow2 As Long
myArrayVal() = Array("X-Small", "Small", "Medium", "Large", "X-Large", "XX-Large")
lrow = Cells(Rows.Count, 1).End(xlUp).Row 'find last row in Column A
j = 2
For j = 2 To lrow
lrow2 = Cells(Rows.Count, 9).End(xlUp).Row + 1 'Find last row in column I
For k = LBound(myArrayVal) To UBound(myArrayVal) 'Loop Array
Cells(lrow2, 9).Value = myArrayVal(k) 'Print Array value
Cells(lrow2, 8).Value = Cells(j, 2).Value 'Copy from Column B to Column H
Cells(lrow2, 7).Value = Cells(j, 1).Value 'Copy from Column B to Column H
lrow2 = lrow2 + 1 'Add one to last row
Next k
Next j
End Sub
结果: