• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

Factuur gegevens opslaan

Status
Niet open voor verdere reacties.

Koenie

Gebruiker
Lid geworden
14 mei 2004
Berichten
312
Wie kan mij bij het volgende helpen:

Bij het openen van de factuur geeft excel middels de volgende code een automatisch oplopend nummer;

Private Sub Workbook_Open()
Call LeesEnBewaarFactuurNummer3
End Sub

Sub LeesEnBewaarFactuurNummer3()
pad$ = Application.DefaultFilePath
controle = Dir(pad$ + "\FactuurNummer.txt")
If controle = "" Then GoTo EerstAanmaken
Open pad$ + "\Factuurnummer.txt" For Input As #10
Input #10, Nummer1
Close #10
EerstAanmaken:
Nummer1 = Nummer1 + 1
Open pad$ + "\FactuurNummer.txt" For Output As #10
Print #10, Nummer1
Close #10
'Noteer nu het opgehaalde factuurnummer in het werkblad
Application.GoTo Reference:="Factuurnr."
ActiveCell.FormulaR1C1 = Nummer1
End Sub

Nu wil ik dat de volgende gegevens op een ander werblad worden weggeschreven;

factuurnummer
factuurdatum
bedrijfsnaam
totaal bedrag

dit om het administratief een beetje bij te houden.
hoe ik de bedrijfsnaam en het totaal bedrag op dit werkblad moet krijgen weet ik wel
Ik weet alleen niet hoe ik het factuurnummer wegschrijf, omdat het elke keer bij openen een oplopend nummer geeft.

gr.
Koen
:evil: :evil: :evil:
 
Zet dit achter het blad waar de knop in staat:
eventueel Blad1 en Blad2 + B2,B3 en B4 aanpassen?

Private Sub CommandButton1_Click()
Dim rij As Integer
With Sheets("Blad2")
rij = .Range("A65536").End(xlUp).Row + 1
.Cells(rij, 1).Value = Sheets("Blad1").Range("B2")
.Cells(rij, 2).Value = Sheets("Blad1").Range("B3")
.Cells(rij, 3).Value = Sheets("Blad1").Range("B4")
End With
End Sub

Pierre
 
Hoi Koen,

Mooier misschien is om op het blad waar je de facturen opslaat de volgende formule te zetten (in A11):
A11: =Max(als(isleeg(B2);1;(Blad2!A11:A999=B2))*als(isleeg(B3);1;(Blad2!B11:B999=B3))*als(isleeg(B4);1;(BLad2!C11:C999=B4))*Rij(Blad2!A11:A999))
In B11:
=als(A11=0;1000-max(isleeg(Blad2!A11:A999)*(1000-rij(Blad2!A11:A999)));A11)
Beide formules invoeren als matrix-formule (Shift & Ctrl + Enter)

In B11 staat nu het rijnummer voor facturen die je uit je database hebt gehaald en de eerste lege regel in je database als je een nieuwe factuur aanmaakt. Met B2:B4 zoek je in de database.

Met deze werkwijze kun je altijd oude facturen terug bekijken (handig als er vragen over komen).

Of met de formule:
A11:A20: =GROOTSTE(ALS(ISLEEG(B2);1;(Blad2!A11:A999=B2))*ALS(ISLEEG(B3);1;(Blad2!B11:B999=B3))*ALS(ISLEEG(B4);1;(Blad2!C11:C999=B4))*RIJ(Blad2!A11:A999);RIJ()-10)
kun je een lijstje maken met alle facturen die aan de criteria voldoen.

Jeroen
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan