14. marts 2007 - 23:37Der er
4 kommentarer og 1 løsning
Kopi af aktivt sheet, +omdøb m. msgbox
Hej Eksperter ;) Jeg arbejder på et dokument til administration af "varelager". Jeg har nu lavet 1. side, men står i det problem at der skal skiftes sheet hver måned, og vil, for brugernes skyld, gerne have lavet en macro funktion til at foretage dette.
Funktionen skal gøre følgende:
Når man står i ens aktive sheet og activere makroen, kopiere den det active sheet, kommer med en msgbox (rækkefølgen er ligemeget) som spørger hvad det nye sheet skal hedde, OG - det navn skal skrives i det nye sheet i eks. celle A4.
Public Sub NySide() Dim Navn As String ActiveSheet.Copy After:=Sheets(ActiveWorkbook.Sheets.Count) Navn = InputBox("Indtast navnet på den nye side") ActiveSheet.Name = Navn [A4] = Navn End Sub
Hm, ja det sad jeg også og studsede over, og den kommer selvfølgelig også "After", det er bare mig der er vandt til at køre i "arabisk" rækkefølge når jeg læser sheets :D
Du behøver ikke gøre mere, det er helt perfekt nu, takker!
Selvom koden virkede fint, besluttede jeg mig alligevel for at arbejde videre med den. Jeg har lavet denne som virker perfekt.
Sub NytSheet() Application.ScreenUpdating = False Dim Skema As Worksheet Dim Navn As String
Navn = InputBox("Skriv navnet på det nye sheet", "Nyt sheet")
If Navn = "" Then Exit Sub
For Each Skema In Worksheets If Skema.Name = Navn Then MsgBox "Skemaet eksisterer i forvejen" Exit Sub End If Next Skema Sheets(1).Copy before:=Sheets(1) Sheets(1).Name = Navn Sheets(Navn).Move After:=Sheets(Sheets.Count)
Application.ScreenUpdating = True End Sub
Her kan man kopiere hele ens aktive skema vha. en inputbox. Hvis man trykker cancel bliver intet kopieret, og hvis man skriver navnet på et sheet der findes i forvejen, får man en advarsel. Violá
Synes godt om
Ny brugerNybegynder
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.