XLS Datendatei auswählen
09.08.2007 11:45:00
bully
in meiner Excel-Datei öffne ich mit unten stehendem Code die Daten-Datei und importiere die Daten. Nun möchte ich, dass beim Öffnen der Daten-Datei eine Dialogbox mit dem aktuellen Verzeichnis und den darin enthaltenen xls Datein angezeigt wird, damit bei mehreren Daten-Dateien die gewünschte Datei ausgewählt werden kann und die Daten aus dieser Datei dann importiert werden.
Ich habe bereits die Recherche durchsucht, bin aber auf keine Lösung gestossen die meine Zwecke erfüllt.
Kann mir jemand von euch die Augen öffnen?
Gruss bully
If MsgBox("Neue Daten importieren - Ja/Nein", vbYesNo + vbQuestion, " nur zur Sicherheit.") = vbYes Then
If MsgBox("Quell Diskette in Laufwerk A einlegen", _
vbOKCancel + vbQuestion, " nur zur Sicherheit.") = vbOK Then
Else
Worksheets("Start").Activate
Exit Sub
End If
Else
Worksheets("Start").Activate
Exit Sub
End If
Workbooks.Open("A:\Bsp.xls").Activate
Columns("A:AE").Select
Selection.Copy
Workbooks("Auswertung").Activate
Worksheets("Daten").Activate
ActiveSheet.Paste
Dim lLetzte As Long ' die letzte belegte Zeile
Dim aVar() ' ein Array zur Datenaufnahme
Dim iIndx_1 As Integer ' Array-Index der 1. Dimension - Zeilen
Dim iIndx_2 As Integer ' Array-Index der 2. Dimension - Spalten
lLetzte = ActiveSheet.UsedRange.SpecialCells(xlCellTypeLastCell).Row
aVar = Range("A1:AE" & lLetzte) ' die Daten an den Array übergeben
For iIndx_1 = 1 To lLetzte ' ab 1 bis zu letzten Zeile
For iIndx_2 = 1 To 5 ' ab Spalte 1 bis 5
If Not IsEmpty(aVar(iIndx_1, iIndx_2)) Then
If IsNumeric(aVar(iIndx_1, iIndx_2)) Then
aVar(iIndx_1, iIndx_2) = CDbl(aVar(iIndx_1, iIndx_2))
ElseIf IsDate(aVar(iIndx_1, iIndx_2)) Then
aVar(iIndx_1, iIndx_2) = CDate(aVar(iIndx_1, iIndx_2))
End If
End If
Next iIndx_2
Next iIndx_1
Range("A1:AE" & lLetzte) = aVar ' den Array zurückübertragen
Application.DisplayAlerts = False
Workbooks("Bsp.xls").Close
Application.DisplayAlerts = True
Worksheets("Daten").Visible = False
Worksheets("Start").Activate