Kopirajte stupac ili stupce iz svake radne knjige u mapu koristeći VBA u programu Microsoft Excel

Anonim
  • Makronaredba će kopirati dio prvog radnog lista svake datoteke koja se nalazi u mapi C: \ Data na prvi radni list vaše radne knjige.
  • Prvi makro radi normalnu kopiju, a drugi makro kopira vrijednosti.

Upamtite da Excel ima samo 256 stupaca

Sub CopyColumn () Zatamni osnovnu knjigu Kao radnu knjigu Zatamni moju knjigu Kao radnu knjigu Priguši izvorRange As Range Dim destrange As Range Dim cnum As Integer Dim i As Long Dim a As Integer Application.ScreenUpdating = False With Application.FileSearch .NewSearch .LookIn = "C: \ Podaci ".SearchSubFolders = False .FileType = msoFileTypeExcelWorkbooks If .Execute ()> 0 Zatim postavite basebook = ThisWorkbook cnum = 1 For i = 1 To. 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 Sljedeći i završi ako završi s Application.ScreenUpdating = True End Sub Sub CopyColumnValues ​​() Zatamni osnovnu knjigu Kao radnu knjigu Zatamni moju knjigu kao radnu knjigu Priguši izvorRange kao raspon Dim destrange As Range Dim cnum As Integer Dim i As Long Dim a As Integer Application.ScreenUpdating = Netačno s Application.FileSearch .NewSearch .LookIn = "C: \ Data" .SearchSubFolders = False .FileType = msoFileTypeExcelWorkbooks If .Execute ()> 0 Zatim postavite basebook = ThisWorkbook cnum = 1 For i = 1 To FoundFiles.Count Set mybook = Workbooks.Open (.FoundFiles (i)) Set sourceRange = mybook.Worksheets ( 1). Stupci ("A: B") a = sourceRange.Columns.Count With sourceRange Postavite destrange = basebook.Radni listovi (1). Stupci (cnum). _ Promijeni veličinu (, .Columns.Count) End With destrange.Value = sourceRange.Value mybook.Close cnum = i * a + 1 Next i End If End With Application.ScreenUpdating = True End Sub