1

1400 個の個別の Excel ファイルが、各ファイルから A1:Q38 の範囲の行ごとにすべてのデータを取得する必要があります。元の各行の順序で単一の列リストにそのデータが必要です。行 A1:Q1 を読み取り、A1:A17 に書き込み、次に A2:Q2 を読み取り、A18:A34 に書き込み、各ファイルが読み取られるまで続行する必要があります。新しいワークブックにデータが必要です。可能であれば、空のセルを新しいリストに書き込むことを無視したいと思います。次のコードは、1 つのワークシートでジョブを実行します。プログラムで 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 に答える