我在excel文件中有一组数据,例如:
RIH2329
SCC272
CRT041
WS13-14
WS13-16
RIH2602
VT001
CRT035
RIH2874
RIH2876
CRT067
RIH2744
RIH2750
RIH2368
RIH2374
RIH2378
RIH2376
RIH2373...etc
我想将这些数据放入9x9网格中。像这样:
RIH2329 SCC272 CRT041 WS13-14 WS13-16 RIH2602 VT001 CRT035 RIH2874
RIH2876 CRT067 RIH2744 RIH2750 RIH2368 RIH2374 RIH2378 RIH2376 RIH2373...etc
我有很多数据,所以不可能手工完成。我试过用了
=offset
获取我想要的数据,但这是站不住脚的,因为我需要更改每行代码。有没有一种简单的方法可以完成我想要的而不需要编辑每一行?
答案 0 :(得分:1)
您可以使用此VBA宏代码实现此目的。
Sub makeDataGrid()
Range("A1").Activate 'asumes data starts at this cel
'Put all data into memory down to the bottom assumes there are no blank cells in between
data = Range(Selection, Selection.End(xlDown)).Value
'Delete column containing all data
Range(Selection, Selection.End(xlDown)).Delete
colOffset = 0
rowOffset = 0
For i = 1 To UBound(data)
ActiveCell.Offset(rowOffset, colOffset).Value = data(i, 1)
colOffset = colOffset + 1
If colOffset = 9 Then
colOffset = 0
rowOffset = rowOffset + 1
End If
Next i
End Sub
宏将在将数据放入数组后删除包含所有数据的列,然后创建网格。
答案 1 :(得分:0)