Avatar billede tville Juniormester
17. december 2014 - 13:09 Der er 6 kommentarer og
1 løsning

Kontrol af arknavn

Hej

Jeg har en makro, der opretter et nyt ark og navngiver det ud fra det, der indtastes i en inputboks. Det er en dato der indtastes. Datoen indsættes i B2. Arket navngives f.eks. "Uge 6" hvor ugenr. tages ud fra datoen. Alt det virker fint. Men jeg skal have en kontrol af den dato der indtastes i inputboksen, så der ikke oprettes 2 ark med samme navn (makroen fejler hvis arknavn findes i forvejen).
Det skal således kontrolleres at der ikke i forvejen er et ark der f.eks. hedder "uge 6". Hvis der er det, skal brugeren indtaste en ny dato.
Min kode for inputboks ser således ud:

'Inputboks hvor der skal indtastes startdato for protokol. Dato indsættes i feltet B2
    Dim varDato As Date
   
    varDato = InputBox("Indtast startdato for protokol", "Dato input")
   
        Range("b2").Select 'Vælg den celle hvor data skal sættes ind - A1
       
        'Formatering af cellen som dato
        With Selection
            .NumberFormat = "dd/mm/yyyy;@"
        End With
       
       
        'Indsæt dato
        ActiveCell.Value = varDato

'navngiv ark
    ActiveSheet.Name = "uge " & Range("b1")
Avatar billede finb Ekspert
17. december 2014 - 13:36 #1
utestet:

for each sheet in sheets
inputbox()
..
..
if  ActiveSheet.Name = sheet.name then exit for
next
Avatar billede tville Juniormester
18. december 2014 - 07:52 #2
Det fungerer ikke. Jeg får meddelelse om at arknavnet findes i forvejen.
Min tanke var at kontrollen af arknavnet skal ligge i forbindelse med indtastningen i inputboksen - altså før jeg navngiver arket.
Avatar billede finb Ekspert
18. december 2014 - 14:10 #3
Du har ret.
Læg alle ark-navne i Array,
spørg brugeren vha. inputbox,
sammenlign det indtastede med Array,
Loop indtil brugeren har indtastet
et tilladt ark-navn.
Avatar billede tville Juniormester
18. december 2014 - 14:37 #4
Der oprettes løbende nye ark, så det er svært at lægge ark-navne i et array.
Avatar billede finb Ekspert
19. december 2014 - 14:25 #5
Ideen er, at array automatisk opdateres,
hver gang du åbner filen eller trykker F9.
Avatar billede tville Juniormester
19. december 2014 - 15:12 #6
Det lyder som en rigtig god ide, men så langt rækker mine evner desværre ikke. Hvordan lægger jeg arknavnene i et array?
Avatar billede tville Juniormester
10. juni 2015 - 14:35 #7
Ikke relevant længere.
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