Forfatter |
Emne Søg Emne funktioner
|
WayMan1
Bronze bruger
Medlem: 18.Feb.2014
Land: DK
Status: Offline
Point: 32
|
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
|
|
|
|
|
WayMan1
Bronze bruger
Medlem: 18.Feb.2014
Land: DK
Status: Offline
Point: 32
|
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
|
|
EXCELGAARD
Platin bruger
Medlem: 27.Dec.2012
Land: Denmark
Status: Offline
Point: 5419
|
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.
|
|
Ib Hansen
Guld bruger
Medlem: 15.Apr.2014
Land: Danmark
Status: Offline
Point: 652
|
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 |
|
|
EXCELGAARD
Platin bruger
Medlem: 27.Dec.2012
Land: Denmark
Status: Offline
Point: 5419
|
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.
|
|
Ib Hansen
Guld bruger
Medlem: 15.Apr.2014
Land: Danmark
Status: Offline
Point: 652
|
Sendt: 20.Jan.2016 kl. 10:48 |
Jeg fik samme BUG på begge linjer.
ThisFile = ThisWorkbook.Path & "\" & "BACKUP" & "\" & Range("B2").ValueActiveWorkbook.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
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
|
|
EXCELGAARD
Platin bruger
Medlem: 27.Dec.2012
Land: Denmark
Status: Offline
Point: 5419
|
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.
|
|
EXCELGAARD
Platin bruger
Medlem: 27.Dec.2012
Land: Denmark
Status: Offline
Point: 5419
|
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
|
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.
|
|
Ib Hansen
Guld bruger
Medlem: 15.Apr.2014
Land: Danmark
Status: Offline
Point: 652
|
Sendt: 20.Jan.2016 kl. 11:18 |
Hmmm - Jeg får stadig, af en eller anden uforståelig grund, BUG 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
|
|
EXCELGAARD
Platin bruger
Medlem: 27.Dec.2012
Land: Denmark
Status: Offline
Point: 5419
|
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.
|
|
Ib Hansen
Guld bruger
Medlem: 15.Apr.2014
Land: Danmark
Status: Offline
Point: 652
|
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
|
|
Ib Hansen
Guld bruger
Medlem: 15.Apr.2014
Land: Danmark
Status: Offline
Point: 652
|
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
|
|
EXCELGAARD
Platin bruger
Medlem: 27.Dec.2012
Land: Denmark
Status: Offline
Point: 5419
|
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 (Har du været på nattevagt i nat? )
|
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.
|
|
EXCELGAARD
Platin bruger
Medlem: 27.Dec.2012
Land: Denmark
Status: Offline
Point: 5419
|
Sendt: 20.Jan.2016 kl. 11:36 |
Nåh, nu faldt 10-øren Ja, '.SaveCopyAs' metoden er ofte en, som folk overser - men, god, at have i baghovedet
|
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.
|
|
EXCELGAARD
Platin bruger
Medlem: 27.Dec.2012
Land: Denmark
Status: Offline
Point: 5419
|
Sendt: 20.Jan.2016 kl. 11:37 |
Jeg kunne godt nok heller ikke forstå, hvordan den ene simple kodelinje skulle give en bug
|
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.
|
|
Ib Hansen
Guld bruger
Medlem: 15.Apr.2014
Land: Danmark
Status: Offline
Point: 652
|
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 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
|
|
Ib Hansen
Guld bruger
Medlem: 15.Apr.2014
Land: Danmark
Status: Offline
Point: 652
|
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 |
|
|
EXCELGAARD
Platin bruger
Medlem: 27.Dec.2012
Land: Denmark
Status: Offline
Point: 5419
|
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.
|
|
EXCELGAARD
Platin bruger
Medlem: 27.Dec.2012
Land: Denmark
Status: Offline
Point: 5419
|
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.
|
|
WayMan1
Bronze bruger
Medlem: 18.Feb.2014
Land: DK
Status: Offline
Point: 32
|
Sendt: 20.Jan.2016 kl. 12:40 |
Jeg takker mange gange nu kører det ligesom jeg vil ha det til
|
MVH WayMan - Excel 2013 DK
|
|