【发布时间】:2020-04-08 07:33:07
【问题描述】:
我有一个工作簿,其中包含我合并的多张数据表。我删除了一些不必要的表格和单元格(已填充颜色)并删除了空白(下面的代码示例)。我现在有一张工作表,其中日期作为标题和项目编号(列长度不同)。
我需要再次浓缩。 对于从工作表中拉回的每个项目编号,我需要两列,A 列和 B 列,B 列需要是从中提取项目编号的列的标题名称。 随着日期的增加,列的数量会随着时间的推移而增加。
我只是不知道从哪里开始......脚本是基本的'然后'我已经对其进行了质量检查,并且到目前为止它仍然有效。
Worksheets.Add Sheets(1)
ActiveSheet.Name = "Combined"
For i = 2 To Sheets.Count
Set xRg = Sheets(1).UsedRange
If i > 2 Then
Set xRg = Sheets(1).Cells(xRg.Rows.Count + 1, 1)
End If
Sheets(i).Activate
ActiveSheet.UsedRange.Copy xRg
Next i
Sheets("Data").Delete
For Each ws In Worksheets
If ws.Name <> "Combined" Then
ws.Visible = xlSheetHidden
End If
Next ws
然后我会弹出一个框来删除特定颜色的单元格并以此结束:
Columns("A:MK").SpecialCells(xlCellTypeBlanks).Delete Shift:=xlUp
我可以在上述之后将列值复制到新工作表中,但是根据该列中的最后一个单元格添加标题值达到了我的 VBA 限制。
我看不到以前有人问过并回答过这个问题,有什么想法吗?
【问题讨论】: