• 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 plaatsen met vba in een cel

Status
Niet open voor verdere reacties.

bontekite

Gebruiker
Lid geworden
19 dec 2009
Berichten
80
Ik heb het volgende probleem,:confused:

Ik wil in een data bestand, in een lege kolom een formule plaatsen.

in excel zelf heb ik eerst de formule uitgeprobeerd welke ik wil hebben en deze werkt
maar als ik met vba deze formule wil plakken dan gaat er iets mis of ik gebruik de verkeerde notatie.

kan iemand mij helpen

groeten Ben :rolleyes:



Bekijk bijlage formule.xls staan en welke wel werkt krijg ik niet werkend in
 
Probeer deze eens:

Code:
Sub plaatsformule()
  Range("e1").FormulaLocal = "=ALS(EN((A1<>0);(B1<>0);(C1<>0));(SOM(A1*(B1/1000)*(C1/1000)*(1+(D1/100))));ALS(EN((A1<>0);(B1<>0);(C1=0));(SOM(A1*(B1/1000)*(1+(D1/100))));ALS(EN((A1<>0);(B1=0);(C1=0));(A1);N1)))"
  Selection.AutoFill Destination:=Range("e1:e3"), Type:=xlFillDefault
End Sub

Suc6, Cobbe
 
Beste bontekite ;)

Heb je formule in het bestandje wat aangepast. (te veel haakjes)

Ziehier de formule, waarmee je formule in VBA kan maken.

=ALS(EN(A14<>0;B14<>0;C14<>0);SOM(A14*(B14/1000)*(C14/1000)*(1+(D14/100)));ALS(EN(A14<>0;B14<>0;C14=0);SOM(A14*(B14/1000)*(1+(D14/100)));ALS(EN(A14<>0;B14=0;C14=0);A14;N14)))

Groetjes Danny. :thumb:
 
Beste bontekite ;)

Ziehier de code

Deze werkt, zelf getest.

Code:
Sub plaats_ormule()

    [E14].Select
    ActiveCell.FormulaR1C1 = _
        "=IF(AND(RC[-4]<>0,RC[-3]<>0,RC[-2]<>0),SUM(RC[-4]*(RC[-3]/1000)*(RC[-2]/1000)*(1+(RC[-1]/100))),IF(AND(RC[-4]<>0,RC[-3]<>0,RC[-2]=0),SUM(RC[-4]*(RC[-3]/1000)*(1+(RC[-1]/100))),IF(AND(RC[-4]<>0,RC[-3]=0,RC[-2]=0),RC[-4],RC[-4])))"
    [E15].Select
End Sub

Groetjes Danny. :thumb:
 
=als(a14*b14*c14<>0;a14*b14*c14*(100+d14)/10^8;als(en(a14*b14<>0;c14=0);a14*b14*(100+d14)/10^5;als(en(a14<>0;b14=0;c14=0);a14;n14)))
 
With...End With genieten de voorkeur boven Select, Selection, Activecell
Code:
Sub plaats_formule()
    With [E1:E3]
        .FormulaR1C1 = "=IF(RC[-4]*RC[-3]*RC[-2]<>0,RC[-4]*RC[-3]*RC[-2]*(100+RC[-1])/10^8,IF(AND(RC[-4]*RC[-3]<>0,RC[-2]=0),RC[-4]*RC[-3]*(100+RC[-1])/10^5,IF(AND(RC[-4]<>0,RC[-3]=0,RC[-2]=0),RC[-4],RC[9])))"
    End With
End Sub
 
With...End With genieten de voorkeur boven Select, Selection, Activecell

Klopt, maar With...End With kan ook worden weggelaten.
Code:
Sub plaats_formule()
[E1:E3].FormulaR1C1 = "=IF(RC[-4]*RC[-3]*RC[-2]<>0,RC[-4]*RC[-3]*RC[-2]*(100+RC[-1])/10^8,IF(AND(RC[-4]*RC[-3]<>0,RC[-2]=0),RC[-4]*RC[-3]*(100+RC[-1])/10^5,IF(AND(RC[-4]<>0,RC[-3]=0,RC[-2]=0),RC[-4],RC[9])))"

End Sub

Met vriendelijke groet,


Roncancio
 
Zelfs de FormulaR1C1 kan weg:D
Code:
Sub plaats_formule()
[E1:E3] = "=IF(RC[-4]*RC[-3]*RC[-2]<>0,RC[-4]*RC[-3]*RC[-2]*(100+RC[-1])/10^8,IF(AND(RC[-4]*RC[-3]<>0,RC[-2]=0),RC[-4]*RC[-3]*(100+RC[-1])/10^5,IF(AND(RC[-4]<>0,RC[-3]=0,RC[-2]=0),RC[-4],RC[9])))"
End Sub
 
bedankt allemaal

Heeft iemand een goed aanbeveling wat betreft een goed vba boek voor office zodat ik mijn kennis wat kan opschroeven.

want ik heb nog wel wat andere probleempjes .
ik ben bezig om automatisch mbv vba een Html bestand aan te passen zodat hier text en hyperlinks aangemaakt worden.

dus een bestaande html aanpassen deze weer opslaan als met nieuwe verwijzingen .


nogmaals bedankt dit is weer een leerzame avond en nacht geweest :thumb::thumb::thumb::)
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan