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

formule invoeren via userform

Status
Niet open voor verdere reacties.

popipipo

Meubilair
Lid geworden
21 nov 2006
Berichten
8.921
Via een userform vul ik een database
In deze database moet in elke regel een berekening worden uitgevoerd
Deze berekening verschuift dus elke keer.
voorbeeld:
In elke rij wordt het gemiddelde van 5 cellen berekend
In regel 10 worden cel H10 tm L10 gebruikt voor deze berekening.
in regel 11 worden cel H11 tm L11 dus gebruikt.
enz

Hoe kan ik er voor zorgen dat deze formule in elke rij steeds automatisch word aangepast?
 
via alt F11 kom je in de vba en daar zie je nr29 en nr30 staan die overeen komen met kolom AD en AE

Als ik dit nou maar vinden kon.

Mvg

Piet
 
Laatst bewerkt:
Hallo,

Je kan gebruik maken van de variabele legeregel die je zelf heeft bedacht.
Dus:

nr29 = "'=AVERAGE(N" & legeregel & ":R" & legeregel & ")"
nr30 = "'=AVERAGE(S" & legeregel & ":V" & legeregel & ")"

Even een paar opmerkingen.

Het is zeer wenselijk om de variabele te definiëren: Dim legeregel as Integer.
Verder is het handig om de tekstboxen mooi onder elkaar te zetten.
Omdat het belangrijk is om volgnr, aanschafdatum en serienummer in te voeren kan je ervoor kiezen om deze in een andere kleur weer te geven en/of een melding toe te voegen als 1 van deze niet is ingevuld of verkeerd (bijvoorbeeld tekst in een datum).

Met vriendelijke groet,


Roncancio
 
Roncancio, bedankt het werkt goed voor de gegeven formule over het gemiddelde.
Toch nog een vraagje, mijn formules zijn, zoals ik al zei, iets langer en ingewikkelder:
Code:
"=IF(ISERROR(IF(OR(AO" & legeregel & ">AL" & legeregel & ";AP" & legeregel & ">AJ" & legeregel & ");CC1;CC2));CC3;IF(OR(AO" & legeregel & ">AL" & legeregel & ";AP" & legeregel & ">AJ" & legeregel & ");CC1;CC2))"
Ik heb ze ook nog met vertikaal zoeken.

In bovenstaande formule wordt verwezen naar cel CC1 tm CC3.
Dit heb ik gedaan omdat mijn oorspronkelijke formule de tekst stond: "OK", "niet OK", "Niet gemeten". Maar dit pakte hij niet, vanwege de aanhalingstekens, moet ik dit anders invoeren of is mijn oplossing de enige?
Een tweede vraag is als ik bovenstaande code gebruikt komt keurig de formule in de juiste cel te staan, echter als tekst en niet als formule, er wordt dus geen berekening gemaakt.
In de cel gaan staan en dan <ENTER> geven en de berekening werkt wel.
Hoe kan ik dit veranderen zodat de berekening wel goed gaat. Het celformaat staat op General.
 
Hallo,

Ik heb de code ingepast voor nr29.
Er wordt automatisch de uitkomst van de formule in de betreffende cel geplaatst

nr29 = "=IF(ISERROR(IF(OR(AO" & legeregel & ">AL" & legeregel & ",AP" & legeregel & ">AJ" & legeregel & "),CC1,CC2)),CC3,IF(OR(AO" & legeregel & ">AL" & legeregel & ",AP" & legeregel & ">AJ" & legeregel & "),CC1,CC2))"

Onderstaande formule is identiek aan bovenstaande met het verschil dat OK, niet OK en niet gemeten in de formule zit ipv een verwijzing naar de cellen CC1 t/m CC3. Ik ging hierbij uit van:

CC1= OK
CC2 = niet OK
CC3 = niet gemeten

nr29 = "=IF(ISERROR(IF(OR(AO" & legeregel & ">AL" & legeregel & ",AP" & legeregel & ">AJ" & legeregel & ")," & "OK" & "," & "niet OK" & "))," & "Niet gemeten" & ",IF(OR(AO" & legeregel & ">AL" & legeregel & ",AP" & legeregel & ">AJ" & legeregel & ")," & "OK" & "," & "niet OK" & "))"

Verwijzingen naar een cel zijn heel handig. Als je bijvoorbeeld "niet gemeten" verandert, dan hoef je niet alle formules te veranderen.

Je moet zelf maar kijken wat je handigste/prettigste vindt. Maar op terug te komen op je vraag: Het kan dus wel met de tekst OK, niet OK en niet gemeten in de code.

Met vriendelijke groet,


Roncancio
 
Laatst bewerkt:
Hallo Roncancio
Ik heb wel de juiste formule, maar de formule komt als tekst in de cel te staan, er wordt dus geen berekening gemaakt.
Ga ik in de formule balk staan en de formule bevestig met <enter> dan krijg ik wel de berekening.

ps de tweede formule (die met de teksten OK, niet OK, niet gemeten) werkt bij mij niet.
Ik kan niet achterhalen waar het bij beide problemen misgaat.
 
Hallo,

Dit heb ik niet vaak meegemaakt. In het origineel werkt de macro uitstekend maar bij het nieuwe menu zet de computer de formule als tekst neer. Zelfs de code van het origineel kopiëren naar het nieuwe menu bracht geen soelaas. Uiteindelijk heb ik het opgelost door alle code en besturingselementen van het nieuwe menu te kopiëren naar het oude menu. En het "nieuwe" menu verplaatst naar het nieuwe versie. Bij mij werkt alles (na uitgebreid testen).

Ook het probleem met ok en niet ok heb ik in het nieuwe menu opgelost.

Met vriendelijke groet,


Roncancio
 
Laatst bewerkt:
Bedankt
Ik ga er morgen maar eens voor zitten want het dit bestand was een gestripte
anders kon ik het niet plaatsen.

Ik beschouw het probleem als opgelost
Kom ik er toch niet uit dan hoor je het wel
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan