CHC Seniormester
29. juni 2020 - 10:56 Der er 6 kommentarer og
1 løsning

Kopier ark med VBA

Hej

I en excel-fil til forskellige registreringer har jeg mange ark, benævnt f.eks. 1.1; 1.2; 1.3; 2.1; 2.2 osv.

Jeg har ofte behov for at lave kopier af arkene og gør det ved at højreklikke på fanen og vælge 'flyt eller kopier' og sætte kryds i 'opret en kopi'.

F.eks. fane 2.1, så de hedder 2.1(2), 2.1(3) osv.

Kan det gøres med VBA, så arket automatisk får nummerering og placering, som ved ovenstående manuelle fremgangsmåde?

Vh CHC
thomas_bk Forsker
29. juni 2020 - 11:00 #1
Hvis det er en hjælp, så kan du holde ctrl nede og klikke på fanen og trække mod højre, så dannes der en kopi. Det gør det hurtigere at kopiere arket.
CHC Seniormester
29. juni 2020 - 11:12 #2
Hej Thomas_bk

Det er bestemt en hjælp, så tak for det.

Jeg er dog også interesseret i en løsning på ovenstående, da der også er andre brugere og det derfor gerne må være nemt via en knap.

Vh CHC
Jan K Ekspert
29. juni 2020 - 12:44 #3
Denne kode kan sikkert forbedres, men den gør jobbet, forudsat, at det ark, derkal kopieres er det aktive ark. Koden indsætter kopien lige efter det ark, der  kopieres, og giver den kopiens navn + 1. Den virker kun, hvis der ikke allerede er et ark, med navn, den fårå. Hvis du fx har ark 2.3 vil det nye ark kommer til at hedde 2.4, men hvis du allerede har et ark med det navn, vil den fejle. Men du kan evt selv arbejde videre med koden.

Sub KopierogOmdoeb()
    Dim name As String, numm As String, lastpart As String, firstpart As String
   
    name = ActiveSheet.name
    numm = InStrRev(name, ".", Len(name))
    numm = CInt(numm)
   
    lastpart = CInt(Mid(name, numm + 1, Len(name)))
    firstpart = Left(name, InStrRev(name, ".", numm))
   
    ActiveSheet.Copy after:=ActiveSheet
   
    ActiveSheet.name = firstpart & lastpart + 1
End Sub
CHC Seniormester
30. juni 2020 - 08:59 #4
Hej Jan K

Mange tak for dit bud på en løsning.

Jeg kunne dog rigtig godt tænke mig, at nummereringen var identisk med ovenstående beskrivelse, hvor man ved at højreklikke på fanen og vælger 'flyt eller kopier' og sætter kryds i 'opret en kopi' får lavet en kopi med en nummerering, som f.eks. fane 2.1, så de hedder 2.1(2), 2.1(3) osv.

Vh CHC
Jan K Ekspert
30. juni 2020 - 09:32 #5
Det er nemt. Slet alt, bortset fra ActiveSheet.Copy After:=ActiveSheet

Resten  bruges faktisk kun til navngivningen af det nye ark.
CHC Seniormester
Skrevet i går kl. 11:34 #6
Hej Jan K

Mange tak for hjælpen. Det var sådan set ret simpelt!

Vh CHC
Jan K Ekspert
Skrevet i går kl. 16:08 #7
Velbekomme :-)
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

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





Premium
Cloud-teknologi sikrede dronningens corona-tale - men DRs CIO Mikkel Müller er slet ikke færdig med cloud endnu
Uden cloud og den rette cloud-strategi havde DR ikke haft samme muligheder eller nye digitale produkter. Det fortæller CIO Mikkel Müller til Computerworld - hvor han også uddyber hvordan han ser resten af it-landskabet bevæge sig mod cloud og hvordan udviklere efterspørger de moderne værktøjer.
Job & Karriere
På jagt efter et it-job i Jylland? Her er 10 stillinger fra Aabenraa til Aalborg, der ledige netop nu
Vi har fundet en række spændende stillinger til dig, der jagter et it-job. Her kan du vælge og vrage mellem ledige stillinger lige fra Aabenraa til Aalborg.
White paper
Sådan får du et sikrere og mere effektivt netværk med SD-WAN
Kombinationen af cloud og mere effektive arbejdsformer - og hjemmearbejde – kan både netværk og sikkerhed nemt blive udfordret. Samtidig kan de traditionelle løsninger hurtigt blive dyre, især når sikkerheden skal følge med. I dette whitepaper kan du læse om udfordringerne med de traditionelle netværkskonfigurationer og hvilke fordele som et software defined netværk kan give, samt hvordan du tænker sikkerhed ind i løsningen fra starten.