Avatar billede banboy Nybegynder
29. september 2008 - 18:58 Der er 8 kommentarer og
1 løsning

Password ved åbning af ark

Hej

Jeg har lavet et regneark med flere ark. Her er der bl.a. et ark, hvor der ligger fortrolige oplysninger. Alle skal kunne åbne filen pånær dette ark. Det skal være muligt at åbne via et password. Har nogen en god ide til en makro, som kan lave dette.
Avatar billede jkrons Professor
29. september 2008 - 22:00 #1
Hvis det skal være skudsikkert? Så kan det ikke lade sig gøre. Du kan kode dig et stykke ad vejen via VBA, men hvis nogen VIL se dine data får de dem også at se.
Avatar billede jkrons Professor
29. september 2008 - 22:15 #2
Brug følgende til at skjule arket (skriv først et eller andet sted i det skjulte ark adgangskoden til at åbne det, fx i AC367.

Sub SkjulArk()
    Sheets("Ark1").Visible = xlVeryHidden
End Sub

For at vise arket kan du bruge denne kode:

Sub VisArk()
    a = InputBox("Indtast adgangskode")
    If a = Sheets("Ark1").Range("AC367") Then
        Sheets("Ark1").Visible = True
    Else
        Exit Sub
    End If
End Sub

Ret til fxv. angår det ark, der skal skjules og den celle, du skriver adgangdkoden i. Når det er færdigt, skal du have skjult det modul, du har koden i. Højreklik på modulnavnet og Vælg VBAProject Properties. I fanebladet Protection sætter du flueben i Lock Project for Viewing, og indsætter og bekræfter en adgangskode.

Det er som sagt ikke skudsikkert, da koden forholdsvis nemt kan brydes.
Avatar billede banboy Nybegynder
30. september 2008 - 08:58 #3
Perfekt - det virker. Brugeren er særlig stærk i Excel

Send lige et svar - så giver jeg point
Avatar billede jensenj Nybegynder
30. september 2008 - 13:10 #4
Jeg kan dælme ikke få det til at virke???

Jeg vil lave et password på Ark2, som jeg har omdøbt til Intern. Hvordan vil VBA koden komme til at lyde?

Og hvad betyder fxv, som du hentyder til?
Avatar billede jkrons Professor
30. september 2008 - 15:18 #5
Sub SkjulArk()
    Sheets("Intern").Visible = xlVeryHidden
End Sub

Sub VisArk()
    a = InputBox("Indtast adgangskode")
    If a = Sheets("Intern").Range("AC367") Then
        Sheets("Intern").Visible = True
    Else
        Exit Sub
    End If
End Sub

fxv var en slåfejl.
Avatar billede jensenj Nybegynder
30. september 2008 - 15:30 #6
Tak
Avatar billede jkrons Professor
01. oktober 2008 - 00:22 #7
Var det ikke mig, der skulle have haft pointene :-)?
Avatar billede jensenj Nybegynder
01. oktober 2008 - 08:01 #8
Point?

Ny i forum og kender ikke til noget point system?
Avatar billede jkrons Professor
01. oktober 2008 - 09:17 #9
Når et svar accepteres overføres point til den, hvis svar, der er blevet accepteret. I dette tilfælde accepterede banboy dit svar, selv om det egentlig var mig, der havde givet løsningen :-)
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