Ga naar inhoud

VOORRAAD WORD NEGATIEF, IS HIER EEN OPLOSSING VOOR?


Aanbevolen berichten

  • Reacties 22
  • Aangemaakt
  • Laatste reactie

Beste reacties in dit topic

Populaire dagen

Beste reacties in dit topic

Geplaatst:

Dit werkt perfect! Ik moest alleen de sq1 en sq2 nog even omwisselen, maar mijn probleem is nu perfect opgelost. Hartelijk dank voor uw genomen moeite, ik waardeer dit enorm!

Geplaatst:

Hoi Jean Paul. Toch nog een klein probleempje. De voorraad word nu op 0 gezet, waardoor soms een een deel van de voorraad verloren gaat. Is het mogelijk dat de voorraad wel zijn positieve waarde behoudt, en dat de negatieve waarde inderdaad op 0 word gezet? Als je hier naar zou kunnen kijken zou ik dat zeer waarderen. mvg

Geplaatst: (aangepast)
Sub Afboeken()

For Each Cl In [C9:C999]
If Cl <> "" Then
sq2 = Cl.Offset(, -1).Value 'Af te boeken waarde
With Sheets("Voorraad")
Set FoundCell = .Range("A:A").Find(Cl)
Stock = .Range(FoundCell.Address).Offset(, 3).Value
If Stock < 0 Then .Range(FoundCell.Address).Offset(, 3).Value = 0
If sq2 > Stock Then
MsgBox "Af te boeken aantal is groter dan de stock " & Cl & " er wordt geen afboeking gedaan"
GoTo Verder
End If
.Range(FoundCell.Address).Offset(, 3).Value = sq1 - sq2
Verder:
End With
End If
Next

End Sub

 

aangepast door JeanPaul28
Geplaatst:

Dank voor je reactie, heb hem even geprobeerd. Het werkt nog niet helemaal. Het werkt wel als de voorraad lager is dan het af te boeken aantal. Maar als de voorraad hoger is dan het af te boeken aantal schiet hij gelijk de min in, en dan precies het aantal wat ik wil afboeken. Als je nog steeds tijd en zin hebt om hiernaar te kijken zou ik erg waarderen.

Geplaatst:

Schoonheids foutje had Sq1 vervangen in stock, maat niet in de Formule bij aftrek

Sub Afboeken()

For Each Cl In [C9:C999]
If Cl <> "" Then
sq2 = Cl.Offset(, -1).Value 'Af te boeken waarde
With Sheets("Voorraad")
Set FoundCell = .Range("A:A").Find(Cl)
Stock = .Range(FoundCell.Address).Offset(, 3).Value
If Stock < 0 Then .Range(FoundCell.Address).Offset(, 3).Value = 0
Stock = .Range(FoundCell.Address).Offset(, 3).Value
If sq2 > Stock Then
MsgBox "Af te boeken aantal is groter dan de stock " & Cl & " er wordt geen afboeking gedaan"
GoTo Verder
End If
  .Range(FoundCell.Address).Offset(, 3).Value = Stock - sq2
Verder:
End With
End If
Next

End Sub

 

Gast
Dit topic is nu gesloten voor nieuwe reacties.

×
×
  • Nieuwe aanmaken...

Belangrijke informatie

We hebben cookies geplaatst op je toestel om deze website voor jou beter te kunnen maken. Je kunt de cookie instellingen aanpassen, anders gaan we er van uit dat het goed is om verder te gaan.