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

Makro:Einzulesende Dateien filtern

Makro:Einzulesende Dateien filtern
11.06.2015 17:37:06
Paul
Ich möchte mit einem Makro Dateien als Tabellenblatt in eine Excel Mappe importieren.
Bisher hab ich folgendes:

Sub Indizierungsdateien_importieren()
Dim dateien, i
Dim wkb As Workbook
dateien = Application.GetOpenFilename _
(MultiSelect:=True)
If IsArray(dateien) Then
For i = 1 To UBound(dateien)
Workbooks.Open dateien(i), local:=True
Set wkb = ActiveWorkbook
With ThisWorkbook
ActiveSheet.UsedRange.Copy
.Sheets.Add After:=.Sheets(.Sheets.Count)
.Sheets(.Sheets.Count).Name = wkb.Name
.Sheets(wkb.Name).Range("A1").PasteSpecial
End With
Application.CutCopyMode = False
wkb.Close False
Next i
End If
End Sub

Das funktioniert bisher auch super. Allerdings brauch ich nicht alle Dateien aus dem Ordner sondern nur die Dateien die am Ende ihres Namens "_mean" haben. Gibt es eine Möglichkeit einen Filter zu setzen und nur die gewünschten Dateien anzuzeigen?

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Makro:Einzulesende Dateien filtern
11.06.2015 19:11:56
fcs
Hallo paul,
zum beispiel so könnte es funktionieren.
Gruß
Franz
Sub Indizierungsdateien_importieren()
Dim dateien, i, iPos As Integer
Dim wkb As Workbook
dateien = Application.GetOpenFilename _
(MultiSelect:=True)
If IsArray(dateien) Then
For i = 1 To UBound(dateien)
iPos = InStrRev(dateien(i), "_mean")
If iPos > 0 Then
If Mid(dateien(i), iPos, Len("_mean") + 1) = "_mean." Then
Workbooks.Open dateien(i), local:=True
Set wkb = ActiveWorkbook
With ThisWorkbook
ActiveSheet.UsedRange.Copy
.Sheets.Add After:=.Sheets(.Sheets.Count)
.Sheets(.Sheets.Count).Name = wkb.Name
.Sheets(wkb.Name).Range("A1").PasteSpecial
End With
Application.CutCopyMode = False
wkb.Close False
End If
End If
Next i
End If
End Sub

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige