Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1768to1772
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

Dateiname

Dateiname
13.07.2020 10:41:43
Friedrich
Hallo liebe Excelfreunde,
ich brauche mal wieder eure Hilfe zu VBA.
Ich habe einen Makro aufgezeichnet der aus der Datei "FAVs (1).csv" die Zeilen 2 bis 100 kopieren und in meine Datenbank einfügt.
Ein System generiert die Datei, deren Inhalt ich kopieren möchte.
Seit einen Update des Systems wird der Dateiname zusätzlich durch eine vorlaufende Zahle in Klammer erzeugt.
Bsp.: FAVs (1).csv dann FAVs (2).csv und soweiter.
Gibt es eine Möglichkeit die Zahl in der Klammer zu umgehen, so das ich den Inhalt der Datei, egal welche Zahl in der Klammer steht zu umgehen.

Sub Daten_exportieren()
' Daten_exportieren Makro
' Tastenkombination: Strg+e
Call FIND_EMPTY_ROW
Windows("FAVs (1).csv").Activate
Rows("2:100").Select
Selection.Copy
Windows("CAT-Controlling Sifi_2020.xlsm").Activate
Selection.PasteSpecial Paste:=xlPasteValuesAndNumberFormats, Operation:= _
xlNone, SkipBlanks:=False, Transpose:=False
Windows("FAVs (1).csv").Activate
Application.CutCopyMode = False
ActiveWindow.Close
Call FIND_EMPTY_ROW
ActiveWorkbook.Save
End Sub

Vielen Dank im Voraus für eure Hilfe
Mit lieben Grüßen
Friedrich

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Dateiname
13.07.2020 10:52:25
Werner
Hallo,
wie sieht denn dein Makro FIND_EMPTY_ROW denn aus?
Gruß Werner
AW: Dateiname
13.07.2020 10:54:20
Friedrich

Sub FIND_EMPTY_ROW()
Dim zeil As Integer, spalt As Integer
Dim z As Integer, s As Integer
zeil = ActiveSheet.UsedRange.Rows.Count + 1 'letzte ausgef?llte Zeile
'spalt = ActiveSheet.UsedRange.Columns.Count 'letzte ausgef?llte Spalte
'For z = 1 To ActiveSheet.UsedRange.Rows.Count 'mit Zeilen anfangen
'Spalte f?r Spalte der obigen Zeile durchsuchen
'For s = 1 To ActiveSheet.UsedRange.Columns.Count
'If IsEmpty(Range(Cells(z, s), Cells(z, s)).Value) = True Then
'leere Zelle gefunden
Range(Cells(zeil, 1), Cells(zeil, 1)).Select 'gefundene Zelle selektieren
'Makro verlassen
'Exit Sub
'End If
'Next s
'Next z
End Sub

Anzeige
AW: Dateiname
13.07.2020 11:21:51
Werner
Hallo,
teste mal:
Sub Daten_exportieren()
Dim wb As Workbook, boVorhanden As Boolean
Application.ScreenUpdating = False
For Each wb In Workbooks
If wb.Name Like "FAVs*.csv" Then
boVorhanden = True
With wb.ActiveSheet
.Rows("2:100").Copy
End With
With ThisWorkbook.ActiveSheet
.Range("A" & .UsedRange.SpecialCells(xlCellTypeLastCell) _
.Offset(1).Row).PasteSpecial Paste:=xlPasteValuesAndNumberFormats
Application.CutCopyMode = False
wb.Close False
ThisWorkbook.Save
End With
Exit For
End If
Next wb
If Not boVorhanden Then
MsgBox "Fehler: Importdatei ist nicht geöffnet."
End If
End Sub
Das Makro FIND_EMPTY_ROW brauchst du jetzt nicht mehr.
Gruß Werner
Anzeige
AW: Dateiname
16.07.2020 09:41:22
Friedrich
Hallo Werner,
entschuldige das ich mich jetzt erst melde.
Der Makro läuft sehr gut.
Vielen Dank
Gerne u. Danke für die Rückmeldung. o.w.T.
16.07.2020 09:45:34
Werner
AW: Gerne u. Danke für die Rückmeldung. o.w.T.
16.07.2020 10:16:53
Friedrich
Hallo Werner,
eine bitte hätte ich noch.
Da ich mich mit VBA nun gar nicht auskenne.
Kannst du mir bitte noch eine Erweiterung einfügen.
Nach dem Einfügen hätte ich gerne das die nächste Zelle (A) nach der letzten befüllten Zelle (A)
angezeigt wird.
In Prinzip, .Range("A" & .UsedRange.SpecialCells(xlCellTypeLastCell) _
Vielen Dank im Voraus
Gruß Friedrich
meinst du...
16.07.2020 11:55:33
Werner
Hallo,
...das hier:
Sub Daten_exportieren()
Dim wb As Workbook, boVorhanden As Boolean
Application.ScreenUpdating = False
For Each wb In Workbooks
If wb.Name Like "FAVs*.csv" Then
boVorhanden = True
With wb.ActiveSheet
.Rows("2:100").Copy
End With
With ThisWorkbook.ActiveSheet
.Range("A" & .UsedRange.SpecialCells(xlCellTypeLastCell) _
.Offset(1).Row).PasteSpecial Paste:=xlPasteValuesAndNumberFormats
Application.CutCopyMode = False
wb.Close False
ThisWorkbook.Save
.Range("A" & .UsedRange.SpecialCells(xlCellTypeLastCell) _
.Offset(1).Row).Select
End With
Exit For
End If
Next wb
If Not boVorhanden Then
MsgBox "Fehler: Importdatei ist nicht geöffnet."
End If
End Sub
Gruß Werner
Anzeige
AW: meinst du...
16.07.2020 12:52:50
Friedrich
Hallo Werner,
ja, genau.
Super
Vielen Dank und Gruß
Friedrich
Gerne. o.w.T.
16.07.2020 12:53:50
Werner

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige