Kopioi sarake tai sarakkeet kustakin työkirjasta kansioon käyttämällä VBA: ta Microsoft Excelissä

Anonim
  • Makro kopioi osan kunkin kansion C: \ Data ensimmäisestä laskentataulukosta työkirjasi ensimmäiselle laskentataulukolle.
  • Ensimmäinen makro kopioi normaalisti ja toinen makro kopioi arvot.

Muista, että Excelissä on vain 256 saraketta

Sub CopyColumn () Dim basebook kuin Työkirja Dim Dimbook kuin Työkirja Dim sourceRange As Range Dim dimrange As Range Dim cnum Kuten Integer Dim i Kuten Long Dim a Integer Application.ScreenUpdating = False With Application.FileSearch .NewSearch .LookIn = "C: \ Tiedot ".SearchSubFolders = False .FileType = msoFileTypeExcelWorkbooks Jos .Execute ()> 0 Määritä sitten basebook = ThisWorkbook cnum = 1 For i = 1 To .FoundFiles.Count Set mybook = Workbooks.Open (.FoundFiles (i)) Aseta sourceRange = mybook.Worksheets (1) .Columns ("A: B") a = sourceRange.Columns.Count Set destrange = basebook.Worksheets (1) .Cells (1, cnum) sourceRange.Copy destrange mybook.Close cnum = i * a + 1 Seuraava i Loppu Jos Päättyy Sovelluksella. = False With Application.FileSearch .NewSearch .LookIn = "C: \ Data" .SearchSubFolders = False .FileType = msoFileTypeExcelWorkbooks If .Execute ()> 0 Set basebook = ThisWorkbook cnum = 1 For i = 1 To .FoundFiles.Count Set mybook = Workbooks.Open (.FoundFiles (i)) Set sourceRange = mybook.Worksheets ( 1) .Sarakkeet ("A: B") a = sourceRange.Columns.Count With sourceRange Set destrange = basebook.Worksheets (1) .Columns (cnum). _ Muuta ((.