2012-10-24 25 views
1

1400單獨的excell文件需要從範圍A1:Q38中逐行取出每個文件的所有數據。需要按照每個原始行的順序在單列列表中存儲數據。需要讀取A1行:Q1並寫入A1:A17然後讀取A2:Q2並寫入A18:A34繼續讀取每個文件。需要新工作簿中的數據。如果可能的話,希望忽略將空單元寫入新列表。以下代碼將在一個工作表中完成工作。需要它以編程方式處理1400個文件。範圍矩陣A1:Q38從1400個文件中列出並作爲新工作簿行A1中的單列列出,然後是A2行

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 
+0

- 「需要新工作簿中的數據」,您是否指'WorkSheet'? –

+0

您需要遍歷目錄。這個鏈接是一個很好的開始:http://stackoverflow.com/questions/11291573/searching-for-files-with-dir-multiple-hits ...搜索「[excel-vba] dir」就可以找到更多 –

回答

0

你需要使用什麼叫做TransposePasteSpecial允許您粘貼使用轉置單元格。 (行成列和列成行,如在矩陣中)

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 
+0

問題我的意思是工作表沒有新的工作簿循環鏈接感謝和列出的代碼有錯誤34改變了行到目標紙.usedrange.rows它沒有運行錯誤,但我得到38工作表,每張工作表1列我需要1工作表中1工作簿與1列單個列表數據感謝,但不完全它 – user1771885

+0

@ user1771885我不知道編輯的答案是否可以工作(我想知道是否可以修改新創建的工作簿的工作表) –

+0

哦,我以爲你想每個工作表1列,將修改! –

相關問題