Avatar billede kim1a Ekspert
02. juni 2015 - 16:41 Der er 5 kommentarer og
1 løsning

VBA: Hvordan hopper jeg til korrekt ark

http://gratisupload.dk/f/8s0w6r9kf0/

Mit skema er tiltænkt således at jeg i faneblad fabruar kører min makro. Den skal så kopiere arket (med formler til ny fane = "Mdr xx" hvorefter den i faneblad februar skal fjerne alle formler.

Min udfordring er at selvom fane februar har indeks nummer 4, så hopper den ikke retur. Hvad gør jeg forkert.

Makroen ligger i arket, men er også her:
Sub Close_month()

Dim IntCurrentSheet As Integer
IntCurrentSheet = ActiveSheet.Index

Response = MsgBox("Vil du lukke måneden? Husk at skemaet skal være navngivet med måneden", vbYesNo)
If Response = vbYes Then
    ' copy to new sheet
    ActiveSheet.Copy Before:=ActiveSheet
    ActiveSheet.Name = "Mdr XX"
    ' jump to old sheet
    Sheets(IntCurrentSheet).Activate <- HER ER MIN KODEUDFORDRING
    ' mark all
    ActiveSheet.Select
    Cells.Select
    Selection.Copy
    Selection.PasteSpecial Paste:=xlPasteValues
    ' delete button and set closing date
    ActiveSheet.Shapes.Range(Array("Button 1")).Delete
    Range("F1").Select
    ActiveCell.Formula = "Lukket " & Now
    ' hide columns
    Range("D:D, E:E").EntireColumn.Hidden = True
End If
End Sub
Avatar billede kabbak Professor
02. juni 2015 - 17:39 #1
Sub Close_month()
'**************************************************************************
'Created by kim@keriksen.dk
'Purpose: Remove all functions from a single sheet
'Last Edit date: 22-05-2015
'**************************************************************************
Dim IntCurrentSheet As String
IntCurrentSheet = ActiveSheet.Name

Response = MsgBox("Vil du lukke måneden? Husk at skemaet skal være navngivet med måneden", vbYesNo)
If Response = vbYes Then
    ' copy to new sheet
    ActiveSheet.Copy Before:=ActiveSheet
    ActiveSheet.Name = "Mdr XX"
    ' jump to old sheet
    Sheets(IntCurrentSheet).Activate
    ' mark all
    ActiveSheet.Select
    Cells.Select
    Selection.Copy
    Selection.PasteSpecial Paste:=xlPasteValues
    ' delete button and set closing date
    ActiveSheet.Shapes.Range(Array("Button 1")).Delete
    Range("F1").Select
    ActiveCell.Formula = "Lukket " & Now
    ' hide columns
    Range("D:D, E:E").EntireColumn.Hidden = True
End If
End Sub
Avatar billede kabbak Professor
02. juni 2015 - 17:58 #2
og så lige farve på teksten i F1
Sub Close_month()
'**************************************************************************
'Created by kim@keriksen.dk
'Purpose: Remove all functions from a single sheet
'Last Edit date: 22-05-2015
'**************************************************************************
Dim IntCurrentSheet As String
IntCurrentSheet = ActiveSheet.Name

Response = MsgBox("Vil du lukke måneden? Husk at skemaet skal være navngivet med måneden", vbYesNo)
If Response = vbYes Then
    ' copy to new sheet
    ActiveSheet.Copy Before:=ActiveSheet
    ActiveSheet.Name = "Mdr XX"
    ' jump to old sheet
    Sheets(IntCurrentSheet).Activate
    ' mark all
    ActiveSheet.Select
    Cells.Select
    Selection.Copy
    Selection.PasteSpecial Paste:=xlPasteValues
    ' delete button and set closing date
    ActiveSheet.Shapes.Range(Array("Button 1")).Delete
    Range("F1") = "Lukket " & Now
    Range("F1").Font.Color = vbRed
    ' hide columns
    Range("D:D, E:E").EntireColumn.Hidden = True
End If
End Sub
Avatar billede kim1a Ekspert
02. juni 2015 - 18:34 #3
Og hvad har du lavet om på min kode? (i første svar)
Avatar billede kabbak Professor
02. juni 2015 - 19:40 #4
Dim IntCurrentSheet As String
IntCurrentSheet = ActiveSheet.Name

  Sheets(IntCurrentSheet).Activate
Avatar billede kim1a Ekspert
03. juni 2015 - 08:23 #5
Super - jeg ender med at bruge det, så kom med et svar :-)

Jeg er dog stadig undrende hvorfor jeg ikke kan bruge Index-løsningen. Jeg troede at alle faneblade havde det index som står i editorens "sheetX" - men index er måske bare fanebladets nummer fra venstre?
Avatar billede kabbak Professor
03. juni 2015 - 16:41 #6
;-)) 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