Avatar billede ehlerz Nybegynder
28. februar 2007 - 10:52 Der er 5 kommentarer

Lægge en formel ind i et ark via VBA

Hej
Jeg har et spørgsmål vedrørende VBA kodning.
Jeg har et regneark med flere underliggende ark. Jeg vil gerne via VBA have muligheden for i eks. celle A5 på mit forsideark at lægge en formel ind. eks. vil jeg gerne have at "=hvis('obligationer'!m34<=12;1;"")" lægges ind i cellen således at formlen fungerer. HVordan gør jeg dette i vba? Mit problem opstår da jeg hver gang jeg eks. får en ny kunde, via VBA opretter denne i en række på mit forsideark mens min kode tager en kopi af et regneark jeg har udarbejdet og omdøber dette til kundenavnet. Udfra hver kunde på mit forsideark vil jeg i en kollonne gerne have en formel der kigger i kunden specifikke underark. Kryptisk??

Kan man det??
Avatar billede ehlerz Nybegynder
28. februar 2007 - 10:58 #1
Forestil jeg mit forsideark som følgende
        A          B      C    D    E    F        G
1  Kundenummer  Kundenavn  bla  bla  bla  bla  obligationer
2        2          Hans

Jeg kunne nu godt tænke mig under obligationer i samme række som min kunde at have formlen =hvis('B2'!m32<=12;1;""), altså at formlen henviser til en celle med et navn, og at execel forstår at den så skal henvise til denne kundes underark. Hvis den kan henvise til et navn i kolonne B kan jeg jo bare trække formlen i kolonne G ned bagefter.
Avatar billede innoteck Nybegynder
21. september 2007 - 10:46 #2
Jeg ved ikke om det er en hjælp, men i forhold til den første del af dit spørgsmål, kan du lægge en formel ind i et excel regneark med VBA således:

    Range("G10").FormulaR1C1 = "=IF(RC[-5]>12,1,"""")"

Ovenstående indsætter formlen  '=HVIS(B10 > 12; 1, "")' i Celle G10

Hvis du alternativt skriver:

    ActiveCell.FormulaR1C1 = "=IF(RC[-5]>12,1,"""")"

Vil formlen blive indsat i den aktive celle, hvor referencen i formlen er cellen 5 pladser til venstre (samme række)

Du kan med fordel anvende Makrooptageren i Excel, og efterfølgende se og redigere formeludtrykket ('FormulaR1C1 = "..." ') med VBA

(Husk at stoppe makrooptegeren igen når du har indtastet formlen i Excel)
Avatar billede ehlerz Nybegynder
21. september 2007 - 12:12 #3
Hej Innoteck, mange tak. Har løst problemet men bare glemt at lukke spørgsmålet ned. :-)

God weekend
Avatar billede ehlerz Nybegynder
21. september 2007 - 12:12 #4
:-)
Avatar billede innoteck Nybegynder
21. september 2007 - 12:16 #5
okay :-)

God weekend
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
Vi har et stort udvalg af Excel kurser. Find lige det kursus der passer dig lige her.

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