Avatar billede kim1a Ekspert
14. juni 2013 - 10:42 Der er 4 kommentarer og
1 løsning

VBA relativ reference

ActiveCell.FormulaR1C1 = "=SUM(RC[-1],RC[-5])"

Jeg skal bruge følgende formel i min VBA. Men baseret på antallet af kolonner (måneder) kan det sidste tal (-5) godt være mere eller mindre.

Jeg har via konstanter defineret noget som kan give mig tallet, men hvordan skrives VBA linjen?

ActiveCell.FormulaR1C1 = "=SUM(RC[-1],RC[-"&variabelA-variabelB+1&"])" virker ikke.
14. juni 2013 - 11:58 #1
Denne virker her:
ActiveCell.FormulaR1C1 = "=SUM(RC[-1],RC[-" & X - Y + 4 & "])"
Avatar billede kim1a Ekspert
14. juni 2013 - 12:09 #2
Nej, men er det ikke blot mellemrum du har indsat?

Jeg har via et andet spm her på eksperten prøvet at lave det til:
summeret_markering = Range(Cells(X, Y), Cells(X1, Y1)).Address
ActiveCell.Formula = "=sum(" & summeret_markering & ")"

X og Y er variable VBA fastsætter. Udfordringen er at resultatet bliver f.eks.
$D$4:$F$4 og så kan jeg ikke kopiere det ned på den nemme måde.

Måske den er nemmere at løse?
14. juni 2013 - 12:37 #3
Bemærk, at VBA er følsom over for mellemrum omkring &, så det at indsætte mellemrum kan måske faktisk løse udfordringen.
Avatar billede kim1a Ekspert
14. juni 2013 - 12:41 #4
Det var nemmere at løse - der skulle bare (false, false) bagved .address for at fjerne absolut reference.
Avatar billede kim1a Ekspert
14. juni 2013 - 12:44 #5
Der var nu mellemrum da jeg kopierede linjen ind her på eksperten (har lige checket mit tidligere ark), det var blot da jeg ændrede variablenes navne at de forsvandt - en dum fejl fra min side.

Men jeg løste det jo på anden vis, men tak for hjælpen.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Excel kurser for alle niveauer og behov – find det kursus, der passer til dig

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester