Formule SOM met variabele rijnummers

Status
Niet open voor verdere reacties.

icecube87

Gebruiker
Lid geworden
5 okt 2011
Berichten
46
Hallo,

graag wil ik een som formule invoeren d.m.v. een loop en daar variabele rijnummers aan toekennen.
Dit heb ik gemaakt:

Code:
 Dim Lastrow As Long
        Dim i As Long
             
            Lastrow = Worksheets("omzet").Range("B" & Rows.Count).End(xlUp).Row

For i = 7 To Lastrow - 2
        
                wb1.Worksheets("omzet").Range(i, "O").Formula = "=SUM(F" & i & " : F" & i - 1 & ")"

Next i

Als ik dit draai krijg ik de foutmelding: 1004 - door object of toepassing gedefinieerde fout.

Idee is als volgt:

Formule moet value uit kolom F + rijnummer (omzet) optellen bij F - 1 rij. (er komt dus een cumulatieve omzet tot stand)

Zie voorbeeldbestand: het vba script zou de formule in kolom B moeten invullen.
 

Bijlagen

  • VB cumulatief.xlsm
    8,3 KB · Weergaven: 22
Laatst bewerkt:
Het is me nu gelukt, ik heb dit gedaan:

Code:
 wb1.Worksheets("omzet").Range("O" & i).Formula = "=SUM(F" & i & " : F" & i - 1 & ")"

Dus dit omgedraaid:
Code:
Range("O" & i)

Maar waarom zie ik in voorbeelden heel van
Code:
Range(i, "O")
staan, maar werkt dat dus kennelijk niet?


*** Toch nog een vraag:

Nu heb ik deze formule:

Code:
 wb1.Worksheets("marge").Range("BE" & i).Formula = "=Database!Q" & j & " * marge!AZ" & i & ")"

Maar daar loop ik weer op vast, zelfde foutmelding als de vorige keer. Ik denk dat ik iets fout doe met de quotes?
 
Laatst bewerkt:
Je bent vast in de war met:
Code:
Cells(i, "O")
 
obv het voorbeeldbestand wat totaal niet aansluit met de code:shocked:

Code:
Range("B2:B" & Cells(Rows.Count, 1).End(xlUp).Row).Formula = "=sum(A2,B1)"
 
Je bent vast in de war met:
Code:
Cells(i, "O")

Dat is het inderdaad! Ik had Cells veranderd naar Range, dat kan natuurlijk niet zo maar. Bedankt.

Code:
obv het voorbeeldbestand wat totaal niet aansluit met de code

Bedankt, dat is inderdaad de formule zoals hij toegepast zou worden op het voorbeeld. Heb hem nu aangepast met variabele rijnummers.


Overigens maak ik die variabele rijnummers nu met behulp van een loop (i = nummer voor celnummers in kolom A en i -1 is het nummer voor celnummers in kolom B)
Nu zie ik op internet ook voorbeelden voorbij komen waarbij er gebruik gemaakt wordt van [-1]. Volgens mij hoef je dan niet te loopen? Maar ik kom niet achter de werking van de formule. Kennen jullie deze optie? Want het lijkt er op dat dat een betere oplossing is, al werkt het nu ook.
 
Ik zie geen lusje in de de code in #4 en ook het bereik is variabel. Dus wat het allemaal moet worden? Het plaatsen van formules via VBA zou overigens niet mijn keuze zijn.
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan