21. november 2013 - 08:58Der er
7 kommentarer og 1 løsning
Gem som excel fil med aktive makroer, med VBA.
Jeg har tidligere fået hjælp til denne i ældre format. Men nu har jeg behov for at gemme med aktive makroer. Er der nogen der kan rette til, eller har en anden løsning. (Jeg har prøvet at erstatte xls ,med xlsm. Det virkede ikke)
Dim wshNetwork Dim fileTosave Dim Flt Dim Titel Dim Filnavn Set wshNetwork = CreateObject("WScript.Network") fileTosave = Range("w2") & "-" & Range("d6") & "-" & Range("e4") & "-" & Range("t5") & "-" & wshNetwork.UserName Flt = "Excel mappe(*.xls),*.xls," Flt = Flt & "Print-filer (*.prn),*.prn," Flt = Flt & "Tekst-filer(*.txt),*.txt" Titel = "Gem Bilag Som!" Filnavn = Application.GetSaveAsFilename(fileTosave, Flt, 1, Titel) If Filnavn = False Then GoTo Afbryd If fileTosave <> False Then ActiveWorkbook.SaveAs Filnavn End If Afbryd:
Sub Makro1() ActiveWorkbook.SaveAs Filename:= _ "C:\Users\peter\Desktop\Ny Microsoft Office Excel-regneark.xlsm", FileFormat _ :=xlOpenXMLWorkbookMacroEnabled, CreateBackup:=False End Sub
Så vidt jeg kan se,gemmer du filen et bestemt sted, med et bestemt navn. Jeg vil gerne have mulighed for at vælge hvor jeg skal gemme, og at den skal hente filnavn fra celler. Som i eksempel.
Hmm. Der var jeg sku nok lidt for hurtig. Boro23's løsning åbner ganske vist dialogboksen, hvor man kan vælge at gemme. Men den sætter ikke tekst fra A1 ind. Man skal selv vælge at det er en projektmappe med makroer.
Måske Supertekst's løsning kan modificeres til at åbne dialogboksen, så man selv kan vælge hvor man skal gemme?
Sub Makro1() Dim filnavn As String filnavn = Range("A1") 'kan modificeres Application.Dialogs(xlDialogSaveAs).Show filnavn, xlOpenXMLWorkbookMacroEnabled End Sub
Har du husket at afspille makroen? Koden virker ellers fint hos mig. Du skal ikke tænke på point til mig.
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.