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

Fenster zum öffnen einer Datei

Fenster zum öffnen einer Datei
Patrick
Hallo zusammen,
ich habe per Rekorder eine Datei geöffnet. Leider schreibt der Rekorder genau diesen Dateinamen in das VBA-Programm.
1. Frage: Wie kann ich es hinbekommen, dass nur das Fenster geöffnet wird, der User dann die richtige Datei flexibel auswählt und dann das Programm fortgesetzt wird?
Workbooks.Open Filename:= _
"C:\Documents and Settings\mch1364a\Desktop\Statistik.xls"
2. Frage: Die Datei soll später unter anderem Namen gespeichert werden. Auch hier hat der Rekorder den Namen bereits fest vorgegeben. Kann man das flexibilisieren, so dass der User einen Namen eingeben kann? Kann man vielleicht sogar das Feld des Namens (z.B. "Ergebnis [Tagesdatum]") und des Formats (.txt) vorbelegen, so dass nur das Laufwerk flexibel gewählt werden muss?
ActiveWorkbook.SaveAs Filename:= _
"C:\Documents and Settings\mch1364a\Desktop\Ergebnis 09-07-30.txt", _
FileFormat:=xlText, CreateBackup:=False
Ich freue mich über eure Hilfe! Danke schonmal!
Patrick

11
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
zu 1.
30.07.2009 07:57:35
selli
hallo patrick,
Sub test()
Dim oFileDialog As FileDialog
Set oFileDialog = Application.FileDialog(msoFileDialogFilePicker)
With oFileDialog
.Title = "Wählen Sie bitte die Datei aus!"
.ButtonName = "Übernehmen"
.InitialFileName = "C:\"
.Show
MsgBox .SelectedItems(1)
End With
End Sub
gruß selli
Danke, Makro arbeitet aber die falsche Datei ab...
30.07.2009 08:29:23
Patrick
Hallo, hier habe ich das gleiche Problem. Die Datei ist zwar wählbar, wird aber nicht aktiviert, so dass das Makro in meiner Hilfsdatei wütet und nicht die geöffnete Datei bearbeitet... Sie meinen anderen Beitrag, da habe ich mehr dazu geschrieben...
Anzeige
AW: Fenster zum öffnen einer Datei
30.07.2009 08:02:00
MichaV
Hallo,
versuch mal:
MsgBox Application.GetOpenFilename
MsgBox Application.GetSaveAsFilename
Gruß- Micha
AW: Fenster zum öffnen einer Datei
30.07.2009 08:23:53
Patrick
Ok, damit bekomme ich den Dialog auf. Sehr gut.
Leider wird die dann geöffnete Datei nicht aktiviert, so dass das Makro in der vorher schon geöffneten Hilfs-Datei abgearbeitet wird. Ich habe mir eine Hilfsdatei erstellt, in der das Makro eingebettet ist, um das Makro auch anderen Usern leicht zur Verfügung stellen zu können.
Wie kann ich die geöffnete Datei gleichzeitig aktivieren, so dass das Makro dort abgearbeitet wird?
AW: Fenster zum öffnen einer Datei
30.07.2009 08:42:04
MichaV
Wie hast Du es geschafft dass der Recorder andere Arbeitsmappen bearbeitet?
Hier eine Möglichkeit. Kriegst Du das angepasst an Dein Makro?
Option Explicit
Sub test()
'Öffnet eine vom Benutzer ausgewählte Excel- Arbeitsmappe,
'bearbeitet diese (1. Seite grün, 2.Seite ein Text in Zelle A1
'speichert diese unter einem vom Benutzer ausgewählten Namen
'und schließt sie wieder
Dim strFilename 'Dateiname
Dim wbkWorkbook As Workbook 'Arbeitsmappe
strFilename = Application.GetOpenFilename("XL Files (*.xls), *.xls")
If VarType(strFilename) = vbBoolean Then MsgBox "Abbrechen gedrückt": Exit Sub
Set wbkWorkbook = Workbooks.Open(strFilename)
With wbkWorkbook 'Das ist die geöffnete Arbeitsmappe (Objekt wurde mit Set zugewiesen)
.Sheets(1).Cells.Interior.ColorIndex = 10 '1. Seite grün
.Sheets(2).Cells(1, 1).Value = "Irgendein Text" '2. Seite Text
End With
strFilename = Application.GetSaveAsFilename(strFilename, "XL Files (*.xls), *.xls")
If VarType(strFilename) = vbBoolean Then MsgBox "Abbrechen gedrückt": Exit Sub
wbkWorkbook.SaveAs strFilename 'Speichern unter neuem Dateinamen
wbkWorkbook.Close  'Schliessen
Set wbkWorkbook = Nothing 'Objekt aus Speicher entfernen
End Sub
Gruß- Micha
Anzeige
Kleine Nachfrage noch
30.07.2009 08:55:42
Patrick
Danke erstmal.
Funktioniert sehr gut. Wie bekomme es hin, dass statt xls das txt-Format zulässig / vorgeblendet ist?
strFilename = Application.GetSaveAsFilename(strFilename, "XL Files (*.xls), *.xls")
Kann man auch einen kompletten Dateinamen vorschlagen, der vom ursprünglichen Namen abweicht?
AW: Kleine Nachfrage noch
30.07.2009 09:02:13
MichaV
Hallo,
na ein bischen Ausprobieren ist aber erlaubt!
Application.GetSaveAsFilename("c:\irgendeine\datei.txt, "TXT Files (*.txt), *.txt")
Gruß- Micha
Kleine Berichtigung noch
30.07.2009 09:54:13
MichaV
da fehlten die schließenden Anführungszeichen.
Application.GetSaveAsFilename("c:\irgendeine\datei.txt", "TXT Files (*.txt), *.txt")
Anzeige
AW: Kleine Berichtigung noch
30.07.2009 09:55:44
Patrick
Danke Micha,
das hatte ich bemerkt ;-) Auch ein blindes Huhn...
AW: Kleine Berichtigung noch
30.07.2009 09:58:53
MichaV
und ich dachte das wäre der Grund warum die abschließende Antwort wie "jetzt klappts wie gewünscht, vielen Dank, tolles Forum" ausgeblieben ist :o)
Gruß- Micha
AW: Fenster zum öffnen einer Datei
30.07.2009 10:55:46
Patrick
Danke an alle! Ihr habt mir sehr geholfen! Ich komme jetzt weiter...

157 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige