Hirdetés

Keresés

Hirdetés

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

  • Pakliman

    tag

    válasz logitechh #46565 üzenetére

    Szia!

    Mindkét exportos eljárásban az éppen aktív MUNKAFÜZETET NEVEZED ÁT (ActiveWorkbook.SaveAs)!
    Mellékszál:
    Sokszor hajtatod végre vele ugyanazokat a műveleteket.
    Ezeket kiküszöbölheted egy egyszeri értékadással:
    sNewNamePart1 = ThisWorkbook.Path & "\" & Left(ThisWorkbook.Name, (InStrRev(ThisWorkbook.Name, ".", -1, vbTextCompare) - 1)) & "_Dezsike_"

    A cntr használatának nem látom semmiféle értelmét, hiszen a fájlnévben nem sorszámozást vagy darabszámot használsz, hanem pontos időt (persze lehet ebből is több, ha másodpercenként többször is lefut a program!!)

    Ez egy lehetőség (ha kell, át tudod alakítani xls exportra is):

    Sub ActiveSheetExportToTXT()
    Dim sNewName As String 'A létrehozandó fájl neve
    Dim sSheetName As String 'A mentendő munkalap neve
    Dim sSheetFIX As String 'A FIX cellát tartalmazó munkalap neve

    'Névnek a munkalap nevét és egy FIX cellából vett értéket szeretném plusz az aktuális dátum időpont másodpercre pontosan.
    sSheetFIX = "A FIX cellát tartalmazó munkalap neve"
    sSheetName = "A mentendő Munkalap neve"
    sNewName = ThisWorkbook.Path & "\" & Left(ThisWorkbook.Name, (InStrRev(ThisWorkbook.Name, ".", -1, vbTextCompare) - 1)) & "_Dezsike_" & Worksheets(sSheetFIX).Range("FIX cella") & "_" & Format(Now, "yyyymmdd_hhnn_ss") & ".txt"

    Worksheets(sSheetName).Copy
    ActiveWorkbook.SaveAs Filename:=sNewName, FileFormat:=xlText, CreateBackup:=False
    End Sub

    [ Szerkesztve ]

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