Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
428to432
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
428to432
428to432
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

SaveAs

SaveAs
14.05.2004 17:53:33
Hristo
Hallo zusammen,
folgendes: Ich möchte beim Aufrufen von SaveAs Dialog das Zeilverzeichnis vorerst ändern, sodass das Speichern immer in einem bestimmten Verzeichnis erfolgt, egal welche Datei geöffnet wird. Das Zielverzeichnis ist ThisWorkbook.Path. Ich habe mit ChDrive und ChDir, beim Workbook_BeforeSave versucht, hat aber nicht geklappt.
Hat jemand eine Idee?
Grüsse
Hristo

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: SaveAs
14.05.2004 19:04:09
Matthias
Hallo Hristo,
ein wenig verwirrend für mich: Du sprichst von SaveAs, also speichern, und dann plötzlich vom Öffnen von Dateien.
Ich denke mal, im BeforeSave-Ereignis ist es zu spät, das aktuelle Verzeichnis mit ChDir zu setzen. Versuch's mal gleich bei Workbook_Open.
Gruß Matthias
AW: SaveAs
15.05.2004 03:01:34
Hristo
Sorry, ich hab es vielleicht nicht so ausführlich erklärt. Ich habe eine Tabelle, aus der ich mittels einer Schaltfläche eine andere existierende Tabelle öffne. By default speichert dann Excel die allerletzt geöffnete Tabelle, genau da, wo sie auch früher war. Ich möchte aber, dass alle neu geöffnete Tabellen in dem Verzeichnis der aufrufenden gespeichert werden. Aber mittels Excel SaveAs dialog. Quasi, ich will fast nichts an den Arbeitsvorgang mit Excel ändern, nur dass sich das SaveAs dialog in einem anderen Verzeichnis öffnet.
Einfach. Leider weiss ich nicht wie man das realisieren kann...
Übrigens habe ich mit Workbook_Open() versucht. Geht nicht. Das Verzeichnis wird nicht geändert.
Grüsse
Hristo
Anzeige
AW: SaveAs
15.05.2004 08:28:30
Matthias
Hallo Hristo,
mir fällt im moment nur folgendes ein:

Sub DateiÖffnen()
Dim s As String
s = Application.GetOpenFilename("Exceldateien, *.xls")
If s = "" Then Exit Sub
Workbooks.Open Filename:=s
ActiveWorkbook.SaveAs Filename:=ThisWorkbook.Path & "\" & ActiveWorkbook.Name
End Sub

Das heißt, nach dem Öffnen wird die Datei sofort unter dem gleichen Namen im Pfad der "Haupt-Datei" gespeichert. Dann ist bei zukünftigen Speicherungen auch dieser Pfad der Voreingestellte.
Hilft das vielleicht weiter?
Gruß Matthias
AW: SaveAs
16.05.2004 13:29:53
Hristo
Danke.
Naja, zu dem Versuch bin ich auch irgendwann gekommen. Leider möchte ich, wie vorher gesagt, die Excel-Vorgehensweise nicht ändern, sondern nur ganz wenig modellieren. Quasi, ich möchte nach Dateinamen schon fragen, bevor die richtige Speicherung vorgenommen wird...
Ausserdem ist die zu öffnende Datei eine TXT-Tabelle, die ich dann mittels Makro in Ordnung bringe und wieder speichern will. Geht nicht noch beim Workbook_Open().
Grüsse
Hristo
Anzeige
AW: SaveAs
16.05.2004 16:19:03
Andre
Hallo Matthias,
versuch mal Folgendes!
Den Code in das Codefenster für "Diese Arbeitsmappe" reinkopieren.
Damit biegst Du den Excel Standard SavesAs-Dialog auf Deinen eigenen um und kannst damit machen was Du willst, z.B. den Ordner für das "Speichern unter..." ändern.
Evtl. musst Du noch den Filenamen und den Filefilter ändern.
Option Explicit

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Cancel = False
If (SaveAsUI) Then
Cancel = True
Speichern
End If
End Sub


Private Sub Speichern()
Dim Verzeichnis As String
Dim DName As String
On Error Resume Next
Verzeichnis = ThisWorkbook.Path & "\"
DName = Application.GetSaveAsFilename(InitialFilename:=Verzeichnis & "Dateiname" & ".xls", FileFilter:="Microsoft Excel-Arbeitsmappe (*.xls), *.xls")
Select Case DName
Case False
End
Case Else
ThisWorkbook.SaveAs Filename:=DName
End Select
End Sub

Anzeige
AW: SaveAs
16.05.2004 21:08:05
Hristo
OK, vielen Dank. Das war es, was ich gesucht habe... ah, gleiche Sachen, aber anders geordnet... :)

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige