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

werken met als/of in vba

Status
Niet open voor verdere reacties.

Luc3d

Gebruiker
Lid geworden
29 mrt 2019
Berichten
7
Ik gebruik een formule in excel om na te kijken of er in een van de opgegeven cellen het cijfer 12 voorkomt, om zo te bepalen of het resultaat een datum over 21 dagen of over 14 dagen betreft

=ALS(OF(D17=12;D18=12;D19=12;D20=12;D21=12;D22=12;D23=12;D24=12;D25=12);VANDAAG()+14;VANDAAG()+21)

Deze formule werkt ik mijn cel.
Maar ik zou deze graag via vba laten invoegen in de cel H5

daar probeer ik deze regel, maar die werkt niet

Range("H5").Formula = "=IF(OR(D17=12;D18=12;D19=12;D20=12;D21=12;D22=12;D23=12;D24=12;D25=12);TODAY()+14;TODAY()+21)"

Ik krijg dan "fout 1004 tijdens uitvoering"

Ik heb geen idee wat ik fout doe (ik gebruik office 2016)
 
Wat doet deze?
PHP:
Range("H5").FormulaR1C1 ="=IF(OR(R[12]C[-4]=12,R[13]C[-4]=12,R[14]C[-4]=12,R[15]C[-4]=12,R[16]C[-4]=12,R[17]C[-4]=12,R[18]C[-4]=12,R[19]C[-4]=12,R[20]C[-4]=12),TODAY()+14,TODAY()+21)"
 
probeer deze eens:
Code:
    Range("H5") = "=IF(OR(R[12]C[-4]=12,R[13]C[-4]=12,R[14]C[-4]=12,R[15]C[-4]=12,R[16]C[-4]=12,R[17]C[-4]=12,R[18]C[-4]=12,R[19]C[-4]=12,R[20]C[-4]=12),TODAY()+14,TODAY()+21)"

TIP: als je de formule in de cel hebt staan, selecteer dan de cel en neem een macro op.
Het enige dat je na het starten van de macrorecoder hoeft te doen is drukken op F2 en enter. Sop dan de macrorecoder
 
Is die macrorecorder na gebruik smerig? :p
 
gast0660

Hey gast0660, die werkt. Bedankt.

Alhoewel ik met die celverwijzing totaal verloren ben
 
@dotche. @edmoor,

we willen toch een schoon resultaat?:d
 
@dotche. @edmoor,

we willen toch een schoon resultaat?:d
Dat zeker! :D


@luc3d:
Vervang in je eigen formule uit #1 de puntkomma's door een komma, dat is voldoende:
Code:
Range("H5").Formula = "=IF(OR(D17=12,D18=12,D19=12,D20=12,D21=12,D22=12,D23=12,D24=12,D25=12),TODAY()+14,TODAY()+21)"
 
Laatst bewerkt:
@Edmoor

Dankjewel Edmoor,

Ok, dat werkt ook en zo begrijp ik de celverwijzigen wel.:love:

Opnieuw bedankt voor de hulp.
Fantastisch forum. Love it.

Groetjes
 
Laatst bewerkt:
Ik zou er trouwens dit van maken:
Code:
Range("H5").Formula = "=IF(SUM(D17:D25)>11,TODAY()+14,TODAY()+21)"
 
Laatst bewerkt:
1 x TODAY() gebruiken kan ook

Code:
Range("H6") = "=TODAY()+IF(SUM(D17:D25)>11,14,21)"
Range("H7") = "=TODAY()+14+7*(SUM(D17:D25)<12)"
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan