Avatar billede hansenhald Nybegynder
14. juni 2006 - 18:31 Der er 3 kommentarer

anvendelse af makro på beskyttet ark

Hej

Jeg har lavet et excell-ark i hvilket jeg ved indtastning af målscoren i kampene ved VM i fodbold vil have en opdateret stilling i hver gruppe. Jeg har beskyttet alle felter, pånær der hvor der skal indtastes målscore, for at sikre formler o.a. mod sletning - da andre end mig selv skal bruge arket.

For at udregne opdaterede stillinger efter indtastning af score har jeg lavet et makro der sorterer grupperne efter point osv. - men når jeg afspiller makroen får jeg en fejlmeddelse: Runtime error 1004, Metoden Sort for klassen range mislykkedes.

Der er ingen fejl ved makroen hvis jeg fjerner beskyttelsen, men hvordan kan jeg få det til at virke på det beskyttede ark ?

Hansenhald
Avatar billede bak Forsker
14. juni 2006 - 19:01 #1
Prøv at sætte dette ind i modulet ThisWorkbook

Private Sub Workbook_Open()
    Sheets("Ark1").Protect userinterfaceonly:=True
End Sub

Userinterfaceonly gør at arket er beskyttet for brugerinput, men ikke for makroinput
Avatar billede hansenhald Nybegynder
14. juni 2006 - 21:16 #2
ThisWorkbook, er det der hvor makro´en er programmeret ? Selve makro består af følgende;

"Sub stilling()
'
' stilling Makro
' Makro indspillet 14-06-2006 af Hald
'
' Genvejstast:Ctrl+q
'
    Sheets("vm").Select
    Range("C41:K45").Select
    Selection.Sort Key1:=Range("D41"), Order1:=xlDescending, Key2:=Range( _
        "I41"), Order2:=xlDescending, Key3:=Range("E41"), Order3:=xlDescending, _
        Header:=xlGuess, OrderCustom:=1, MatchCase:=False, Orientation:= _
        xlTopToBottom, DataOption1:=xlSortNormal, DataOption2:=xlSortNormal, _
        DataOption3:=xlSortNormal
    Range("C47:W48").Select
End Sub"

Hvor skal jeg sætte det ind som du foreslår ? - hvis det overhovedet er her ?

Hansenhald
Avatar billede excelent Ekspert
14. juni 2006 - 21:29 #3
du kunne også anvende bak's udmærkede forslag i din egen sub :

Sub stilling()
'
' stilling Makro
' Makro indspillet 14-06-2006 af Hald
'
' Genvejstast:Ctrl+q
'
Sheets("vm").Protect userinterfaceonly:=True
    Sheets("vm").Select
    Range("C41:K45").Select
    Selection.Sort Key1:=Range("D41"), Order1:=xlDescending, Key2:=Range( _
        "I41"), Order2:=xlDescending, Key3:=Range("E41"), Order3:=xlDescending, _
        Header:=xlGuess, OrderCustom:=1, MatchCase:=False, Orientation:= _
        xlTopToBottom, DataOption1:=xlSortNormal, DataOption2:=xlSortNormal, _
        DataOption3:=xlSortNormal
    Range("C47:W48").Select
Sheets("vm").Protect userinterfaceonly:=False
End Sub
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
Vi har et stort udvalg af Excel kurser. Find lige det kursus der passer dig lige her.

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