Formulier "Openen bestand"

Status
Niet open voor verdere reacties.

Eugene

Gebruiker
Lid geworden
24 nov 2000
Berichten
108
Ik heb in VBA ooit een commando gezien die het standaard Windows formulier "Openen" of "Opslaan als" etc opend. Er is er ook een voor het printen.

Ik ben deze commando's helaas vergeten en ben al twee uur aan het zoeken in de help.

Wie weet welke commando dit is.
Alvast bedankt.
 
Gebruik voor dit doel een CommonDialog control.

Hallo Eugene,

Bedoel je misschien in VB in plaats van VBA?

VB staat voor Visual Basic en het is een compiler. VBA staat voor Visual Basic for
Application en kun je daar geen uitvoerbare programma's mee maken.

Hier een VB-code voor de Open Dialog.

Plaats een CommonDialog control en een knop op het Form.
Code voor de knop staat hieronder.

Code:
Private Sub Command1_Click()
  Dim Ret As Integer
  CommonDialog1.CancelError = True 'Voor de Esc-toets(annuleren)
  On Error GoTo FoutAfhandeling
  CommonDialog1.Flags = cdlOFNHideReadOnly
  ' Het instellen van filters.
  CommonDialog1.Filter = "All Files (*.*)|*.*|Text Files" & _
  "(*.txt)|*.txt|Batch Files (*.bat)|*.bat"
  ' Het instellen v.d. standaard filter.
  CommonDialog1.FilterIndex = 2
  ' Laat de Open dialog box zien.
  CommonDialog1.ShowOpen
  'Selecteer bijvoorbeeld NOTEPAD.EXE
  'Dit programma zit in x:\windows\system32
  'Met het commando hieronder wordt Notepad gerund.
  Ret = Shell(CommonDialog1.FileName, vbMaximizedFocus)
  Exit Sub
  
FoutAfhandeling:
  'Omdat de gebruiker op de Esc-toets gedrukt heeft
  'wordt de OpenDialog-box verlaten.
  Exit Sub
End Sub

Opmerking:

CommonDialog1.ShowSave kun je voor "Opslaan als" gebruiken.
CommonDialog1.ShowPrinter kun je voor het printen gebruiken.

Groetjes,
 
Laatst bewerkt:
Ha Dennis,

Bedankt voor je reactie.

Ik bedoel echt in VBA. Ik heb in Access een stukje VBA geschreven om een bestand te importeren en daarna wat bewerkingen met de data uit te voeren. Als voorlopige oplossing vraag ik via een inputbox om een bestandsnaam. Deze inputbox wil ik echter vervangen door de standaard "Bestand openen" formulier van Windows. Hier kan je een drive kiezen, daarne de directory en uiteindelijk je bestand.

Het commando wat jij noemt "Commondialog1" kent mijn Access niet. Misschien mis ik wel een dll of iets dergelijks.

Normaal gesproken als ik een commando typ met een puntje erachter komt er vanzelf een keuzescherm. Bij dit commando komt dit echter niet. Er is ook geen Help beschikbaar.

Groetjes.
 
Sorry voor mijn te late reactie.

Hallo Eugene,

Zelf doe ik niet zoveel met VBA, wel met VB.

De VB code, die ik eerder beschreef is ook van toepassing voor het gebruik binnen
MS-Word. (Maar ook binnen Excel)

1) Run MS-Word
2) Activeer Visual Basic editor door:
Tools/Macro/Visual Basic editor
3) Je zit nu in Visual Basic editor.
4) Klik linksboven op het 2e icoontje "Insert UserForm"
5) Zowel het UserForm als de Toolbox zijn nu op het scherm zichtbaar.
Als er geen CommonDialog control op de Tool-Box aanwezig is, dan een rechtsklik
op de Tool-Box te geven en via components alsnog dat control op de Tool-Box te plaatsen.
6) Plaats op het UserForm een Button en een CommonDialog control.
7) Je kunt de eerder beschreven VB code onder de zojuist geplaatste Button plaatsen(copieren).
8) Je kunt nu het programma runnen.

Het effect is precies hetzelfde zoals je dat binnen VB gebruikt.

Groetjes,

Dennis.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan