Kombinationsfeld statt Textfeld ?

Hallo Profis,

Ich importiere mit einer User-Form eine Text-Datei jedenTag auf`s Neue in meine Datenbank.
Das mache ich mit folgendem Code:

varAntwort = MsgBox("Wollen Sie die Daten neu importieren ? ", vbYesNo)

If varAntwort = vbYes Then

If Me.txtPfadDateiname = „“ Or IsNull(Me.txtPfadDateiname) Then
MsgBox („Bitte erst eine Datei *.txt auswählen.“)
Else
'Cursor auf W a r t e n stellen
DoCmd.Hourglass True
stSetName = Me.txtPfadDateiname
DoCmd.TransferText acImportDelim, „Spezifikation“, „Zieltabelle“, stSetName
'Rücknahme des Cursors
DoCmd.Hourglass False
MsgBox ("Es wurden die Daten importiert … ")
End If
End If

Exit_butTrans_Click:
Exit Sub

Err_butTrans_Click:
DoCmd.Hourglass False
MsgBox Err.Description
Resume Exit_butTrans_Click
End Sub

Nun ist die Frage, kann ich statt einer Textbox auch ein Kombinationsfeld in meiner UserForm erscheinen lassen, auf dem die Inhalte des Laufwerkes H:* erscheinen und vor dem Import von mir ausgewählt werden ?

Konkret: Was muß ich in welche Eigenschaft eines Kombinationsfeldes reinschreiben, um den Inhalt des Laufwerkes H anzeigen zu lassen ?

Gruß Christian

Hallo,

am Besten nimmst Du einen Filedialog, entweder (je nach Access-Version Application.Filedialog oder die API-Version , bzw. das MScomCtl.ocx).

Mit einem Kombi könntest Du mittels einer DIR-Scheife die Dateien eines Verzeichnisses durchlaufen (auslesen) und zu einer Wertliste zusammenbauen, die dem Kombi zugewiesen wird.

Hallo,

Hallo zurück

am Besten nimmst Du einen Filedialog, entweder (je nach
Access-Version Application.Filedialog oder die API-Version ,
bzw. das MScomCtl.ocx).

…viel zu hoch für mich - da muß ich erst Lybary’s aktivieren etc.
Ich denk die zweite Methode steht mir mehr zu Gesicht !!

Mit einem Kombi könntest Du mittels einer DIR-Scheife die
Dateien eines Verzeichnisses durchlaufen (auslesen) und zu
einer Wertliste zusammenbauen, die dem Kombi zugewiesen wird.

Das hört sich gut an. Kannst Du mir dabei helfen ?

Christian

Hallo wieder,

am Besten nimmst Du einen Filedialog, entweder (je nach
Access-Version Application.Filedialog oder die API-Version ,
bzw. das MScomCtl.ocx).

…viel zu hoch für mich - da muß ich erst Lybary’s
aktivieren etc.
Ich denk die zweite Methode steht mir mehr zu Gesicht !!

Mit einem Kombi könntest Du mittels einer DIR-Scheife die
Dateien eines Verzeichnisses durchlaufen (auslesen) und zu
einer Wertliste zusammenbauen, die dem Kombi zugewiesen wird.

Das hört sich gut an. Kannst Du mir dabei helfen ?

eigentlich solltest Du das so langsam selber hinbekommen…

Private Sub cmbDatei\_Enter()
Dim strFile As String, strPath As String
Me!cmbDatei.RowSourceType = "value list"
Me!cmbDatei.RowSource = ""

strPath = "c:\temp\"

strFile = Dir(strPath & "\*.\*")
Do Until strFile = ""
 If strFile "." And strFile ".." Then
 Me!cmbDatei.AddItem strFile
 End If
 strFile = Dir()
Loop
End Sub

„cmbDatei“ ist der Name eines Kombis, in dessen Liste die Dateien aus dem Verzeichnis, das in der Variablen „strPath“ steht, geschrieben werden.

Jedesmal, wenn das Kombi den Fokus erhält („Enter“) , wird die Liste neu gefüllt.

Viele Grüße vom Bodensee
Franz, DF6GL

das haut nicht hin !

Fehlermeldung:

Fehler bei Kompilieren

unzulässige verwendung des Schlüsselworts Me

Christian

Hallo,

wenn Du das richtig machst, haut es schon hin…

Der Code ist eine EREIGNIS-Prozedur für das „Beim-Hingehen“-Ereignis („Enter“-Eigenschaft) des Kombis. Insofern muss dieser Code im Formular(-Klassenmodul) stehen, in dem sich das Kombifeld befindet.

Viele Grüße vom Bodensee
Franz, DF6GL