Hirdetés

Keresés

Új hozzászólás Aktív témák

  • Fire/SOUL/CD

    félisten

    válasz Brumi #44410 üzenetére

    ezt a sort
    ActiveWorkbook.SaveAs Filename:="SAP_booking.txt", FileFormat:=xlText

    módosítod erre
    ActiveWorkbook.SaveAs Filename:=ThisWorkbook.Path & "\" & "SAP_Booking.txt", FileFormat:=xlText

    Ez meg egy másik megközelítés, talán van/lesz hasznos dolog a későbbiekben számodra.

    Private Sub CommandButton1_Click()

    Dim MyWorkBook As Workbook
    Dim MySheet As Worksheet
    Dim MyRange As Range
    Dim MyFilename, TextFileLine As String
    Dim MyFirstColumn, MyLastColumn As String

    Set MyWorkBook = ThisWorkbook
    Set MySheet = Sheets("input")
    'Feldolgozandó adatok kezdőcellája
    MyFirstColumn = "A4"
    'Feldolgozandó adatok utolsó oszlopa
    MyLastColumn = "Q"
    'Fájlnév megadása, ami az adott Excel munkafüzettel egy könyvtárban kerül létrehozásra
    MyFilename = MyWorkBook.Path & "\" & "SAP_Booking.txt"

    'Adattartomány meghatározása
    Set MyRange = MySheet.Range(MyFirstColumn & _
    ":" & _
    MyLastColumn & _
    MySheet.Range(MyLastColumn & Rows.Count).End(xlUp).Row)

    'Fájl létrehozása (ha nem létezik létrehozza, ha létezik KÉRDÉS NÉLKÜL felülírja
    Open MyFilename For Output As #1

    'Végigszaladunk az adattartomány celláin
    For i = 1 To MyRange.Rows.Count
    'Ha az adattartomány kezdő oszlopában található cella nem üres(ha üres, akkor a sor is üresnek tekindendő),
    'akkor feldolgozzuk az adott sorban lévő adatokat
    If Not IsEmpty(MyRange.Cells(i, 1)) Then
    For j = 1 To MyRange.Columns.Count
    'Tabulátorral elválasztott szöveg létrehozása a sor celláinak feldolgozásával
    TextFileLine = IIf(j = 1, "", TextFileLine & vbTab) & MyRange.Cells(i, j)
    Next j
    'Kiírás fájlba
    Print #1, TextFileLine
    End If
    Next i

    'Fájl lezárása
    Close #1

    End Sub

Új hozzászólás Aktív témák