Dim arr As Range
Dim rng As Range
Set arr = Range("K3:N12")
For Each rng In arr
k = Application.CountIf(arr, rng)
If k > 1 Then
MsgBox "单元格 " & rng.Address & " 重复"
End If
Next
追问1。 K3:N12范围“有”重复时,合并C列倒数第一单元内容和F列倒数第一单元内容到
P3:Y12(这个范围内的空单元中)
2。 K3:N12范围“没有”重复时,合并C列倒数第一单元内容和F列倒数第一单元内容到
AA3:AJ12(这个范围内的空单元中)
追答C列和F列相距甚远,如何能合并。所提合并做何解?
不知所云。
追问1。 K3:N12范围“有”重复时,将J3内容复制到P3:Y12(这个范围内的空单元中)
2。 K3:N12范围“没有”重复时,将J3内容复制到AA3:AJ12(这个范围内的空单元中)
追答Private Sub CommandButton1_Click()
Dim arr As Range
Dim rng As Range
Dim rag As Range
Set arr = Range("K3:N12")
For Each rng In arr
k = Application.CountIf(arr, rng)
If k > 1 Then
MsgBox "单元格 " & rng.Address & " 重复"
For Each rag In Range("P3:Y12")
If rag = "" Then
rag = Range("j3")
Exit For
End If
Next
Exit For
End If
Next
End Sub
追问是这样的(这是有重复时的情况)
2。 K3:N12范围“没有”重复时,将J3内容复制到AA3:AJ12(这个范围内的空单元中)
追答“有”的情况已经写了,没有的情况你不会模仿?
Private Sub CommandButton1_Click()
Dim arr As Range
Dim rng As Range
Dim rag As Range
Dim rcg As Range
Set arr = Range("K3:N12")
For Each rng In arr
k = Application.CountIf(arr, rng)
If k > 1 Then
For Each rag In Range("P3:Y12")
If rag = "" Then
rag = Range("j3")
Exit Sub
End If
Next
Exit For
End If
Next
For Each rcg In Range("AA3:AJ12")
If rcg = "" Then
rcg = Range("j3")
Exit For
End If
Next
End Sub
本回答被提问者采纳