Dansk Regneark Forum
  Hjælp Hjælp  Søg i forum   Arrangementer   Opret ny bruger Opret ny bruger  Log ind Log ind


Emne lukketbackup af fil

 Besvar Besvar Side  12>
Forfatter
WayMan1 Se dropdown
Bronze bruger
Bronze bruger
Avatar

Medlem: 18.Feb.2014
Land: DK
Status: Offline
Point: 32
Direkte link til dette indlæg Emne: backup af fil
    Sendt: 20.Jan.2016 kl. 07:35
Jeg har lidt problemer med at få en makro til at lave en backup af min excel fil,
har fundet noget, men det går med over i backup filen efter man har kørt det,
skulle gerne være sådan at man bliver i sin master fil og backup filen bare bliver
gemt, håber det er til at forstå.

uploads/1076/test1.xlsx
MVH
WayMan - Excel 2013 DK
Til top



Til top
WayMan1 Se dropdown
Bronze bruger
Bronze bruger
Avatar

Medlem: 18.Feb.2014
Land: DK
Status: Offline
Point: 32
Direkte link til dette indlæg Sendt: 20.Jan.2016 kl. 07:38
ups havde en fil med det navn uploadet, her er den rigtige
uploads/1076/TEST25.xlsm
MVH
WayMan - Excel 2013 DK
Til top
EXCELGAARD Se dropdown
Platin bruger
Platin bruger


Medlem: 27.Dec.2012
Land: Denmark
Status: Offline
Point: 5419
Direkte link til dette indlæg Sendt: 20.Jan.2016 kl. 08:06
Linjen...
ActiveWorkbook.SaveAs Filename:=ThisFile
...ændres til:
ActiveWorkbook.SaveCopyAs Filename:=ThisFile

Husk, at trykke på [Tak], hvis du kan lide et indlæg.
Husk, at trykke på [Accepteret Svar], hvis du kan bruge et løsningsforslag.
Til top
Ib Hansen Se dropdown
Guld bruger
Guld bruger
Avatar

Medlem: 15.Apr.2014
Land: Danmark
Status: Offline
Point: 652
Direkte link til dette indlæg Sendt: 20.Jan.2016 kl. 10:29
Jeg fik BUG på begge koder (både den originale og Excelgaards), når de blev indsat i TEST25.xlsm.
Jeg har nogle koder, jeg selv bruger og genbruger.

Denne kode skulle "Gemme som" i xlsm format, uden mulighed for at ændre formatet i Save boksen 
Formatet kan ændres i selve koden.
Sub SaveAs()
' Gem som nyt navn
    Dim varWorkbookName As String
    Dim sFileExtension As String
    Dim ans As VbMsgBoxResult
     
    Application.EnableEvents = False
     
    varWorkbookName = Application.GetSaveAsFilename(InitialFileName:="", _
    filefilter:="Excel Macro Enabled Workbook (*.xlsm), *.xlsm)", _
    FilterIndex:=1)
     
    If varWorkbookName <> "False" Then
        sFileExtension = CreateObject("Scripting.FileSystemObject").GetExtensionName(varWorkbookName)
        varWorkbookName = Left(varWorkbookName, Len(varWorkbookName) - Len(sFileExtension)) & "xlsm" 
        'FileExtension "xlsm" kan ændres til et andet fastlåst format
         
        If Dir(varWorkbookName) <> "" Then
             
            ans = MsgBox("Filnavnet - -" _
            & vbCrLf & vbCrLf & varWorkbookName _
            & vbCrLf & vbCrLf & "- - eksisterer allerede !" _
            & vbCrLf & "Vil du overskrive filen ?", _
            vbYesNoCancel + vbInformation, "Gem som nyt navn")
            
            If ans = vbYes Then
                 
                Application.DisplayAlerts = False
                ActiveWorkbook.SaveAs Filename:=varWorkbookName, _
                FileFormat:=xlOpenXMLWorkbookMacroEnabled
                Application.DisplayAlerts = True
            End If
        Else
             
            ActiveWorkbook.SaveAs Filename:=varWorkbookName, _
            FileFormat:=xlOpenXMLWorkbookMacroEnabled
        End If
    End If
     
    Application.EnableEvents = True

End Sub


Denne kode skulle bare "Gemme"
Sub Save()
' Gem
    ThisWorkbook.Save

End Sub


Og denne kode skulle "Gemmer og lukker Excel"
Sub SaveAndClose()
' Gem og luk
        
'Slår meddelelse, der spørger "Er du sikker?" fra.
    Application.DisplayAlerts = False

'Gemmer og lukker.
    ActiveWorkbook.Save
    Excel.Application.Quit

End Sub


Til top
EXCELGAARD Se dropdown
Platin bruger
Platin bruger


Medlem: 27.Dec.2012
Land: Denmark
Status: Offline
Point: 5419
Direkte link til dette indlæg Sendt: 20.Jan.2016 kl. 10:34
Hvilken 'bug' fik du?!?
Det virker fint her hos mig...
Husk, at trykke på [Tak], hvis du kan lide et indlæg.
Husk, at trykke på [Accepteret Svar], hvis du kan bruge et løsningsforslag.
Til top
Ib Hansen Se dropdown
Guld bruger
Guld bruger
Avatar

Medlem: 15.Apr.2014
Land: Danmark
Status: Offline
Point: 652
Direkte link til dette indlæg Sendt: 20.Jan.2016 kl. 10:48
Jeg fik samme BUG på begge linjer.
ThisFile = ThisWorkbook.Path & "\" & "BACKUP" & "\" & Range("B2").Value
ActiveWorkbook.SaveAs Filename:=ThisFile

og

ThisFile = ThisWorkbook.Path & "\" & "BACKUP" & "\" & Range("B2").Value
ActiveWorkbook.SaveCopyAs Filename:=ThisFile

Noget med en popup - Der kan ikke opnås adgang til filen + løsningsforslag.
Jeg vil ikke indsætte et billede af BUG'en, da det fylder i mine uploadede filer Embarrassed

Men måske har jeg misforstået problemet fra WayMan1 ?
Og jeg forstår ikke helt, hvad "Range("B2").Value" bruges til ?

Min løsningen "Gemmer som" og hvis filen eksisterer, kommer der en advarsel.
Herefter kan den omdøbes til "Backup".
Og herefter skal man selvfølgelig åbne den den ordinære fil igen eller "Gemme som" en gang til og så vælge den ordinære fil.

Hmmmm Wacko
Til top
EXCELGAARD Se dropdown
Platin bruger
Platin bruger


Medlem: 27.Dec.2012
Land: Denmark
Status: Offline
Point: 5419
Direkte link til dette indlæg Sendt: 20.Jan.2016 kl. 11:04
Er du helt sikker på, at det ikke blot er fordi, du ikke har husket, at lave pågældende sti, før du kører din test?

Der er overhovedet ingen problemer her...
Husk, at trykke på [Tak], hvis du kan lide et indlæg.
Husk, at trykke på [Accepteret Svar], hvis du kan bruge et løsningsforslag.
Til top
EXCELGAARD Se dropdown
Platin bruger
Platin bruger


Medlem: 27.Dec.2012
Land: Denmark
Status: Offline
Point: 5419
Direkte link til dette indlæg Sendt: 20.Jan.2016 kl. 11:07
Celle B2 benyttes til at angive filnavnet, f.eks. "Min Fil.XLSm".
Og, så skal du huske, at lave undermappen 'Backup' i samme mappe, som regnearksfilen.

Jeg tror, du sover i timen, Gnaske Sleepy
Husk, at trykke på [Tak], hvis du kan lide et indlæg.
Husk, at trykke på [Accepteret Svar], hvis du kan bruge et løsningsforslag.
Til top
Ib Hansen Se dropdown
Guld bruger
Guld bruger
Avatar

Medlem: 15.Apr.2014
Land: Danmark
Status: Offline
Point: 652
Direkte link til dette indlæg Sendt: 20.Jan.2016 kl. 11:18
Hmmm - Jeg får stadig, af en eller anden uforståelig grund, BUG Ermm
Og jeg har lukket alle andre åbne ark, så det er ikke et af dem, der konflikter. (hvilket jeg har oplevet før).

Jeg havde misforstået at man skulle skrive filnavnet i B2.
Jeg troede filnavnet skulle skrives i "Gem som" popup'en.

Men hvis din kode kører uden BUG, kan WayMan1 bare bruge den.
Og den er også meget mere simpel og gør hvad WayMan1 ønsker Thumbs Up
Til top
EXCELGAARD Se dropdown
Platin bruger
Platin bruger


Medlem: 27.Dec.2012
Land: Denmark
Status: Offline
Point: 5419
Direkte link til dette indlæg Sendt: 20.Jan.2016 kl. 11:21
Og, du har husket, at lave en under-mappe, der hedder 'Backup' i samme mape, som selve regnearksfilen?
Husk, at trykke på [Tak], hvis du kan lide et indlæg.
Husk, at trykke på [Accepteret Svar], hvis du kan bruge et løsningsforslag.
Til top
Ib Hansen Se dropdown
Guld bruger
Guld bruger
Avatar

Medlem: 15.Apr.2014
Land: Danmark
Status: Offline
Point: 652
Direkte link til dette indlæg Sendt: 20.Jan.2016 kl. 11:26
Pågældende sti er vel derfra, hvor  arket blev åbnet ?

Jeg gemte TEST25.xlsm på mit skrivebord og åbnede det herfra.
Når jeg kører koden, skulle den vel så gemme på mit skrivebord igen og med det nye filnavn der blev skrevet i B2.

Ellers forstår jeg slet ingen ting Pig


Til top
Ib Hansen Se dropdown
Guld bruger
Guld bruger
Avatar

Medlem: 15.Apr.2014
Land: Danmark
Status: Offline
Point: 652
Direkte link til dette indlæg Sendt: 20.Jan.2016 kl. 11:31
Okay - Nu har jeg fattet det.

Filen blev gemt på skrivebordet og åbnet herfra.
På skrivebordet oprettes en mappe "Backup".
Når koden køres, gemmes en ny fil i backup mappen, med det filnavn, der blev skrevet i B2.

Det er jo rent faktisk en genial lille kode, jeg vil gemme Thumbs Up


Til top
EXCELGAARD Se dropdown
Platin bruger
Platin bruger


Medlem: 27.Dec.2012
Land: Denmark
Status: Offline
Point: 5419
Direkte link til dette indlæg Sendt: 20.Jan.2016 kl. 11:34
Nej, kig nu stien...

Hvis filen ligger på dit skrivebord, så skal der osse være en mappe på dit skrivebord, der hedder 'Backup'.

Se de to sti separatorer (\) på, hverside af 'Backup'.
Det indikerer da klart og tydeligt en mappe sti!
ThisWorkbook.Path & "\" & "BACKUP" & "\" & Range("B2").Value
Prøv nu, at lave den under-mape, som jeg siger, og se så om det ikke virker Smile

(Har du været på nattevagt i nat?Big smile)

Husk, at trykke på [Tak], hvis du kan lide et indlæg.
Husk, at trykke på [Accepteret Svar], hvis du kan bruge et løsningsforslag.
Til top
EXCELGAARD Se dropdown
Platin bruger
Platin bruger


Medlem: 27.Dec.2012
Land: Denmark
Status: Offline
Point: 5419
Direkte link til dette indlæg Sendt: 20.Jan.2016 kl. 11:36
Nåh, nu faldt 10-øren  Tongue

Ja, '.SaveCopyAs' metoden er ofte en, som folk overser - men, god, at have i baghovedet Thumbs Up
Husk, at trykke på [Tak], hvis du kan lide et indlæg.
Husk, at trykke på [Accepteret Svar], hvis du kan bruge et løsningsforslag.
Til top
EXCELGAARD Se dropdown
Platin bruger
Platin bruger


Medlem: 27.Dec.2012
Land: Denmark
Status: Offline
Point: 5419
Direkte link til dette indlæg Sendt: 20.Jan.2016 kl. 11:37
Jeg kunne godt nok heller ikke forstå, hvordan den ene simple kodelinje skulle give en bug Confused
Husk, at trykke på [Tak], hvis du kan lide et indlæg.
Husk, at trykke på [Accepteret Svar], hvis du kan bruge et løsningsforslag.
Til top
Ib Hansen Se dropdown
Guld bruger
Guld bruger
Avatar

Medlem: 15.Apr.2014
Land: Danmark
Status: Offline
Point: 652
Direkte link til dette indlæg Sendt: 20.Jan.2016 kl. 11:58
Nej ikke nattevagt, men jeg sidder med et problem, hvor jeg prøver at sammenligne et Lopslag med et andet Lopslag og hvis de opfylder betingelserne, skal den lave en beregning ud fra et tredie Lopslag.
Koderne og parenteserne driller en smule og mine tanker er andre steder Angry

Men hvorfor laver du ikke koden færdig for WayMan ?
Jeg kan ikke lige overskue det, men man skal både skrive filnavn + format i B2, for at koden gemmer filen som en Excel-fil.
Og formatet vil jo altid være xlsm, da filen indeholder macroer.

Selvom wayman ikke bad om det, skulle det tilføjes i koden, at formatet xlsm automatisk blev tilføjet, så man kun skulle skrive filnavnet i B2.

Hvis du smider den kode op, kan jeg også bruge den Wink
Til top
Ib Hansen Se dropdown
Guld bruger
Guld bruger
Avatar

Medlem: 15.Apr.2014
Land: Danmark
Status: Offline
Point: 652
Direkte link til dette indlæg Sendt: 20.Jan.2016 kl. 12:06
Der var jeg igen for hurtig og tænkte mig ikke om - Hmmmm - Sådan kan det gå...

Sub SaveAs()

    ThisFile = ThisWorkbook.Path & "\" & "BACKUP" & "\" & Range("B2").Value & ".xlsm"
    ActiveWorkbook.SaveCopyAs Filename:=ThisFile
        
End Sub
Til top
EXCELGAARD Se dropdown
Platin bruger
Platin bruger


Medlem: 27.Dec.2012
Land: Denmark
Status: Offline
Point: 5419
Direkte link til dette indlæg Sendt: 20.Jan.2016 kl. 12:30
Jamen, koden ER, jo, færdig!

Han skal blot bruge .SaveCopyAs, og så skrive filnavnet i celle B2 - og, selvfølgelig huske, at skrive endelsen på filen også, præcist, som jeg skriver i mit indlæg fra kl. 11:07, længere oppe...

Jeg forstår simpelthen ikke problemet - det virker jo...
Husk, at trykke på [Tak], hvis du kan lide et indlæg.
Husk, at trykke på [Accepteret Svar], hvis du kan bruge et løsningsforslag.
Til top
EXCELGAARD Se dropdown
Platin bruger
Platin bruger


Medlem: 27.Dec.2012
Land: Denmark
Status: Offline
Point: 5419
Direkte link til dette indlæg Sendt: 20.Jan.2016 kl. 12:34
Wayman: Kunne du ikke lige vende tilbage om ikke det virker, som du vil have det, ved blot, at benytte .SaveCopyAs ???

Der er åbenbart lidt forståelsesproblemer her - har jeg misforstået din opgave/spørgsmål?
Husk, at trykke på [Tak], hvis du kan lide et indlæg.
Husk, at trykke på [Accepteret Svar], hvis du kan bruge et løsningsforslag.
Til top
WayMan1 Se dropdown
Bronze bruger
Bronze bruger
Avatar

Medlem: 18.Feb.2014
Land: DK
Status: Offline
Point: 32
Direkte link til dette indlæg Sendt: 20.Jan.2016 kl. 12:40
Jeg takker mange gange nu kører det ligesom jeg vil ha det til Smile
MVH
WayMan - Excel 2013 DK
Til top
 Besvar Besvar Side  12>

Skift forum Forum tilladelser Se dropdown

© 2010 - 2024 Dansk Regneark Forum - en del af Excel-regneark.dk