所以这就是我的开始:
这就是我希望它完成后的样子:
我认为它需要做的是:
1。)浏览路线栏
2.)找到重复值
3.。)选择第一个重复路由值和最后一个
之间的所有行4。)合并该范围内的所有重复单元格
5.重复,直到到达最后一行数据。
我的问题是我真的不太了解vba做我想做的事情,而且我没有找到一些已经做到这一点的代码。我会继续努力,但我欢迎您在本网站上精彩的人提供的任何帮助/见解。
答案 0 :(得分:0)
所以我将路线移到第1列并让我的宏使用这段代码:
Sheets("Master").Select
With ActiveSheet
LastRow = .Cells(.Rows.Count, "A").End(xlUp).Row
End With
Dim KRng As Range, Kxcell As Range
Dim KxRows As Integer
Dim KeyRng As Range
Set KeyRng = Range("A4:A" & LastRow)
KeyRng.Select
'Application.ScreenUpdating = False
'Application.DisplayAlerts = False
KxRows = KeyRng.Rows.Count
For Each KRng In KeyRng.Columns
For c = 1 To KxRows - 1
For d = c + 1 To KxRows
If KRng.Cells(c, 1).Value <> KRng.Cells(d, 1).Value Then
Exit For
End If
Next
KeyRng.Parent.Range(KRng.Cells(c, 1), KRng.Cells(d - 1, 1)).Select
With Selection
ActiveCell.Resize(d - c, 60).Select
End With
Call MergeSameCell
KeyRng.Parent.Range(KRng.Cells(c, 1), KRng.Cells(d - 1, 1)).Select
c = d - 1
Next
接着
Application.DisplayAlerts = True
Application.ScreenUpdating = True
End Sub
现在我的问题是,如何让它选择右边的60列,但跳过第8到12列?我会继续研究,看看我能想出什么,但我欢迎一个简单或优雅的答案。