Avatar billede Greenseeker Praktikant
16. februar 2011 - 12:22 Der er 9 kommentarer og
1 løsning

Forståelse af ark- og cellebeskyttelse

Hej folkens!

Jeg er ved at udvikle et ark, og tænkte jeg ville få opklaret et tilbagevendende problem jeg har vedr. arkbeskyttelse og cellebeskyttelse.

En makro kopierer data fra ark 1 til en liste i ark 2 og sorterer herefter listen. Brugerne skal ikke kunne redigere i ark 2.

Problem: Jeg har prøvet at låse alle cellerne i ark 2, undtaget de celler makroen kopierer til. Derefter har jeg beskyttet ark 2 (tilladt sortering og ikke andet). Dette virker fint første gang jeg kører makroen, men ved sorteringen af listen flyttes låsningen af cellerne med, og derfor får jeg fejlmelding anden gang jeg kører makroen, da de før ulåste celler nu er låste. Hvad gør jeg?

Jeg tror jeg mangler en grundlæggende forståelse for beskyttelse og låsning af celler (synes ikke hjælp-funktionen hjælper så meget). Er der nogen der kan hjælpe med det konkrete problem, og måske henvise til en guide?

På forhånd tak! :o)
Avatar billede perhol Seniormester
16. februar 2011 - 13:29 #1
Lås alle celler i alle ark som du ikke vil have at brugere skal kunne indtaste data i.
I de makroer du benytter indsætter du i begyndelsen noget kode der låser alle ark, og til slut i makroerne noget kode der låser alle ark.
Resultat - Kun de celler du har bestemt at brugerne må redigere i kan redigeres, undtagen af din makro.

Her er koderne:

******************************************************
'Lås alle ark op
    Dim a As Integer
    For a = 1 To Sheets.Count
        Sheets(a).Activate
        ActiveSheet.Unprotect Password:="kodeord"
    Next
******************************************************

******************************************************
'Lås alle ark
    Dim b As Integer
    For b = 1 To Sheets.Count
    Sheets(b).Activate
    ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True, Password:="kodeord"
    Next
******************************************************

De akn naturligvis også laves som selvstændige makroer.
Avatar billede perhol Seniormester
16. februar 2011 - 13:31 #2
Linje 2 og 3 skulle have været:
I de makroer du benytter indsætter du i begyndelsen noget kode der låser alle ark (b)op(/b), og til slut i makroerne noget kode der låser alle ark.
Avatar billede Greenseeker Praktikant
16. februar 2011 - 15:47 #3
Hej perhol!

Tak for inputs! Det plejer også at være den måde jeg gør det på, når jeg opgiver at forstå hvorfor jeg ikke kan få det til at virke på den anden måde... Det løser problemet, så tak for det! :o)

Men jeg kunne godt tænke mig alligevel at høre om man kan forhindre at sorteringen tager låsningen af celler med? Man kan selvfølgelig indsætte ekstra kode der låser de rigtige celler efter sorteringen, men kan det ikke gøres anderledes?
Avatar billede Greenseeker Praktikant
22. februar 2011 - 09:07 #4
Okay, det lader ikke til at der er flere inputs. Tak for hjælpen, perhol!

Smid et svar! :o)
Avatar billede perhol Seniormester
22. februar 2011 - 14:47 #5
Jeg har jo ikke løst dit problem når du gentager makroen.
Hvordan sætter du de kopierede data ind?
Hvis du indsætter speciel - værdier skulle kun værdierne og ikke cellernes egenskaber komme med.
Denne her indsætter kun værdierne:
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False

Ellers tager du bare selv pointene!
Avatar billede Greenseeker Praktikant
22. februar 2011 - 15:11 #6
Hej igen!

Jeg bruger netop indsæt speciel (værdi) i min kode, men det er heller ikke i kopieringen af data at låsningen af cellerne følger med, det er i sorteringen af listen efter at data er kopieret ind i listen..!?

Kan man sortere kun værdier ligesom man kan indsætte kun værdier?
Avatar billede perhol Seniormester
22. februar 2011 - 15:30 #7
Det kan jeg ikke svare på.
I mit tilfælde er alle celler i arket der sorteres i låst, undyagen når makroen kører.
Avatar billede perhol Seniormester
22. februar 2011 - 15:31 #8
undyagen=undtagen
Avatar billede Greenseeker Praktikant
23. februar 2011 - 08:12 #9
Ok. Lad os bare lukke...

Du har alligevel lagt en brugbar løsning, og fortjener pointene, så smid et svar alligevel! :o)
Avatar billede perhol Seniormester
23. februar 2011 - 11:17 #10
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
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