Office Forum
www.Office-Loesung.de
Access :: Excel :: Outlook :: PowerPoint :: Word :: Office :: Wieder Online ---> provisorisches Office Forum <-
Anfänger verzweifelt am Datei-Dialog -für geduldige Experten
zurück: Restore auf ein Formular anwenden weiter: KombiFeld und drucken Unbeantwortete Beiträge anzeigen
Neues Thema eröffnen   Neue Antwort erstellen     Status: Feedback Facebook-Likes Diese Seite Freunden empfehlen
Zu Browser-Favoriten hinzufügen
Autor Nachricht
friedet
Talentierter Frickelant


Verfasst am:
04. Jun 2008, 09:51
Rufname: Thomas
Wohnort: Rommerskirchen-Frixheim

Anfänger verzweifelt am Datei-Dialog -für geduldige Experten - Anfänger verzweifelt am Datei-Dialog -für geduldige Experten

Nach oben
       Version: Office 2003

Hallo,
Ich verzweifle an der Dateiauswahl. Immer wenn ich frage, werde ich auf Beispiele in nicht aktuellen Access-Versionen verwiesen und die Beispiele sind toll ausformuliert und ausgefeilt, helfen mir als blutigem Anfänger aber wenig. Daher wäre ich für eine sehr einfach zu verstehende Lösung dankbar.

Was will ich tun:
In einer Kundenverwaltung habe ich ein Textfeld namens Pfad. In dem entsprechenden Formular wird dieses Textfeld angezeigt. Es soll 2 Möglichkeiten geben:
1) Doppelklick auf das Textfeld. Dann soll der Pfadauswahldialog aufgehen, um einen neuen Pfad auszuwählen
2) Klick auf Button: Dann soll der Dateiauswahldialog aufgehen (filter *.*) um eine Datei aus dem Verzeichnis auszuwählen und beim klicken auf den dortigen "Öffnen" Button bzw. Doppelklick soll diese Datei mit dem entsprechenden Windows-Standardprogramm geöffnet werden (meist Word, Excel, Outlook)

Sorry, wenn das sicher schon 100 mal gefragt wurde und bitte, bitte eine Lösung, die ein Anfänger versteht

_________________
Vielen Dank an alle, die sich hier so viel Mühe machen

Thomas Friederich
MAPWARE
Access Profi(l)neurotiker


Verfasst am:
04. Jun 2008, 11:01
Rufname:
Wohnort: Hannover


AW: Anfänger verzweifelt am Datei-Dialog -für geduldige Expe - AW: Anfänger verzweifelt am Datei-Dialog -für geduldige Expe

Nach oben
       Version: Office 2003

Hi,

erstelle eine neues allgemeines Modul und füge dort folgende Funktion ein:
Code:
Public Function OpenExternalFile() As String
    Dim fd As Object
    Dim vFile As Variant
   
    Set fd = Application.FileDialog(1)
    With fd
        .Filters.Add "Alle Dateien", "*.*"
        .AllowMultiSelect = False
        If .Show Then
            For Each vFile In fd.SelectedItems
                Application.FollowHyperlink vFile
                OpenExternalFile = vFile
            Next vFile
        End If
    End With
End Function
Nimm Dir die Zeit diesen Code zu verstehen. Er öffnet einen Dateiauswahldialog und startet danach die assozierte Datei. Die Funktion gibt dann auch noch den Pfad der geöffneten Datei zurück.

Im Direktbereich kannst Du das ausprobieren mit:
Code:
? OpenExternalFile

_________________
Grüße
Marcus

Wer Controls nicht sinnvoll benennt, wird es später bereuen.
friedet
Talentierter Frickelant


Verfasst am:
04. Jun 2008, 12:17
Rufname: Thomas
Wohnort: Rommerskirchen-Frixheim

AW: Anfänger verzweifelt am Datei-Dialog -für geduldige Expe - AW: Anfänger verzweifelt am Datei-Dialog -für geduldige Expe

Nach oben
       Version: Office 2003

friedet am 04. Jun 2008 um 11:47 hat folgendes geschrieben:
Razz Teilweise schon supergeil, aber ...... Ich brauche noch mehr Hilfe
ich hab folgenden code eingefügt bei der Variablen, die den Pfan aufnehmen soll:
Code:
Private Sub pfad_DblClick(Cancel As Integer)
    pfad = OpenExternalFile()
End Sub
Dann geht tatsächlich das Auswahlfenster auf und wenn ich ein Dokument auswähle, öffnet die entsprechende Anwendung und in ihr das Dokument.

Davon bin ich jetzt erstmal echt begeistert. Allerdings wird der komplette Dateiname mit Pfad und Name angezeigt. Ich denke, das krieg ich aber hin, dass nur der pfad-Teil abgesprichert wird. Aber ich hatte etwas leicht anderes vor. Ich wollte da, wo ich den code eingefügt habe nur den Pfad auswählen. Ich meine, dafür gibt es eine spezielle Windows Form der Dateiauswahl. Und der eigentliche Befehl, die jetzige Dateiauswahl aufzurufen und ein Dokument anzuzeigen, sollte über den Button erfolgen. Im Moment habe ich für zwei Kunden die Pfade gespeichert (für testzwecke manuell nachbearbeitet) und wenn ich von einem Kunden zum nächsten wechsel, sollte natürlich auch der pfad gewechselt werden.
(zur Erläuterung: Es sind Industriekunden wie Bayer, BASF usw. Und wir haben für jeden Kunden ein eigenes Verzeichnis in dem diverse Dokumente gespeichert sind)

Very Happy So, ich habe den code schon geändert, er ist jetzt so, dass nur der Pfad gespeichert wird.
Code:
Private Sub pfad_DblClick(Cancel As Integer)
    pfad = Left(OpenExternalFile(), InStrRev(OpenExternalFile(), "\"))
End Sub
Da es ja auch kein Problem wäre, die ganze Prozedur über den Doppelklick zu starten, müßte es gehen, wenn ich vor dem Aufruf den jetzt gespeicherten Pfad vorgebe.

Liege ich da richtig, wenn ich in deinen Code eine Zeile einfüge
Code:
        .initialfilename = [pfad]
und ausserdem einfüge weil es besser ist für meinen zweck
Code:
        .initialview = msofiledialogviewdetails
gibt es auch eine Ergänzung, um die Dateien nach Name zu ordnen?

Viele Fragen, ich weis

_________________
Vielen Dank an alle, die sich hier so viel Mühe machen

Thomas Friederich
MAPWARE
Access Profi(l)neurotiker


Verfasst am:
04. Jun 2008, 12:55
Rufname:
Wohnort: Hannover

AW: Anfänger verzweifelt am Datei-Dialog -für geduldige Expe - AW: Anfänger verzweifelt am Datei-Dialog -für geduldige Expe

Nach oben
       Version: Office 2003

Ok,

hier die kleine Erweiterung
Code:
Public Function OpenExternalFile(Optional BasePath) As String
    Dim fd As Object
    Dim vFile As Variant
   
    Set fd = Application.FileDialog(1)
    With fd
        If Not IsMissing(BasePath) Then
            .InitialFileName = BasePath
        End If
        .InitialView = 2
        .Filters.Add "Alle Dateien", "*.*"
        .AllowMultiSelect = False
        If .Show Then
            For Each vFile In fd.SelectedItems
                Application.FollowHyperlink vFile
                OpenExternalFile = vFile
            Next vFile
        End If
    End With
End Function
Code:
Private Sub pfad_DblClick(Cancel As Integer)
    pfad = Left(OpenExternalFile(), InStrRev(OpenExternalFile(), "\"))
End Sub
Kann eigentlich nicht stimmen, da müsste der Dialog zweimal kommen.
besser jetzt.
Code:
Private Sub pfad_DblClick(Cancel As Integer)
   Pfad = OpenExternalFile(Pfad)
   Pfad = Left(Pfad, InStrRev(Pfad, "\"))
End Sub
die Sortierung legt der Anwender einfach selber fest, indem er auf die Spalte klickt, der Dialog merkt sich das fürs nächste Öffnen.
_________________
Grüße
Marcus

Wer Controls nicht sinnvoll benennt, wird es später bereuen.
friedet
Talentierter Frickelant


Verfasst am:
04. Jun 2008, 14:09
Rufname: Thomas
Wohnort: Rommerskirchen-Frixheim

AW: Anfänger verzweifelt am Datei-Dialog -für geduldige Expe - AW: Anfänger verzweifelt am Datei-Dialog -für geduldige Expe

Nach oben
       Version: Office 2003

Hallo, stimmt schon fast. fehlt aber ein *.*, sonst klappt das mit dem Pfad nicht. und im Aufruf ist auch noch was falsch (oder sollte in deinem Text ergänzt werden, nämlich die leerzeichen aus Pfad müssen noch raus. In deutsch wäre das die Funktion "glätten()", ich suche noch nach der englichen Entsprechung
Code:
Private Sub pfad_DblClick(Cancel As Integer)
    pfad = OpenExternalFile(pfad)
    pfad = Left(pfad, InStrRev(pfad, "\")) & "*.*"
End Sub
Auf alle Fälle vielen Dank!
_________________
Vielen Dank an alle, die sich hier so viel Mühe machen

Thomas Friederich
MAPWARE
Access Profi(l)neurotiker


Verfasst am:
04. Jun 2008, 14:20
Rufname:
Wohnort: Hannover

AW: Anfänger verzweifelt am Datei-Dialog -für geduldige Expe - AW: Anfänger verzweifelt am Datei-Dialog -für geduldige Expe

Nach oben
       Version: Office 2003

Hi,
ich sehe, Du kommst jetzt auch alleine klar. 8)
Ich habe zwar keine Ahnung wo die Leeräume herkommen sollen, (es sei denn, man gibt sie absichtlich ein), aber die englische Entsprechung für Glaetten() ist Trim(). Und bei mir geht das definitiv auch ohne *.*.
Code:
? OpenExternalFile("C:\Dokumente und Einstellungen")
klappt bei mir.
Code:
Public Function OpenExternalFile(Optional BasePath) As String
    Dim fd As Object
    Dim vFile As Variant
   
    Set fd = Application.FileDialog(1)
    With fd
        If Not IsMissing(BasePath) Then
            .InitialFileName = Trim(BasePath)
        End If
        .InitialView = 2
        .Filters.Add "Alle Dateien", "*.*"
        .AllowMultiSelect = False
        If .Show Then
            For Each vFile In fd.SelectedItems
                Application.FollowHyperlink vFile
                OpenExternalFile = vFile
            Next vFile
        End If
    End With
End Function

_________________
Grüße
Marcus

Wer Controls nicht sinnvoll benennt, wird es später bereuen.
friedet
Talentierter Frickelant


Verfasst am:
04. Jun 2008, 14:36
Rufname: Thomas
Wohnort: Rommerskirchen-Frixheim


AW: Anfänger verzweifelt am Datei-Dialog -für geduldige Expe - AW: Anfänger verzweifelt am Datei-Dialog -für geduldige Expe

Nach oben
       Version: Office 2003

nochmals vielen Dank!
_________________
Vielen Dank an alle, die sich hier so viel Mühe machen

Thomas Friederich
Neues Thema eröffnen   Neue Antwort erstellen Alle Zeiten sind
GMT + 1 Stunde

Diese Seite Freunden empfehlen

Seite 1 von 1
Gehe zu:  
Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum nicht posten
Du kannst Dateien in diesem Forum herunterladen

Verwandte Themen
Forum / Themen   Antworten   Autor   Aufrufe   Letzter Beitrag 
Keine neuen Beiträge Access Tabellen & Abfragen: Zeilen vergleichen: Anfänger braucht dringend Hilfe! 16 jazzreindeer 593 05. Sep 2011, 12:28
Gast Zeilen vergleichen: Anfänger braucht dringend Hilfe!
Keine neuen Beiträge Access Tabellen & Abfragen: Union? left join? SQL anfänger frage 4 Fleedt 1200 22. Aug 2011, 12:48
Gast Union? left join? SQL anfänger frage
Keine neuen Beiträge Access Tabellen & Abfragen: Anfänger bräuchte Hilfe! 1 Chap13 180 19. Jan 2011, 20:25
Oma! Anfänger bräuchte Hilfe!
Keine neuen Beiträge Access Formulare: Hinweisbox: Für einen Anfänger ein Problem ... 6 simon1961 497 14. Sep 2009, 21:17
simon1961 Hinweisbox: Für einen Anfänger ein Problem ...
Keine neuen Beiträge Access Tabellen & Abfragen: Anfänger braucht Hilfe, einfache Abfrage mit Formular? 3 LaDDe 502 30. Jul 2009, 20:28
DBKlempner Anfänger braucht Hilfe, einfache Abfrage mit Formular?
Keine neuen Beiträge Access Tabellen & Abfragen: Abfrage, Berechnung, Division durch 0 - Anfänger 8 AldorMeridian 1611 03. Apr 2009, 12:07
AldorMeridian Abfrage, Berechnung, Division durch 0 - Anfänger
Keine neuen Beiträge Access Formulare: 2 Fragen von Anfänger 3 Spaggi 288 03. Apr 2009, 11:43
Marmeladenglas 2 Fragen von Anfänger
Keine neuen Beiträge Access Formulare: Frage für Experten zum Thema Textfeld 16 Asterix 2 1097 07. Dez 2008, 07:23
Asterix 2 Frage für Experten zum Thema Textfeld
Keine neuen Beiträge Access Formulare: Verzeichnisauswahl / Dateidialog abbrechen - Wert verloren ? 4 Gast20 597 21. Nov 2007, 11:57
Gast20 Verzeichnisauswahl / Dateidialog abbrechen - Wert verloren ?
Keine neuen Beiträge Access Formulare: Anfänger - Unterformular? 4 Cleopatra777 489 09. Aug 2007, 09:34
Cleopatra777 Anfänger - Unterformular?
Keine neuen Beiträge Access Formulare: ERLEDIGT: Access Anfänger braucht Hilfe mit Formular-Suche 11 faiko 2305 18. Jul 2007, 12:01
Lemming1 ERLEDIGT: Access Anfänger braucht Hilfe mit Formular-Suche
Keine neuen Beiträge Access Tabellen & Abfragen: Wenn-Dann-Formel für Anfänger ;) 1 baeckk 504 27. Jun 2007, 16:51
Nouba Wenn-Dann-Formel für Anfänger ;)
 

----> Diese Seite Freunden empfehlen <------ Impressum - Besuchen Sie auch: PHP JavaScript