VBA Copy/Paste Spalten in andere Datei
23.08.2014 11:23:10
Sio
Hallo, lerne gerade VBA und bastel gerade an folgendem Makro:
Ziel des Makros:
-Spalten A:C kopieren
- Datei auswählen wohin es kopiert werden soll
- Einfügen in ein spezielles Worksheet dieser Datei
- Refresh der Datei
- schließen der Datei woraus es kopiert wurde
Das habe ich bisher:
Option Explicit
Sub copy()
'Last cell in column
Dim WS As Worksheet
Dim LastCell As Range
Dim LastCellRowNumber As Long
Set WS = ActiveSheet
With WS
Set LastCell = .Cells(.Rows.Count, "C").End(xlUp)
LastCellRowNumber = LastCell.Row + 1
End With
Dim wb As Workbook, wb2 As Workbook
Dim vFile As Variant
'Set source workbook
Set wb = ActiveWorkbook
'Open the target workbook
vFile = Application.GetOpenFilename("Excel-files,*.xlsx", _
1, "Select One File To Open", , False)
'if the user didn't select a file, exit sub
If TypeName(vFile) = "Boolean" Then Exit Sub
Workbooks.Open vFile
'Set selectedworkbook
Set wb2 = ActiveWorkbook
'Select cells to copy
wb2.ActiveSheet.Range(Range("A1"), Range("C1").End(xlDown)).copy
'Go back to original workbook you want to paste into
wb.Activate
'Paste starting at the last empty row
wb.Worksheets("Tabelle1").Range("C" & LastCellRowNumber).PasteSpecial Paste:=xlPasteValues, _
Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
Application.ScreenUpdating = True
'Close and save the workbook you copied from
wb2.Save
wb2.Close
End Sub
Funktioniert einigermaßen, nur dass er nicht die komplette Spalte kopiert und teile weglässt und wenn ich z.B. von Spalte A:C kopiere, fügt er in C:E ein, es soll aber in der Spalte A:C bleiben.
Vielen Dank im voraus