02. december 2014 - 16:12Der er
4 kommentarer og 1 løsning
Faktura skabelon med autogeneret fakturanummer
Kan man lave en fakturaskabelon, som automatisk indsætter et fortløbende fakturanummer. Jeg har tænkt på et regneark, med nummeret på den første faktura i fx. A1 Skabelonen har et link til det førnævnte regneark og i feltet med fakturanummer hentes værdien i A1 og lægges 1 til. Men hvordan får jeg så opdateret felt A1 med det sidst brugte fakturanummer? Er der nogen, der har en ide? Næste trin bliver så at lave en makro, hvor filnavnet indeholder det aktuelle fakturanummer. Det tror jeg dog, jeg godt kan fikse ;-)
Jeg har fået lavet det, så jeg har en makro der kører faktura nummeret med en knap. På den måde kan du arbejde i faktura over flere gange. Jeg har så to mapper den gemmer i med en gem som makro. ´Prøvefaktura og færdig faktura hedder de. Selve "tælleren er en tekstfil der automatisk bliver opdateret når makro køres. Min makro ser sådan ud:
Faktura nummer: Dim aktuelleCelle As String Dim rækkeNr As Integer '<++ 060813 Sub FakNr() ' FakNr Makro ' tildeler fakturanummer i feltet G7 Range("G7").Select If ActiveCell.Value <> "" And IsNumeric(ActiveCell.Value) Then ' ingenting - er kørt tidligere bare sæt cursor i G8 Range("B8").Select Else ' opdater fakturanummer, og skriv i G7 fil$ = "I:\FakNr.txt" Open fil$ For Input As 1 Input #1, aktnavn Close 1 aktnavn = aktnavn + 1 Open fil$ For Output As 1 Write #1, aktnavn Close 1 ActiveCell.FormulaR1C1 = aktnavn Range("B8").Select End If End Sub
Gem som: Sub gemSom() Const filstiNavn = "I:\Dokumenter\(din overordnede mappe indføres her hvor prøvefaktura og færdig faktura ligger)" Dim navn As String, fakturaNr As String
navn = Range("B8") fakturaNr = Range("G7")
Rem Er der faktura-nr i G7 If fakturaNr = "" Then ActiveWorkbook.SaveAs filstiNavn + "\prøvefakturaer\" & navn & ".xlsm" Else ActiveWorkbook.SaveAs filstiNavn + "\færdige fakturaer\" & fakturaNr & " " & navn & ".xlsm" End If End Sub
PS Det er er mine indstillinger. Du kan jo prøve at kopiere det ind og rette det til i en test faktura og se om det vil virke hos dig. Jeg har også en makro der automatisk udskriver 2 kopier når fakturanummer er påsat og faktura gemt. Det er også på en knap udenfor udskrift området som de andre knapper.
Det gør jeg når du har prøvet det og det er noget du kan bruge :-)
Makro er ikke noget jeg selv har lavet. Sr du under min profil og under de spørgsmål jeg har stillet herinde kan du se der er flere spørgsmål med faktura. Måske du også kan finde inspiration der.
Hvis andre følger denne tråd, så skal man i Office 2013 lave et par tilføjelser i GemSom proceduren. Her er den, der virker hos mig:
Sub gemSom() Const filstiNavn = "C:\Cykelsmed" '(Den overordnede mappe hvor prøvefaktura og færdig faktura ligger)" Dim navn As String, fakturaNr As String
navn = Range("B8") fakturaNr = Range("G7")
'Rem Er der faktura-nr i G7 If fakturaNr = "" Then ActiveWorkbook.SaveAs filstiNavn + "\prøvefakturaer\" & navn & ".xlsm", FileFormat:=xlOpenXMLWorkbookMacroEnabled, CreateBackup:=False Else ActiveWorkbook.SaveAs filstiNavn + "\færdige fakturaer\" & fakturaNr & " " & navn & ".xlsm", FileFormat:=xlOpenXMLWorkbookMacroEnabled, CreateBackup:=False End If End Sub
Der skal også lige tilføjes at samtlige mapper, undermapper og tekstfilen FakNr.txt skal oprettes manuelt.
Du har været til stor hjælp, så nu må du gerne lægge et svar.
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.