Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1808to1812
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Kopieren von zweiter Arbeitsmappe

Kopieren von zweiter Arbeitsmappe
29.01.2021 18:24:48
zweiter
Hallo Leute,
Der untere Code dient zum monatlichen Kopieren von CSV Datei meiner Kontoauszüge von "ELBA"
Der funktioniert auch hervorragend.
Nur muß ich erst die CSV Datei "meinelba_umsaetze_" in diese Arbeitsmappe kopieren.
Könnte man es nicht machen wenn die CSV Datei geöffnet ist, diese gleich in die Arbeitsmappe zu kopieren ?
Option Explicit

Private Sub CommandButton1_Click()
Dim wksAkt As Worksheet, wksElbi As Worksheet
Application.ScreenUpdating = False
Set wksAkt = ActiveSheet
For Each wksElbi In ActiveWorkbook.Worksheets
If InStr(1, wksElbi.Name, "meinelba_umsaetze") > 0 Then
wksAkt.Range("A4").Range("A1:D999").Value = wksElbi.Range("A1:D999").Value
Application.DisplayAlerts = False
wksElbi.Delete
Application.DisplayAlerts = True
End If
Next
Cells.WrapText = True
Rows.EntireRow.AutoFit
Cells.Select
With Selection
.VerticalAlignment = xlCenter
.WrapText = True
.Orientation = 0
.AddIndent = False
.ReadingOrder = xlContext
.MergeCells = False
End With
Range("A1").Select
Application.ScreenUpdating = True
End Sub

Danke
Schöne grüße, Heinz

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

Betreff
Datum
Anwender
Anzeige
AW: Kopieren von zweiter Arbeitsmappe
30.01.2021 02:24:37
zweiter
Hallo Heinz,
du könntest die CSV mit den Auszugsdaten im Makro auswählen und öffnen.
Dann kann man die Daten direkt in direkt ins aktive Blatt übernehmen und anschließend die CSV-Datei wieder schließen.
LG
Franz
Private Sub CommandButton1_Click()
Dim wksAkt As Worksheet, wksElbi As Worksheet
Dim varElbi, wkbElbi As Workbook
varElbi = Application.GetOpenFilename(filefilter:="CSV-Dateien (*.csv),*csv", _
Title:="Bitte CSV mit Kontoauszüg öffnen")
If varElbi = False Then Exit Sub
Application.ScreenUpdating = False
Set wksAkt = ActiveSheet
Set wkbElbi = Application.Workbooks.Open(varElbi, ReadOnly:=True, Local:=True)
Set wksElbi = wkbElbi.Worksheets(1)
wksAkt.Range("A4").Range("A1:D999").Value = wksElbi.Range("A1:D999").Value
Application.DisplayAlerts = False
wkbElbi.Close savechanges:=False
Application.DisplayAlerts = True
With wksAkt
.Cells.WrapText = True
.Rows.EntireRow.AutoFit
With .Cells
.VerticalAlignment = xlCenter
.WrapText = True
.Orientation = 0
.AddIndent = False
.ReadingOrder = xlContext
.MergeCells = False
End With
Range("A1").Select
End With
Application.ScreenUpdating = True
End Sub

Anzeige
AW: Kopieren von zweiter Arbeitsmappe
30.01.2021 19:42:53
zweiter
Hallo Franz,
Bin erst jetzt dazugekommen um deinen abgeänderten Code zu testen.
Funktioniert auch Super. DANKE
Könnte ich unverschämt sein, und dich um weitere Hilfe bitten.
Wenn ich die Datei von Elba runterlade ist immer nur eine CSV Datei offen.
Könnte man nicht gleich von der geöffneten CSV die Daten kopieren.
Es ist immer nur eine CSV Datei offen.
Aber recht herzlichen Dank für deine Bemühung.
LG, Heinz
AW: Kopieren von zweiter Arbeitsmappe
31.01.2021 00:41:58
zweiter
Hallo Heinz,
hier die Variante mit Übernahme der Daten aus der geöffneten CSV-Datei in das aktive Tabellenblatt.
LG
Franz
Private Sub CommandButton1_Click()
Dim wksAkt As Worksheet, wksElbi As Worksheet
Dim varElbi, wkbElbi As Workbook
Application.ScreenUpdating = False
Set wksAkt = ActiveSheet
For Each wkbElbi In Application.Workbooks
If Right(LCase(wkbElbi.Name), 4) = ".csv" Then
Set wksElbi = wkbElbi.Worksheets(1)
Exit For
End If
Next
If wksElbi Is Nothing Then
MsgBox "Es ist keine CSV-Datei geöfnet"
Exit Sub
End If
wksAkt.Range("A4").Range("A1:D999").Value = wksElbi.Range("A1:D999").Value
Application.DisplayAlerts = False
wkbElbi.Close savechanges:=False 'zeile löschen, wenn CSV-Datei nicht geschlossen werden  _
soll
Application.DisplayAlerts = True
With wksAkt
.Cells.WrapText = True
.Rows.EntireRow.AutoFit
With .Cells
.VerticalAlignment = xlCenter
.WrapText = True
.Orientation = 0
.AddIndent = False
.ReadingOrder = xlContext
.MergeCells = False
End With
Range("A1").Select
End With
Application.ScreenUpdating = True
End Sub

Anzeige
AW: Kopieren von zweiter Arbeitsmappe
31.01.2021 09:05:46
zweiter
Hallo Franz,
S U P E R !!!
Läuft wie geschmiert.
Recht herzlichen DANK.
LG, Heinz

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige