0
我有以下表,我想复制的行如果订单ID和合同是一样的多列基于重复的值复制行
a busy cat http://i57.tinypic.com/2qta42b.jpg
我想获得宏要做到这一点:
a busy cat http://i59.tinypic.com/2vdfc0i.png
难道你们给我推到正确的方向来做到这一点?在此先感谢
我有以下表,我想复制的行如果订单ID和合同是一样的多列基于重复的值复制行
a busy cat http://i57.tinypic.com/2qta42b.jpg
我想获得宏要做到这一点:
a busy cat http://i59.tinypic.com/2vdfc0i.png
难道你们给我推到正确的方向来做到这一点?在此先感谢
可以使此代码更EFFIENT,但这是“推到正确的方向来完成这个” :)
Sub myMacro()
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
' decleration
Dim rowData As Integer, rowNew As Integer
rowData = 1
rowNew = 1
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
' put first two entries
Range("H" & rowNew, "J" & rowNew).Value = Range("A" & rowData, "C" & rowData).Value
rowNew = rowNew + 1
rowData = rowData + 1
Range("H" & rowNew, "J" & rowNew).Value = Range("A" & rowData, "C" & rowData).Value
rowNew = rowNew + 1
rowData = rowData + 1
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
' loop through all of column A entries
Do While Range("A" & rowData).Value <> ""
' similar entry found
If Range("A" & rowData).Value = Range("A" & rowData - 1).Value Then
Range("H" & rowNew, "J" & rowNew).Value = Range("A" & rowData, "C" & rowData).Value
rowNew = rowNew + 1
rowData = rowData + 1
' similar entry Not found
Else
rowNew = rowNew + 1
Range("H" & rowNew, "J" & rowNew).Value = Range("A1:C1").Value
rowNew = rowNew + 1
Range("H" & rowNew, "J" & rowNew).Value = Range("A" & rowData, "C" & rowData).Value
rowNew = rowNew + 1
rowData = rowData + 1
End If
Loop
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
End Sub
我在这里看不到任何情况下他们在哪里。你是不是说'124'中'24'的最后两位数字与'6CV4 P0924'中'24'的最后两位数字相符? – 2014-09-04 17:14:09
对不起,我的意思是说如果有类似的订单ID和类似的合同,然后复制行。所以,在上面的例子中,我们有5行,其中订单ID = 111和合约= 6CU4 P0920。可能会出现这种情况,即您拥有相同的订单ID但合同不同(例如,对于Order ID为111的新行上面的示例,创建Contract = 6CU4 P1922)。在这种情况下,这个新行将与其他5行分开 – user1753675 2014-09-04 17:16:42
什么构成类似?你有没有尝试过任何东西?任何代码开始? – 2014-09-04 17:18:30