Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Code vereinfachen - mehrere Spalten kopieren

Code vereinfachen - mehrere Spalten kopieren
30.01.2019 09:56:16
Ulf
Moin,
mit dem folgendem Code kopiere die Spalten A:C und F in eine andere Tabelle.
Bei dem Versuch den Code zu vereinfachen scheiter ich leider. Ich dachte es würde in der Form wie hier funktionieren - ohne Erfolg.
Könntet ihr mir bitt helfen.
Danke
Private Sub CommandButton2_Click()
If Not IsWorkbookOpen("Data.csv") Then
MsgBox ("Data.csv ist nicht geöffnet!"), vbCritical, "DATEI ÖFFNEN"
Else
Windows("Data.csv").Activate
ActiveSheet.Range("A1:C" & Cells(Rows.Count, 1).End(xlDown).Row).Copy
ThisWorkbook.Activate
Range("A1").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:= _
False
Application.CutCopyMode = False
Windows("Data.csv").Activate
ActiveSheet.Range("F1:F" & Cells(Rows.Count, 1).End(xlDown).Row).Copy
ThisWorkbook.Activate
Range("F1").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:= _
False
Application.CutCopyMode = False
Windows("Data.csv").Close
End If
End Sub

Gruß Ulf
Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Code vereinfachen - mehrere Spalten kopieren
30.01.2019 10:55:43
Werner
Hallo Ulf,
da kannst du doch gleich die ganze Spalte kopieren.
Teste mal:
Private Sub CommandButton2_Click()
Dim wbZiel As Workbook
If Not IsWorkbookOpen("Data.csv") Then
MsgBox ("Data.csv ist nicht geöffnet!"), vbCritical, "DATEI ÖFFNEN"
Else
Set wbZiel = ThisWorkbook
With Workbooks("Data.csv").Worksheets("Tabelle1")
.Columns("A:C").Copy
wbZiel.Worksheets("Tabelle1").Range("A1").PasteSpecial Paste:=xlPasteValues
.Columns("F:F").Copy
wbZiel.Worksheets("Tabelle1").Range("F1").PasteSpecial Paste:=xlPasteValues
Application.CutCopyMode = False
End With
End If
Workbooks("Data.csv").Close False
Set wbZiel = Nothing
End If
End Sub
Die Namen der Tabellenblätter mußt du im Code noch an deine Verhältnisse anpassen.
Gruß Werner
Anzeige
AW: Code vereinfachen - mehrere Spalten kopieren
30.01.2019 11:34:14
Ulf
Danke,
ich hatte mich dahingehend festgerannt, dass die zu kopierendenden Spalten ein dynamisches Ende haben.
Deshalb das "ActiveSheet.Range("A1:C" & Cells(Rows.Count, 1).End(xlDown).Row)."
Das sollte aber mit dem neuen Code auch funktionieren.
Gruß
Ulf
Gerne u. Danke für die Rückmeldung. o.w.T.
30.01.2019 13:09:20
Werner
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige