|
| Word fakture, Bruge word faktu Fra : 75653 | Vist : 1190 gange 200 point Dato : 22-08-07 18:26 |
|
Hej, jeg er ved at lave en faktura skabelon i word, jeg sætter den op med formulare. selve udsenet er intet problem, og jeg tror oxe godt at jeg kan finde ud af at få formlerne til at regne pris og sådan noget ud.
Det der er mit problem er at jeg, ikke har nogle anelse om hvordan jeg kan generere en fortløbende faktura nummer, kalkulere mig frem til betalingsdatoen samt at "auto" gemme dokumentet med det genereret faktura nummer.
Er der nogle her der kan hjælpe ???
Kopi af fakturen kan hentes her (renset udgave)(designet er ikke færdigt men jeg gidder ikke gøre formeget ud af det hvis jeg ikke kan få det til at virke) www.kancaie.dk/fak.doc
/Rex
| |
| Kommentar Fra : Footprint |
Dato : 22-08-07 18:41 |
|
Hej
Jeg har selv fumlet med noget ligende engang, men fik det aldrig til at funger optimalt, så måtte tilidst give op, synes det var for ustabilt og for usikkert at lave det i word..
Men det var noget med at der skulle oprettes en makro som går ind og læser og skriver i et txt dokument hvilke nummer dokumentet skulle tildeles...
har siden hen fundet ud af at man nok bør bruge acces til formålet..
men der ligger nogle gamle tråde her på kandu som omhandler emnet...
| |
| Kommentar Fra : Rosco40 |
Dato : 22-08-07 21:48 |
| | |
| Kommentar Fra : berpox |
Dato : 22-08-07 22:15 |
|
Generering af fortløbende fakturanummer er noget drilsk.... men den løsning jeg har anbefalet flere gange er en makro der læser et tal i en tekstfil, lægger 1 til, bruger dette tal på fakturaen, gemmer fakturaen, og gemmer tekstfilen igen, nu med det nye nummer.
Tekstfilen gemmes i en separat folder, og skrivebeskyttes hver gang. Denne folder og fil skal der naturligvis også tages backup af, når nu du alligevel laver backup af dine fakturaer
Alternativt ville jeg nok anbefale at du brugte Excel i stedet for - så er det meget lettere det med at få regnet den rigtige pris ud. Selve det med fakturanummer løses på samme vis.
Jeg må dog sige, at det allerbedste er, hvis du benytter et rigtigt regnskabsprogram til den slags....
men jeg kigger lige på dit dokument...
| |
| Kommentar Fra : 75653 |
Dato : 23-08-07 04:55 |
|
@berpox
Jeg har en exel faktura ( http://rex.homeftp.org/Fak1.xlt)
og der klare jeg opdateringen af faktura nummeret med denne kode.
Kode Private Sub Workbook_Open()
Dim Betalingsfrist As Long
If ActiveWorkbook.Name = "Fak1" Then
Worksheets("Faktura").Range("H12") = Worksheets("Faktura").Range("H8") + 1
Application.DisplayAlerts = False
ActiveWorkbook.SaveAs Filename:="Fak", FileFormat:=xlTemplate
Application.DisplayAlerts = True
StiNavn = "C:\Faktura\"
Filnavn = StiNavn & "0522-" & Format(Worksheets("Faktura").Range("H12"), "0000")
If Dir(Filnavn & ".xls") = "" Then
Worksheets("Faktura").Range("H11") = Date
Betalingsfrist = Date + 30
Do Until Not ErHelligdag(Betalingsfrist, True, True)
Betalingsfrist = Betalingsfrist + 1
Loop
Worksheets("Faktura").Range("I15") = Betalingsfrist
Worksheets("Faktura").Range("A12").Select
ActiveWorkbook.SaveAs Filename:=Filnavn, FileFormat:=xlNormal
Else
MsgBox "Fakturanummer " & Format(Worksheets("Faktura").Range("H12"), "0000") & " eksisterer allerede. Programmet afsluttes", vbCritical + vbOKOnly, "Kritisk fejl!"
Application.Quit
End If
End If
End Sub |
Og regner på helligedage mm. her.
Kode Function ErHelligdag(testDato As Long, InclLørdage As Boolean, InclSøndage As Boolean) As Boolean
Dim InputYear As Integer, PD As Long, OK As Boolean
If testDato <= 0 Then testDato = Date
InputYear = Year(testDato)
PD = Påskedag(InputYear)
OK = True
Select Case testDato
Case DateSerial(InputYear, 1, 1) ' Nytårsdag
Case PD - 7 ' Palmesøndag
Case PD - 3 ' Skærtorsdag
Case PD - 2 ' Langfredag
Case PD ' Påskedag
Case PD + 1 ' 2. påskedag
Case PD + 26 ' St. Bededag
Case PD + 39 ' Kristi Himmelfartsdag
Case PD + 49 ' Pinsedag
Case PD + 50 ' 2. Pinsedag
Case DateSerial(InputYear, 12, 24) ' Juleaftensdag
Case DateSerial(InputYear, 12, 25) ' Juledag
Case DateSerial(InputYear, 12, 26) ' 2. Juledag
Case DateSerial(InputYear, 12, 31) ' Nytårsaftensdag
Case Else
OK = False
If InclLørdage Then
If WeekDay(testDato, vbMonday) = 6 Then
OK = True
End If
End If
If InclSøndage Then
If WeekDay(testDato, vbMonday) = 7 Then
OK = True
End If
End If
End Select
IsHoliday = OK
End Function
Function Påskedag(InputYear As Integer) As Long
Dim d As Integer
d = (((255 - 11 * (InputYear Mod 19)) - 21) Mod 30) + 21
Påskedag = DateSerial(InputYear, 3, 1) + d + (d > 48) + 6 - ((InputYear + InputYear \ 4 + d + (d > 48) + 1) Mod 7)
End Function |
Virker fint.
Men nu ville jeg prøve i word, og se om ikke man kunne lave noget ledes
/Rex
| |
| Du har følgende muligheder | |
|
Dette spørgsmål er blevet annulleret, det er derfor ikke muligt for at tilføje flere kommentarer.
| |
|
|