Print side | Luk vindue

Indsætte tekst som formler

Udskrevet fra: Dansk Regneark Forum
Kategori: Hjælp til regneark.
Forum navn: Makro og VBA
Forum beskrivelse: Hjælp til Makroer og VBA-programmering
Web-adresse: https://forum.excel-regneark.dk/forum_posts.asp?TID=478
Udskrevet den: 18.Maj.2024 kl. 19:11


Emne: Indsætte tekst som formler
Besked fra: Maring78
Emne: Indsætte tekst som formler
Posteringsdato: 27.Sep.2011 kl. 16:01
Hej!
 
Har en fane "A", hvor i jeg har en lang liste. Ud fra denne liste opretter jeg en række nye faner navngivet som de navne der på listen. Lige nu 1, 2, 3 og 4... Listen er dog dynamisk og fanerne kan have vilkårlige navne.
 
Min udfordring er så, at jeg har et specifikt felt i alle fanerne vil jeg gerne have summeret i et opsamlingsark. Det kalder jeg "SUM".
 
I den sammenhæng har jeg lavet et ark "D", hvor jeg udfra listen sætter den korrekte formel op som en tekststreng. Den vil jeg så sidenhen gerne sætte ind i et felt i opsamlingsarket "SUM" - og vupti, så har jeg den rigtige sumformel i opsamlingsarket som altid retter sig til efter listen i fane "A". Med dette eksempel ser min formel således ud: "=+'1'!RC+'2'!RC+'3'!RC+'4'!"
Koden ser lige nu således ud:
 
 
/Code
 
    Sheets("D").Select
    Range("D2").Select
    Selection.Copy
   
    Sheets("SUM").Select
    Range("E9").Select
    
    Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
        False, Transpose:=False
    Application.CutCopyMode = False 'Indsætter først som værdier
    
    Selection.Copy
    Selection.PasteSpecial Paste:=xlFormulas, Operation:=xlNone, SkipBlanks:= _
        False, Transpose:=False
    ActiveSheet.Paste
    Application.CutCopyMode = False 'Kopierer feltet og indsætter dernæst som formler
    
    ActiveCell.FormulaR1C1 = _
        "=+'1'!RC+'2'!RC+'3'!RC+'4'!"
   
    Range("E10").Select
 
/Code End
 
Mit problem er, at jeg bliver nød til at stille mig op i tastefeltet og klikke "Enter" efter den formel jeg kopierer ind for at den forstår, at det er en formel og ikke bare tekst... Ovenfor er det optaget - og som I kan se hardcoder den den specifikke formel. Det er jo ikke meningen, men skyldes altså, at jeg laver et Enter-klik i tastefeltet (feltet hvor man skriver og redigerer i en celle).
 
Nogen der har en idé til et lille stykke kode der kan finde ud af at sætte teksten ind som formel med det samme uden, at jeg skal "aktivere den" ved at klikke "Enter" ?
 



Svar:
Besked fra: Allan
Posteringsdato: 28.Sep.2011 kl. 08:55
Hej,
 
Har du mulighed for at uploade dit ark?, så vil jeg gerne kigge på det.
 
//Allan


Besked fra: Maring78
Posteringsdato: 28.Sep.2011 kl. 10:42

Hej igen

Min originalfil er meget tung. Her er en ny med et lille eksempel der burde illustrere problemstillingen.
 
Fane A: liste med faner der bliver oprettet og sidenhen skal summeres (i endelig model op til 40 faner)
Fane D: sammensætter formel som tekst ud fra fane "A" (formlen skal siden hen indsættes i fanen "SUM")
SUM: fanen der summerer celler fra de nye faner (i eksemplet fane 1, 2, 3 og 4)
 
Vil gerne indsætte formlen i celle D2 i fanen "D" som en formel i celle B2 i fanen "SUM". Det er vigtigt, at den kommer ind som en formel og at der ikke bare laves en værdi, idet jeg bagefter skal kunne kopiere formlen videre til andre celler i samme fane.
 
Håber det giver mening og at der potentielt er en der har en løsning :-)
 
/uploads/350/Eksempel1.xls" rel="nofollow - uploads/350/Eksempel1.xls
 


Besked fra: Allan
Posteringsdato: 28.Sep.2011 kl. 15:49
Hej igen,
 
Prøv lige at se dette eksempel.
 
Som jeg har tolket det, vil du gerne summere samme celle, blot i mange faner som du kender navnet på.
Jeg har lavet et eksempel som gør dette på en meget simpel måde, så du undgår at skulle lave listen med formler fremover.
Koden i eksemplet summerer A1 i alle de ark du har skrevet på listen i arket 'A' og placeret formlen på arket 'D'
 
Du har oprettet arkene 1, 2, 3 og 4 på din liste, så formlen bliver =SUM('1:4'!A1)
Det er vigtigt at arkene ligger ved siden af hinanden i samme rækkefølge som på listen, ellers virker det ikke.
 
uploads/1/Eksempel1_2.xls - uploads/1/Eksempel1_2.xls
 
Åben filen og tryk på knappen.
 
//Allan
 


Besked fra: Maring78
Posteringsdato: 28.Sep.2011 kl. 17:29
Kanon! Det virker!
 
Mange tak for hjælpen :-)


Besked fra: Allan
Posteringsdato: 28.Sep.2011 kl. 21:12
Velbekomme og tak for din tilbagemelding. Wink
 
//Allan


-------------
MVH

Allan
https://www.excel-regneark.dk" rel="nofollow - Excel-regneark.dk - Gratis skabeloner til Excel
Få over 120 ekstra funktioner med Danmarks bedste add-in



Print side | Luk vindue