Voorraad afboeken en bijboeken

Status
Niet open voor verdere reacties.

GearUp

Nieuwe gebruiker
Lid geworden
8 jan 2016
Berichten
3
Hallo,

Ik heb 3 sheets die gebruik maken van de voorraad.
De eerste is de verkoopfactuur, de tweede de inkoopfactuur en de derde uiteraard de voorraad zelf.

Nou heb ik al in VBA geregeld dat door middel van een knop de factuur word gekopieerd naar een nieuwe werkmap en vervolgens word opgeslagen met factuurnummer.

Om het boekhoudproces nog verder te automatiseren, wil ik graag dat door middel van de knop de voorraad wordt afgeboekt bij de verkoopfactuur, en bijgeboekt door middel van de knop bij de inkoopfactuur.

Bij de verkoopfactuur zou de voorraad moeten dalen, terwijl het een positief getal betreft (aangezien je anders een creditfactuur maakt).
Bij verkoop en inkoop zijn er meerdere producten tegelijk die verkocht worden, en deze staan in cel C6:C16
De sheets heten: Factuur invoer, Inkoopfactuur en Voorraad

Mijn vraag is: Kunnen jullie voor mij een script maken, die kijkt van 'Factuur invoer' C6:C16 (hierin staan de artikelnamen) naar 'Voorraad' A2:A(op dit moment 12), en dan de waarde van 'Voorraad' (F tussen 2&12) verlagen met de (positieve) waarde die in 'Factuur invoer' C6:C16 staat.

Iets simpeler uitgelegd:
'Factuur invoer' C6 -> Zoek waarde in 'Voorraad' A2 tot A12
Stel staat in A9, dan waarde van 'Factuur invoer' F6 kopieren en 'Voorraad' A9 VERLAGEN met de waarde van F6
En zo door t/m C16

Zelfde geldt uiteraard voor Inkoopfactuur, maar dan kan het getal wel verhoogd worden.

Mooiste zou zijn, dat als hij de bij Inkoopfactuur de waarde niet vindt, deze automatisch bijmaakt, maar is geen vereiste.

Heel verhaal, maar ben al blij dat ik het zo ver voor elkaar heb, alleen gaat dit me net te ver.
 
Ik zal voor wat meer duidelijkheid een voorbeeld toevoegen
 

Bijlagen

  • voorbeeld.xlsm
    27,9 KB · Weergaven: 164
Misschien een domme vraag, maar het lijkt er op dat in Factuur invoer een willekeurige factuur staat. In sheet Voorraad staat (naar ik aanneem) de voorraad die voor alle klanten relevant is. Ik snap kortom niet dat deze twee lijsten in één werkboek staan..?

Ik zou één werkboek maken met de voorraad en diverse facturen die gebaseerd zijn op eenzelfde template. Bij aanmaken van een factuur wordt de voorraad gecontroleerd (kunnen we leveren?) en indien er voldoende op voorraad is dan worden de aantallen in het werkboek Voorraad verminderd.

Wat betreft je vraag: via de Index en Match functies kun je in het 'Factuur invoer' opzoeken hoeveel beschikbare voorraad je hebt. Bijvoorbeeld voor de eerste item (LX622):
Code:
=INDEX(Tabel4[[Artikelcode]:[Bestelniveau]];MATCH(C6;Tabel4[Artikelcode];0);8)

Nu kun je controleren of je überhaupt voldoende op voorraad hebt. Zo ja dan kun je de order doorzetten en via code de bestelde aantallen aftrekken van de voorraadlijst. De code moet je dan andersom toepassen: dus niet op tabel4 (Voorraad) maar op de range("C6:E16") op sheet Factuur Invoer.

Bovengenoemde functies zijn ook toe te passen in VBA. Dan moet je wel eerst Application.Worksheetfunction. er voor zetten.

Hopelijk zet ik je hiermee in de goede richting.

Succes!
 
Misschien een domme vraag, maar het lijkt er op dat in Factuur invoer een willekeurige factuur staat. In sheet Voorraad staat (naar ik aanneem) de voorraad die voor alle klanten relevant is. Ik snap kortom niet dat deze twee lijsten in één werkboek staan..?
Ik heb de complete boekhouding in 1 werkboek, vind ik zelf het fijnst werken eerlijk gezegt

Ik zou één werkboek maken met de voorraad en diverse facturen die gebaseerd zijn op eenzelfde template. Bij aanmaken van een factuur wordt de voorraad gecontroleerd (kunnen we leveren?) en indien er voldoende op voorraad is dan worden de aantallen in het werkboek Voorraad verminderd.
Opzich hoeft de controle niet plaats te vinden, aangezien de factuur meestal na levering plaats vindt, maar zou wel een optie zijn om alvast in te bouwen.

Wat betreft je vraag: via de Index en Match functies kun je in het 'Factuur invoer' opzoeken hoeveel beschikbare voorraad je hebt. Bijvoorbeeld voor de eerste item (LX622):
Code:
=INDEX(Tabel4[[Artikelcode]:[Bestelniveau]];MATCH(C6;Tabel4[Artikelcode];0);8)
Kijk..! Hier kan ik wat mee, top..!

Nu kun je controleren of je überhaupt voldoende op voorraad hebt. Zo ja dan kun je de order doorzetten en via code de bestelde aantallen aftrekken van de voorraadlijst. De code moet je dan andersom toepassen: dus niet op tabel4 (Voorraad) maar op de range("C6:E16") op sheet Factuur Invoer.
Juist, dat was ook de bedoeling, zodra je op de knop Factuur opslaan drukt, word in apart in een Werkboek opgeslagen en apart nog in PDF.

Bovengenoemde functies zijn ook toe te passen in VBA. Dan moet je wel eerst Application.Worksheetfunction. er voor zetten.

Hopelijk zet ik je hiermee in de goede richting.

Succes!

Ik ben nu zelf aan het werk, maar zodra ik de kans krijg ga ik er naar kijken..! Bedankt
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan