Avatar billede Maria T Praktikant
04. oktober 2022 - 16:26 Der er 7 kommentarer

Formel der læser navn X i Fane A og leder efter den nyoprettede fane X

Hejsa. Jeg har brug for hjælp. Jeg vil gerne hente en celleværdi i et andet ark.

Jeg har et samleark, som gerne skulle blive udfyldt automatisk når der oprettes en ny fane. Samlearket skal altså selv finde den nye fanes navn ved at hente værdien i en celle i samlearket.

Hvorda gør man det :) Normalt ville man skrive værdi= Sheet1!A1. Men her har jeg ikke et prædefineret sheetnavn. Istedet er Sheet1=celleværdi.

Håber, at det giver mening
04. oktober 2022 - 18:44 #1
Du skal have noget til at fange, at der sker en ændring og det kan gøres på flere måder, jeg ville nok selv skrive en makro, som kører hvergang du skifter fra et ark og til samlearket og så lade makroen checke om alle ark er med, og hvis ikke... indsætte en formel eller hvor mange det nu er...
Avatar billede kim1a Ekspert
04. oktober 2022 - 19:06 #2
Jeg er meget enig med #1 men for konkret at svare på dit spørgsmål bruger man formlen indirekte (indirect).
Indirekte(A1&"!A1") ville hvis der står sheet1 i A1 give dig værdien af Sheet1!A1.
Udfordringen er ofte cellereferencen hvis du skal kopiere flere celler med samme tanke.
Avatar billede Maria T Praktikant
04. oktober 2022 - 19:33 #3
Ok nu forvirrer det mig måske lidt at begge er A1 :-)

Lad os sige navnet på arket står i A1 og jeg skal have data fra det nye ark B1?

Ville det så hedde INDIRECT(A1&”!B1”)
04. oktober 2022 - 19:46 #4
Feks - arknavn udråbstegn og celle ref..
=INDIREC("Sheet3!B1")

Hvis arknavnet indeholder mellemrum så skal det skrives i  '  '
Avatar billede Maria T Praktikant
04. oktober 2022 - 20:36 #5
Udfordringen er at arknavnet ikke er der til at starte med. Det er meningen at formlerne er tastet ind på forhånd. Når jeg så indsætter et nyt ark så skal en celle med arknavnet referere til arket med samme navn og en specifik celle.
Avatar billede kim1a Ekspert
05. oktober 2022 - 12:19 #6
Yes, du er med på formlen.

Du kan f.eks. skrive:
=indirect("'"&celle med arknavn&"'!"&celle der skal refereres til)
Det er svært at læse men nu med ' mellem " for at tage højde for #4s pointe om arknavne med mellemrum.
05. oktober 2022 - 12:37 #7
Hvis det skal være automatisk, så kunne det være nedenstående kode, som gjorde arbejdet, men den skal nok modificeres lidt til at passe til din model, som jeg jo ikke kender.

Private Sub Workbook_NewSheet(ByVal Sh As Object)
    Dim wsSamle As Worksheet, lRow As Long
   
    Set wsSamle = Application.Worksheets("Sheet1")
    'MsgBox "Der er nu oprettet arket " & Sh.Name
   
    'Kode som finder næste sted der skal indsættes en formel og indsæt den
    'måske skal formlen være i kolonne A og hente fra nyt ark B5
    lRow = wsSamle.Range("A1").End(xlDown).Row + 1
    wsSamle.Cells(lRow, 1).Formula = "=" & Sh.Name & "!B5"
   
End Sub
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