Live-Forum - Die aktuellen Beiträge
Datum
Titel
17.04.2024 18:57:33
17.04.2024 16:56:58
Anzeige
Archiv - Navigation
772to776
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
772to776
772to776
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Datei mit variabl. Namen schließen

Datei mit variabl. Namen schließen
14.06.2006 10:31:53
Thorsten_Z
Hallo Forum,
Ich tue mich mit folgendem Code etwas schwer. Ich starte aus der Mappe "StatistikStationär" folgenden Code, um eine Sicherung wieder herzustelle. Die Sicherung besteht immer aus dem Sicherungsdatum und SicherungStationär z.B.: "10.06.06 SicherungStationär.xls". Klappt auch alles wunderbar, Aber, ich möchte nun die geöffnete Sicherungsdatei auch wieder schließen. da der Name der Datei wegen des Datums immer anders ist (kann ja auch "11.06.06 SicherungStationär.xls" heißen)Weiß ich nicht wie ich dieses umsetzen kann. Die wiederherzustellende Datei wähle ich aus einer Liste.
Den Code habe ich von der Excel CD und leicht abgewandelt.
Hier der Code:

Sub OpenFiles()
Dim wks As Worksheet
Dim iRow As Integer
Dim sPath As String
Application.ScreenUpdating = False
Application.EnableEvents = False
Set wks = ActiveSheet
iRow = 1
sPath = Range("B1").Value
On Error GoTo ERRORHANDLER
Do Until IsEmpty(wks.Cells(iRow, 1))
iRow = iRow + 1
'hier wähle ich die wiederherzustellende Sicherung aus
If LCase(wks.Cells(iRow, 2).Value) = "x" Then
Workbooks.Open sPath & "\" & wks.Cells(iRow, 1).Value, False
Range("A1:AD4004").Select
Selection.Copy
'Wechsel von der Sicherungsdatei zu meiner Arbeitsmappe
Windows("StatistikStationär.xls").Activate
Sheets("Liste").Select
Range("B3").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
'bis hier läuft alles wie geplant. mir fehlt nur noch der Befehl
'um die entsprechende Sicherungsdatei wieder zu schlißen
End If
Loop
ERRORHANDLER:
Application.EnableEvents = True
Application.ScreenUpdating = True
End Sub

Ich hoffe mich verständlich ausgedrückt zu haben.
Wer hat einen Tipp für mich?
Vielen Dank im Vorraus
Rückmeldung von meiner Seite ist selbstverständlich
Gruß
Thorsten

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

Betreff
Datum
Anwender
Anzeige
AW: Datei mit variabl. Namen schließen
14.06.2006 10:48:47
u_
Hallo,
schließe das Workbook direkt nach dem Kopieren und paste dann. Die Selects und Activates kannst du dir sparen.

Sub OpenFiles()
Dim wks As Worksheet
Dim iRow As Integer
Dim sPath As String
Application.ScreenUpdating = False
Application.EnableEvents = False
Set wks = ActiveSheet
iRow = 1
sPath = Range("B1").Value
On Error GoTo ERRORHANDLER
Do Until IsEmpty(wks.Cells(iRow, 1))
iRow = iRow + 1
'hier wähle ich die wiederherzustellende Sicherung aus
If LCase(wks.Cells(iRow, 2).Value) = "x" Then
Workbooks.Open sPath & "\" & wks.Cells(iRow, 1).Value, False
Range("A1:AD4004").Copy
ActiveWorkbook.Close False
'Wechsel von der Sicherungsdatei zu meiner Arbeitsmappe
Windows("StatistikStationär.xls").Sheets("Liste").Range("B3").PasteSpecial _
Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
'bis hier läuft alles wie geplant. mir fehlt nur noch der Befehl
'um die entsprechende Sicherungsdatei wieder zu schlißen
End If
Loop
ERRORHANDLER:
Application.EnableEvents = True
Application.ScreenUpdating = True
End Sub

Gruß
Geist ist geil!
(Dies ist ein allgemeines Statement und nicht an bestimmte Personen gerichtet.)
Anzeige
AW: Datei mit variabl. Namen schließen
14.06.2006 11:18:42
Thorsten_Z
Hallo u_,
danke für die Schnelle Antwort. So hatte ich es auch geplant, aber dann kommt die Meldung mit "...eine Große Datenmenge in der Zwischenablage" und das möchte ich umgehen. Weil wenn auf nein geklickt wird, wird logischerweise nichts vom kopierten eingefügt. Ich weiß das und du weißt das. Aber meine lieben kolleginnen kommen mit solchen Meldungen schnell aus dem Tritt ;). Darum der etwas umständlichere Weg um die Meldung zu umgehen.
Vieleicht noch eine Idee?
Gruß
thorsten
AW: Datei mit variabl. Namen schließen
14.06.2006 11:39:03
u_
Hallo,
dann eben mit ner Variablen auf das Sicherungsworkbook.

Sub OpenFiles()
Dim wks As Worksheet
Dim iRow As Integer
Dim sPath As String
Dim wkbSicherung As Workbook
Application.ScreenUpdating = False
Application.EnableEvents = False
Set wks = ActiveSheet
iRow = 1
sPath = Range("B1").Value
On Error GoTo ERRORHANDLER
Do Until IsEmpty(wks.Cells(iRow, 1))
iRow = iRow + 1
'hier wähle ich die wiederherzustellende Sicherung aus
If LCase(wks.Cells(iRow, 2).Value) = "x" Then
Set wkbSicherung = Workbooks.Open(sPath & "\" & wks.Cells(iRow, 1).Value, False)
Range("A1:AD4004").Copy
'Wechsel von der Sicherungsdatei zu meiner Arbeitsmappe
Windows("StatistikStationär.xls").Sheets("Liste").Range("B3").PasteSpecial _
Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
wkbSicherung.Close False
'bis hier läuft alles wie geplant. mir fehlt nur noch der Befehl
'um die entsprechende Sicherungsdatei wieder zu schlißen
End If
Loop
ERRORHANDLER:
Application.EnableEvents = True
Application.ScreenUpdating = True
End Sub
Gruß
Geist ist geil!
(Dies ist ein allgemeines Statement und nicht an bestimmte Personen gerichtet.)
Anzeige
AW: Datei mit variabl. Namen schließen
14.06.2006 17:42:30
Thorsten_Z
Hallo u_
genau das habe ich gesucht. Funktioniert wunderbar.
Vielen vielen Dank
Gruß
Thorsten

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige