Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1108to1112
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

Alle Tabellen aus Verzeichnis einlesen

Alle Tabellen aus Verzeichnis einlesen
Stefan
Hallo Forum,
ich habe auch nach langer Suche im Forum noch folgendes Problem: Ich möchte aus einem Verzeichnis, z.B c:\temp aus allen darin befindlichen Exceldateien, das Tabellenblatt "Klaus" in meine geöffnete Exceldatei kopieren.
Für Tipps wäre ich sehr dankbar.
Grüße,
Stefan

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Alle Tabellen aus Verzeichnis einlesen
15.10.2009 00:58:59
Josef
Hallo Stefan,
probier mal.
' **********************************************************************
' Modul: Modul1 Typ: Allgemeines Modul
' **********************************************************************

Option Explicit

Sub importSheets()
  Dim objWB As Workbook, objSh As Worksheet
  Dim strPath As String, strShName As String, strFile As String
  
  On Error GoTo ErrExit
  GMS
  
  strShName = "Klaus" 'Tabellenname
  strPath = "C:\Temp" 'Verzeichnis
  
  If Right(strPath, 1) <> "\" Then strPath = strPath & "\"
  
  strFile = Dir(strPath & "*.xls*")
  
  Set objSh = ActiveSheet
  
  Do While strFile <> ""
    Set objWB = Workbooks.Open(strPath & strFile)
    If SheetExist(strShName, objWB.Name) Then
      objWB.Sheets(strShName).Copy After:=ThisWorkbook.Sheets(ThisWorkbook.Sheets.Count)
    End If
    objWB.Close False
    strFile = Dir
  Loop
  
  objSh.Activate
  
  ErrExit:
  With Err
    If .Number <> 0 Then MsgBox "Fehler " & .Number & vbLf & vbLf & _
      .Description & vbLf & vbLf & "In Prozedur (importSheets) in Modul Modul1", _
      vbExclamation, "Fehler in Modul1 / importSheets"
  End With
  
  GMS True
  Set objSh = Nothing
  Set objWB = Nothing
End Sub

Private Function SheetExist(ByVal sheetName As String, Optional WbName As String) As Boolean
  Dim wks As Worksheet
  On Error GoTo ERRORHANDLER
  If WbName = "" Then WbName = ThisWorkbook.Name
  For Each wks In Workbooks(WbName).Worksheets
    If wks.Name = sheetName Then SheetExist = True: Exit Function
  Next
  ERRORHANDLER:
  SheetExist = False
End Function

Public Sub GMS(Optional ByVal Modus As Boolean = False)
  
  Static lngCalc As Long
  
  With Application
    .ScreenUpdating = Modus
    .EnableEvents = Modus
    .DisplayAlerts = Modus
    .EnableCancelKey = IIf(Modus, 1, 0)
    If Not Modus Then lngCalc = .Calculation
    If Modus And lngCalc = 0 Then lngCalc = -4105
    .Calculation = IIf(Modus, lngCalc, -4135)
    .Cursor = IIf(Modus, -4143, 2)
    
  End With
  
End Sub

Gruß Sepp

Anzeige
AW: Alle Tabellen aus Verzeichnis einlesen
16.10.2009 08:25:14
Stefan
Servus und vielen Dank. Das hat mir sehr weitergeholfen.
Grüße, Stefan

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige