0


皆さんこんにちは!
ファイルを含むディレクトリがあります。すべてのファイルには 1 つのワークシートがあります。指定した行 (G:G など) をすべてのファイルから 1 つの master_file.xlsx (マクロを開始する場所) にコピーする必要があります。
問題の 1 つは、行が非常に大きい (約 2000 の値) ことです。そのため、私のコードは反復ごとに警告をスローします: クリップボードに大量の情報があります。私の試みで私を助けてください。
まことにありがとうございます!!!
私のコードは以下の通りです:

サブ my_macros()

Dim sFileName, sNewFileName, myFile As String

sFileName = ThisWorkbook.Path & "\master_file.xlsm"
If Dir(sFileName, 16) = "" Then MsgBox "Warning", vbCritical, "Error" Exit Sub
Cells.Select
Selection.ClearContents

For i = 1 To 5
    'MsgBox (i)
    sNewFileName = ThisWorkbook.Path & "\file_" & i & ".xlsx"
    If Dir(sNewFileName, 16) = "" Then Exit For
    Application.ScreenUpdating = False
    'MsgBox (sNewFileName)
    Workbooks.Open sNewFileName
    Range("G:G").Select
    Selection.Copy
    ActiveWorkbook.Close
    ThisWorkbook.Activate
    'Active
    Worksheets("Sheet1").Columns(2).Insert Shift:=xlToRight
    Application.CutCopyMode = False
    'Workbooks(sNewFileName).Close SaveChanges:=False
Next i

End Sub
4

1 に答える 1