Microsoft Excel

Herbers Excel/VBA-Archiv

konvertieren von DBASE in Excelarbeitsblatt

    Betrifft: konvertieren von DBASE in Excelarbeitsblatt von: Roberto
    Geschrieben am: 27.08.2003 11:47:28

    Hallo,
    habe das Problem wenn ich eine DBASE-Datei in eine Excelarbeitsblatt konvertieren will zeigt er mir die Bedingungen zum konvertieren als Fehler an, habe sie mit Macrorekorder aufgezeichnet(Origin:=xlWindows, StartRow:=2, DataType:=xlFixedWidth, FieldInfo:= _ ...).
    Wenn ich in der Zeile darüber Workbooks.Open in Workbooks.OpenText ändere zeigt der Makro mir keinen Fehler mehr an aber das Makro funktioniert nicht bzw. es erzeugt kein Ergebnis, wer kann mir helfen bin verzweifelt,bitte genaue Anleitung bin Anfänger, vielen dank schon im vorraus.
    Gruss Roberto




    mein Ansatz:


    Sub Makro1()
    '
    ' Makro1 Makro
    ' Makro am 26.08.2003 von Lager2 aufgezeichnet
    '
    
    
    Sub Dateiliste_Öffnen()
        Dim strVerzeichnis As String
        Dim StrDatei As String
        Dim I As Integer
        Dim StrTyp As String
        Dim Dateiname As String
        Dim Aktuell_Datei As String
        Dim Aktuell_Register As String
        
    '    Liste erstellen
        Aktuell_Datei = ActiveWorkbook.Name
        Aktuell_Register = ActiveSheet.Name
        strVerzeichnis = "C:\Kunddat\"
        StrTyp = "*.DAT"
        Dateiname = Dir(strVerzeichnis & StrTyp)
        I = 3
        Do While Dateiname <> ""
            Cells(I, 1).Value = strVerzeichnis & Dateiname
            I = I + 1
            Dateiname = Dir
        Loop
    '    Öffnen
        For I = 3 To Cells(Rows.Count, 1).End(xlUp).Row
          Workbooks.Open Filename:=Workbooks(Aktuell_Datei).Worksheets(Aktuell_Register).Cells(I, 1) 
        Origin:=xlWindows, StartRow:=2, DataType:=xlFixedWidth, FieldInfo:= _
            Array(Array(0, 9), Array(5, 1), Array(9, 9), Array(36, 1), Array(41, 9), Array(68, 9)), _
            DecimalSeparator:=".", ThousandsSeparator:=" "
        Range("B1:B21").Select
        Range("B21").Activate
        ActiveCell.FormulaR1C1 = "=SUM(R[-20]C:R[-1]C)"
        Range("A21").Select
        ActiveCell.FormulaR1C1 = "=R[-20]C"
        Pfad = "C:\Kunddat"
        Dasteiname = Cells(1, 1).Value
        Datei = Pfad + Trim(Dateiname)+".XLS"
        ActiveWorkbook.SaveAs FileName:=Datei,FileFormat_
        :=xlNormal, Password:="", WriteResPassword:="",_
        ReadOnlyRecommended:= False, CreateBackup:=False
        With Application
        .DisplayAlerts = False
        .DisplayStatusBar = True
        .StatusBar = "Änderung an der Datei " _
        & ActiveWorkbook.Name & _
        "werden nicht gespeichert!"
        .Wait (Now + TimeValue("0:00:01"))
        .StatusBar = False
        End With
        ActiveWorkbook.Close
        Next I
    End Sub
    



      


    Betrifft: AW: konvertieren von DBASE in Excelarbeitsblatt von: Bernd
    Geschrieben am: 27.08.2003 14:16:25

    Hallo Roberto,
    kann es daran liegen, dass du strTyp als "*.DAT" definierst und nicht als "*.DBF"?

    Vielleicht verstehe ich den COde auch nicht, aber du möchtest doch eine DBF-Datei in eine XLS umwandeln oder?

    Gruß
    Bernd


      


    Betrifft: AW: konvertieren in Excelarbeitsblatt von: Roberto
    Geschrieben am: 28.08.2003 10:51:36

    Hallo danke für die Antwort, habe mich in der Aufregung verschrieben ist ein Dat Datei. Die Konvertierung noch dem Code funktioniert aber trotzdem nicht. Wäre froh wenn du mir ein Ansatzpunkt für einen anderen Code geben kannst oder eine Lösung für diesen, eine ausführlich Erklärung wäre auch gut wenn du soviel Zeit hast. Danke schon im vorraus. Gruss Roberto


     

    Beiträge aus den Excel-Beispielen zum Thema " konvertieren von DBASE in Excelarbeitsblatt"