Avatar billede jlemming Nybegynder
15. juni 2007 - 10:28 Der er 9 kommentarer og
1 løsning

træd de sidste 1- 2 ciffer ud af arknavn

Hej

Jeg har bla. 20 ark der alle starter med panel efterfulgt af nr 1-20.
Jeg vil gerne nummeret separeret fra.
har prøvet med følgende kode, men det ser ud til at den kun læser det sidste ark, Koden skulle også gerne kunne se om det er et eller to ciffer ?
Håber I kan hjælpe?

For Each Skema In Worksheets
      If Left(Skema.Name, 5) = "Panel" Then
        Skema.Activate
        ActiveSheet.Range("B3").Select
        Selection = "PanelName" & Right(Skema.Name, 1)
        ActiveSheet.Range("B4").Select
        Selection = "AreaName"
        ActiveSheet.Range("F8").Activate
        ActiveSheet.Range("B3").Activate
      End If
    Next Skema
Avatar billede jkrons Professor
15. juni 2007 - 11:15 #1
Den virker på alle ark hos mig. Dette kommer der ud af etnavn, som er Panel12.
Er det, hvad du ønsker:

PanelName2
AreaName
Avatar billede jkrons Professor
15. juni 2007 - 11:21 #2
Koden kan diog under alle omstændigheder gøres "lettere":

For Each skema In Worksheets
      If Left(skema.Name, 5) = "Panel" Then
        skema.Activate
        ActiveSheet.Range("B3").Value = "PanelName" & Right(skema.Name, 1)
          ActiveSheet.Range("B4").Value = "AreaName"
      End If
      ActiveSheet.Range("B3").Activate
    Next skema
Avatar billede jkrons Professor
15. juni 2007 - 11:23 #3
Eller endnu bedre:

For Each skema In Worksheets
      If Left(skema.Name, 5) = "Panel" Then
            skema.Range("B3").Value = "PanelName" & Right(skema.Name, 1)
            skema.Range("B4").Value = "AreaName"
      End If
      ActiveSheet.Range("B3").Activate
    Next skema
Avatar billede jlemming Nybegynder
15. juni 2007 - 11:58 #4
hej jkrons
Det jeg ønsker er at et navn som følgende:
ark navn      B3
panel12        panelname12
panel1        panelname1
panel20        panelname20
osv.
Avatar billede jkrons Professor
15. juni 2007 - 12:51 #5
Så prøv med

For Each skema In Worksheets
      If Left(skema.Name, 5) = "Panel" Then
            skema.Range("B3").Value = "PanelName" & Mid(skema.Name, 6, Len(skema.Name))
            skema.Range("B4").Value = "AreaName"
      End If
      skema.Range("B3").Activate
    Next skema

I øvrigt, hvis arkene altid starter med "panel" kan du udelukke hele F-konstruktionen og nøjes med

For Each skema In Worksheets
            skema.Range("B3").Value = "PanelName" & Right(skema.Name, 1)
            skema.Range("B4").Value = "AreaName"
            activesheet.Range("B3").Activate
    Next skema
Avatar billede jlemming Nybegynder
15. juni 2007 - 13:12 #6
Det virker næsten, den melder dog debug fejl ved kommandoen:
Skema.Range("F8").Activate


Hele koden ser således ud:

For Each Skema In Worksheets
          If Left(Skema.Name, 5) = "Panel" Then
            Skema.Range("B3").Value = "PanelName" & Mid(Skema.Name, 6, Len(Skema.Name))
            Skema.Range("B3").Value = "AreaName" & Mid(Skema.Name, 6, Len(Skema.Name))
            Skema.Range("F8").Activate
            Skema.Range("B3").Activate
          End If
        Next Skema

Grunden til at jeg aktiver F8 og B3 lige efter hinanden er fordi der er en rullevindue der skal rulles tilbage
Avatar billede jlemming Nybegynder
15. juni 2007 - 13:15 #7
et rullevindue :-)
Avatar billede jkrons Professor
15. juni 2007 - 14:59 #8
Du kan ikke aktivere en celel i et ark, der ikke er aktivt. Så i så fald, er du alligevel nødt til at bruge

Skema.Activate

undervejs, og så ændre til AcriveSheet. fx lige inden

Skema.Range("F8").Activate

eller
ActiveSheet.Range("F8").Activate

som det så bør hedde.
Avatar billede jlemming Nybegynder
15. juni 2007 - 18:25 #9
fint nok.

Det var også Mid() funktionen jeg manglende

lægger du et svar?
Avatar billede jkrons Professor
15. juni 2007 - 23:03 #10
Her er et svar :-)
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