• 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.

Fout 1004

Status
Niet open voor verdere reacties.

Norman Scheuter

Gebruiker
Lid geworden
30 sep 2008
Berichten
124
Hallo,

Ik heb een formule in een VBA zitten welke steeds fout 1004 geeft.
Ben nu al een hele tijd samen met een collega aan het kijken waarom...
We komen er niet uit.

Weet iemand waar de fout zit???

Dit is de formule
Code:
Sub Afboeken1()
    Range("Voorraadlijst!Cells(6, 10)") = Bereken1(a:=Range("Voorraadlijst!Cells(6, 10)"), b:=[Voorraadpickoverzicht!E5])
End Sub
Function Bereken1(a As Double, b As Double) As Double
    Bereken1 = (Round(a - b))
    shtPickList.Range("B5:E5").Value = ""
End Function

De fout zit hem in de macro "Sub Afboeken1()"

Gr. Norman
 
Maak er eens dit van:
Code:
Sub Afboeken1()
    Sheets("Voorraadlijst").Range("J6") = Bereken1(Sheets("Voorraadlijst").Range("J6"), Sheets("Voorraadpickoverzicht").Range("E5"))
End Sub

En het object shtPickList staat nergens.
 
Laatst bewerkt:
Hoi edmoor,

shtPickList is het blad waar de berekening plaats vindt.
Hij geeft geen fout :)

Maar omdat nu a: en b: weg zijn in de formule, rekent ie niet...
Waar zou ik deze terug moeten zetten in je formule.

Gr. Norman
 
Die a: en b: zijn helemaal niet nodig.
Er zal dus een andere reden ziijn dat hij nu niet rekent.
shtPicklist is dus een object die je ergens anders aanmaakt?
 
Hoi edmoor,

shtPickList(Voorraadpickoverzicht) is de naam van het tabblad waar hij de range "B5:E5" leeg maakt.
In de formule a-b rekent hij uit wat cel (6, 10) -(5, 5) is en plaatst deze weer in cel (6, 10 ) ( in jou formule J6-E5 en plaatst deze weer in J6 )

Gr. Norman
 
Dus shtPickList heb je met de Set opdracht in VBA aangemaakt?
Volgens mij kan je beter je document plaatsen.
 
Hoi edmoor,

Ik heb het bestand toegevoegd.
In de vba een beetje omschreven waar ik naar toe wil.
De vraag hier was voor mij een begin om de formule zelf verder af te kunnen maken....

De celverwijzig naar de Cel P5 in blad "Voorraadpickoverzicht"...welke per regel dadelijk verandert..P6, p& enz...wou ik dan nog zelf in de formule aanpassen.

Ik hoop dat je het snapt.

Ik heb overigens de formule om de regel leeg te gooien even uit gezet....

Gr. Norman
 

Bijlagen

Laatst bewerkt:
Ok, je hebt dus de interne naam van dat werkblad aangepast.
Dit werkt hier prima:
Code:
Sub Afboeken1()
    Sheets("Voorraadlijst").Range("J6") = Bereken1(Sheets("Voorraadlijst").Range("J6"), Sheets("Voorraadpickoverzicht").Range("E5"))
End Sub

Function Bereken1(a As Double, b As Double) As Double
    Bereken1 = (Round(a - b))
    shtPickList.Range("B5:E5").Value = ""
End Function
 
Hoi edmoor,

Maar wat als er in de de volgende regel van het blad "Voorraadpickoverzicht" hetzelfde artikelnummer zit welke ik wil afboeken afboeken in het eerste blad met voorraad.
Dat is eigenlijk de reden dat ik wil dat hij kijkt naar de zelfde regel in kolom "P" zodat hij weet welk artikelnummer hij in blad "voorraadoverzicht" moet afboeken.


Volgens mij zijn het harde nu waarden.
Hij moet eigenlijk kijken naar wat ik hier heb geprobeerd "'Range(Voorraadlijst!Cells(Range(shtPickList!P5), 10)) = Bereken1(a:=Range(Voorraadlijst!Cells(Range(shtPickList!P5), 10)), b:=[Voorraadpickoverzicht!E5])"

Hoop dat je me snapt...

Gr. Norman
 
Laatst bewerkt:
Ik heb niet naar de verdere werking van je document gekeken, alleen de reden voor die fout 1004 voor je opgespoort en aangepast.
 
je plaats toch geen 2 keer hetzelfde artikel in een voorraadlijst
 
Klopt, niet in de voorraadlijst, maar wel in de picklijst.
We kunnen namelijk meerdere opdrachten hebben met hetzelfde materiaal.

Het is me ondertussen gelukt...:)
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan