MS-Office-Forum

Zurück   MS-Office-Forum > Microsoft Access & Datenbanken > Microsoft Access
Registrieren Forum Hilfe Alle Foren als gelesen markieren

Banner und Co.

Antworten
Ads
Themen-Optionen Ansicht
Alt 12.07.2019, 09:06   #1
Kai_W
Neuer Benutzer
Neuer Benutzer
Standard Acc2016 - Open Dialog unter 2016 aufrufen

Hallo,

hatte in meiner DB unter 2007 einen Aufruf um den Open-Dialog zu öffnen.
(Quelle für einen Import soll ausgewählt werden)

DName = Nz(szFileOpenDlg(Filter, defExt, G_AllgI3))

Nun wollte ich die selbe DB unter Office 2016 laufen lassen. Funktioniert soweit alles, bis auf den Aufruf für den Open Dialog.

Es kommt weder eine Fehlermeldung noch öffnet sich das Fenster.

Geh mal davon aus unter 2016 wird der Dialog anders aufgerufen.
Weiß jemand wie ? Finde keine Infos dazu

Danke

Kai
Kai_W ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 12.07.2019, 09:19   #2
markusxy
MOF Meister
MOF Meister
Standard

Da hat sich nichts geändert.
Für Hilfe musst du aber den Code posten.
markusxy ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 12.07.2019, 09:28   #3
Kai_W
Threadstarter Threadstarter
Neuer Benutzer
Neuer Benutzer
Standard

Dim DName As String
Dim Filter As String, defExt As String
Me.TimerInterval = 0 ' nicht nochmal aufrufen

On Error Resume Next
If Len(Nz(G_AllgI1S)) = 0 Then G_AllgI1S = "" ' Filter
If Len(Nz(G_AllgI2)) = 0 Then G_AllgI2 = "" ' default Extension
If Len(Nz(G_AllgI3)) = 0 Then G_AllgI3 = "" ' default Dir

Filter = G_AllgI1S: defExt = G_AllgI2
'MsgBox Filter
If Me.OpenArgs = "Verz" Then
DName = Nz(szShowFolder())
Else
DName = Nz(szFileOpenDlg(Filter, defExt, G_AllgI3))

End If
G_AllgI5 = DName
MsgBox "nach OpenDlg " & G_AllgI5

DoCmd.Close acForm, Me.Name
Kai_W ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 12.07.2019, 09:34   #4
Kyron9000
MOF Meister
MOF Meister
Standard

Hallo,

das wird wohl eine Funktion sein, den Befehl kenne ich nicht...
Code:

szFileOpenDlg
...den Code auch posten.

__________________

Gruß Alfred
Kyron9000 ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 12.07.2019, 09:56   #5
Kai_W
Threadstarter Threadstarter
Neuer Benutzer
Neuer Benutzer
Standard

Du hast recht, sorry:

Function szFileOpenDlg(Filter As String, DefaultExt As String, Optional defaultDir As Variant) As String

Dim O As OPENFILENAME

szFileName = ""
szFile = String$(128, 0)

Call ParseFilter(Filter, DefaultExt)
szDefaultExt = DefaultExt
szFilter = Filter

szFile = szDefaultExt + String$(128 - Len(szDefaultExt), 0)
wSize = Len(szFile) + Len(szFilter)

O.lStructSize = Len(O)


O.Flags = OFN_FILEMUSTEXIST Or OFN_HIDEREADONLY Or OFN_PATHMUSTEXIST
O.NFilterIndex = 1
O.strFile = szFile
O.nMaxFile = Len(szFile)
O.strFilter = szFilter

If IsMissing(defaultDir) = False Then
If Len(defaultDir) > 0 Then O.strInitialDir = defaultDir
End If

'Call the FileOpen common dialog
wResult = GetFileOpenName(O)

If wResult = False Then
Exit Function
End If

szFileName = Left$(O.strFile, InStr(O.strFile, Chr$(0)) - 1)
szFileOpenDlg = LCase$(szFileName)


End Function
Kai_W ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 12.07.2019, 10:43   #6
markusxy
MOF Meister
MOF Meister
Standard

Was ist "OPENFILENAME" für eine Klasse?
Die ist kein Bestandteil von Access.

Office hat doch schon seit der Version 2007 einen eingebauten Filedialog - warum verwendest du nicht den?

https://docs.microsoft.com/en-us/off...ice.filedialog

Beispiel müssten zu finden sein, falls du was zum Kopieren brauchst.
markusxy ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 12.07.2019, 14:58   #7
Kai_W
Threadstarter Threadstarter
Neuer Benutzer
Neuer Benutzer
Standard

Hi,

danke dir für das Beispiel, hast ja recht.
werde es mal testen.

Gruß
Kai
Kai_W ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Ads
Antworten


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Besucher: 1)
 
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge anzufügen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

vB Code ist An.
Smileys sind An.
[IMG] Code ist An.
HTML-Code ist An.
Gehe zu


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:22 Uhr.



Powered by: vBulletin Version 3.6.2 (Deutsch)
Copyright ©2000 - 2019, Jelsoft Enterprises Ltd.

Copyright ©2000-2018 MS-Office-Forum. Alle Rechte vorbehalten.
Copyright ©Design: Manuela Kulpa ©Rechte: Günter Kramer
Eine Verwendung der Inhalte in anderen Publikationen, auch auszugsweise,
ist ohne ausdrückliche Zustimmung der Autoren nicht gestattet.