1

1400 个单独的 Excel 文件需要从 A1:Q38 范围内逐行获取每个文件中的所有数据。需要按照每个原始行的顺序将这些数据放在单个列列表中。需要读取行 A1:Q1 并写入 A1:A17 然后读取 A2:Q2 并写入 A18:A34 继续直到读取每个文件。需要新工作簿中的数据。如果可能,希望忽略将空单元格写入新列表。以下代码将在一个工作表中完成工作。需要它以编程方式处理 1400 个文件。

Sub readvalues()

row2 = 1
For Row = 1 To 38
For col = 1 To 17
READCELL = Worksheets("sheet1").Cells(Row, col).Value
Worksheets("sheet2").Cells(row2, 1) = READCELL
row2 = row2 + 1
Next col
Next Row

End Sub
4

1 回答 1

0

您需要使用的称为Transpose. PasteSpecial允许您使用转置单元格进行粘贴。(行变成列,列变成行,就像在矩阵中一样)

Dim targetWorkbook As Workbook
Dim rowCount As Integer
rowCount = 1

Set targetWorkbook = Workbooks.Add
Application.DisplayAlerts = False
targetWorkbook.SaveAs Filename:="C:/MyData/TransposedRow" & rowCount

ActiveSheet.UsedRange.Cells.Copy
targetWorkbook.Sheets(1).Cells.PasteSpecial Transpose:=True
Application.CutCopyMode = False

rowCount = rowCount + 1
于 2012-10-24T17:45:01.803 回答