Avatar billede Henrik Juniormester
16. november 2016 - 19:42 Der er 3 kommentarer og
1 løsning

SheetName()

Hejsa,
Jeg har nedenstående program, som skriver navnet på arket, når jeg skriver "=SheetName() i en celle.

Function SheetName()
SheetName = ActiveSheet.Name
End Function

Mit problem er, at når jeg kopiere et ark (hvor formelen indgår), så beholder cellen det oprindelige navn - dvs. den opdatere ikke automatisk til navnet på det nye ark.

Hvordan kan det mon løses?

På forhånd tak
Henrik
Avatar billede kim1a Ekspert
16. november 2016 - 19:56 #1
Jeg tænker at du lige skal trykke F9, så den opdaterer formlen?
16. november 2016 - 20:01 #2
Det er fordi alle formler i alle ark bliver opdateret med "ActiveSheet"... så der vil jo altid så det samme i alle formlerne...

Prøv noget alla dette...
Function SheetName(byval someCell as Range)
    SheetName = someCell.Parent.Name
End Function

I en celle skriv f.eks. =SheetName(A1)
Avatar billede xl-Enthusiast Ekspert
16. november 2016 - 20:24 #3
Eller:

Function SheetName()
    Application.Volatile
    SheetName = Application.Caller.Parent.Name
End Function
Avatar billede Henrik Juniormester
16. november 2016 - 21:55 #4
1000 tak til alle, og specielt til xl-Enthusiast - dette virker

Function SheetName()
    Application.Volatile
    SheetName = Application.Caller.Parent.Name
End Function
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

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