1. Liebe Forumsgemeinde,

    aufgrund der Bestimmungen, die sich aus der DSGVO ergeben, müssten umfangreiche Anpassungen am Forum vorgenommen werden, die sich für uns nicht wirtschaftlich abbilden lassen. Daher haben wir uns entschlossen, das Forum in seiner aktuellen Form zu archivieren und online bereit zu stellen, jedoch keine Neuanmeldungen oder neuen Kommentare mehr zuzulassen. So ist sichergestellt, dass das gesammelte Wissen nicht verloren geht, und wir die Seite dennoch DSGVO-konform zur Verfügung stellen können.
    Dies wird in den nächsten Tagen umgesetzt.

    Ich danke allen, die sich in den letzten Jahren für Hilfesuchende und auch für das Forum selbst engagiert haben. Ich bin weiterhin für euch erreichbar unter tti(bei)pcwelt.de.
    Dismiss Notice

Excel Makro - alte Versionen einer Exceldatei verschieben

Discussion in 'Office-Programme' started by Elviz111, May 27, 2015.

Thread Status:
Not open for further replies.
  1. Elviz111

    Elviz111 ROM

    Hi

    ich habe folgende Problemstellung:

    Ich habe folgendes Makro zu Speichern der Datei. Dabei wird als Speichername der Date, der Name der Liste, der Username und das aktuelle Datum zusammenverknüpft. Dabei kommt bspw. folgendes heraus:

    Liste_(username)_2015_05_27

    Jedes Tag bzw. wenn ein anderer User speichert, entsteht dadurch eine neue Datei:

    Code:
    Sub SaveAsNewFile()
    
         Dim wb As Workbook
         Dim NewFileName As String
         Dim NewFileFilter As String
         Dim myTitle As String
         Dim FileSaveName As Variant
         Dim NewFileFormat As Long
         
        Set wb = ThisWorkbook
         
        'Use following code to set to workbook other than this one
        'Set wb = Workbooks("My Test Save As File.xlsm")
        
        Range("Datumseingabe_Paste") = Range("Datumseingabe_Copy").Value
        Range("User_Paste") = Range("User_Copy").Value
        
        If Application.Version >= 12 Then   'Version 12 is xl2007
           
           'Note: If file extension not included in Range("Save_Name")then concatenate it
           NewFileName = "C:TEMP\" & wb.Sheets("Eingabe").Range("Save_Name").Value & ".xlsm"
           NewFileFilter = "Excel Macro-Enabled workbook (*.xlsm), *.xlsm"
           
           'The value 52 is substituted in next line for the constant _
            xlOpenXMLWorkbookMacroEnabled because earlier versions of _
            excel will not recognize the constant and code will error.
           NewFileFormat = 52
         
         Else
           'Note: If file extension not included in Range("Save_Name") then concatenate it
           NewFileName = wb.Sheets("Eingabe").Range("Save_Name").Value & ".xls"
           NewFileFilter = "Microsoft Excel Workbook (*.xls), *.xls"
           
           'Because xlNormal is an earlier version constant, later versions _
            of excel will recognize it.
           NewFileFormat = xlNormal
         End If
         
        myTitle = "Navigate to the required folder"
         
        FileSaveName = Application.GetSaveAsFilename _
                 (InitialFileName:=NewFileName, _
                  FileFilter:=NewFileFilter, _
                  Title:=myTitle)
         If Not FileSaveName = False Then
           wb.SaveAs Filename:=FileSaveName, _
                         FileFormat:=NewFileFormat
         Else
           MsgBox "File NOT Saved. User cancelled the Save."
         End If
     
    End Sub
    Jetzt würde ich gerne, idealerweise im Code:"SaveAsNewFile" das Kommando des Verschiebens aller älteren Versionen auf C:\TEMP\ALT veranlassen.

    Habt ihr hierzu eine Idee?

    Vielen Dank im Voraus!
     
  2. Falcon37

    Falcon37 Ganzes Gigabyte

Thread Status:
Not open for further replies.

Share This Page