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

Datei öffnen und Blatt speichern

Datei öffnen und Blatt speichern
snoopyine
Hallo zusammen,
nach langer Zeit beschäftige ich mich mal wieder mit VBA und habe folgendes Problem:
Ich möchte aus meiner Masterdatei mit VBA eine Datei öffnen und aus dieser Datei zwei Blätter kopieren und in die Masterdatei einfügen. Die Datei kann ich öffnen, nur danach wird der Code nicht weiter ausgeführt.
Dim quelldatei As Variant
Dim zieldatei As Variant
Dim wrks As Worksheets
Set zieldatei = ThisWorkbook
Path = Application.ActiveWorkbook.Path
quelldatei = Application.Dialogs(xlDialogOpen).Show
....
Vielen Dank für eure Hilfe!

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Datei öffnen und Blatt speichern
03.11.2011 20:04:29
Josef

Hallo ?
das geht z. B. so.
' **********************************************************************
' Modul: Modul1 Typ: Allgemeines Modul
' **********************************************************************

Option Explicit

Sub importSheets()
  Dim objWB As Workbook
  Dim strFile As String
  Dim strSheets(1) As String
  
  On Error GoTo ErrExit
  tranquilize
  
  strSheets(0) = "Tabelle1" 'Name des ersten zu importierenden Tabellenblattes
  strSheets(1) = "Tabelle2" 'Name des zweiten zu importierenden Tabellenblattes
  
  strFile = Application.GetOpenFilename("Excel Dateien (*.xls; *.xlsx; *.xlsm)," & _
    "*.xls; *.xlsx; *.xlsm")
  
  If strFile <> CStr(False) Then
    Set objWB = Workbooks.Open(strFile)
    With ThisWorkbook
      objWB.Sheets(strSheets).Copy after:=.Sheets(.Sheets.Count)
    End With
    objWB.Close False
  End If
  
  ErrExit:
  tranquilize True
  Set objWB = Nothing
End Sub


Public Sub tranquilize(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
  
  If Modus Then
    With Err
      If .Number <> 0 Then
        MsgBox IIf(Erl, vbLf & "Fehler in Zeile:" & vbTab & Erl & vbLf & vbLf, "") & _
          "Fehlernummer:" & vbTab & .Number & vbLf & vbLf & "Beschreibung:" & vbLf & _
          .Description, vbExclamation, "Fehler"
      End If
      .Clear
    End With
  End If
End Sub



« Gruß Sepp »

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige