重新排列矩阵中的数据

时间:2015-03-10 16:16:11

标签: excel-vba vba excel

我每个月都会收到这个矩阵形状的数据,我需要将单元格移动到顶部,以便像所需的输出一样显示它。我唯一能做的就是在移动所有文本后删除空单元格的代码。

Screen capture of original data and desired output

Sub test()

Dim r As Range, rows As Long, i As Long

' Code left here to cut and paste every cell into the respective column top


  Set r = ActiveSheet.Range("C4:N32")

  rows = r.rows.Count

  For i = rows To 1 Step (-1)
    If WorksheetFunction.CountA(r.rows(i)) = 0 Then r.rows(i).EntireRow.Delete
  Next

End Sub

1 个答案:

答案 0 :(得分:0)

您不需要VBA来执行此操作(或者您可以使用以下步骤录制宏)

  • 选择包含您所拥有的矩阵的范围
  • 按Ctrl + G进入“转到”命令
  • 点击底部的“特殊..”按钮
  • 选择“空白”然后确定
  • 通过键入Ctrl Minus(或在Excel 2007 +中,主页>单元格>删除>在功能区上删除单元格...)删除选定的单元格
  • 选择“Shift Cells Up”然后确定