02. december 2012 - 14:48Der er
12 kommentarer og 1 løsning
Beskytte en excelfil
Hej !
Jeg bruger Office 2010. Jeg har en excelfil som lige er oprettet og som skal testes.
Jeg kunne godt tænke mig at der kunne laves en VBA-kode således at hvis arket bliver benyttet om f.eks 2 mdr., eller efter en bestemt dato, så skal der indtastes en kode for og åbme arket.
Er der mon nogen som lige kunne hjælpe med VBA til denne opgave, hvis det da kan laves
1) en kode der skjuler fane(r) ved lukning.... 2) en kode der ved åbning af filen checker om dato er før/efter en given dato 3) og ved "efter" kræver en kode for at vise fane(r)
Efter lidt søgning på VBA-hjælp, fandt jeg på denne kode som blev lagt i VBA i "Denne Projektmappe"
Private Sub Workbook_Open() Dim dato As Date dato = "02-12-2013" ' Dato hvortil fil kan åbnes If Date >= dato Then With ActiveWorkbook .RunAutoMacros xlAutoClose .Close End With End If End Sub
Jeg har prøvet den nogle gange, umiddelbart virker den fint nok, filen åbnes, men lukkes igen straks. Jeg er ikke helt klar over hvad koden "RunAutoMacros xlAutoClose" egentlig gør, kan du forklare det ? For og teste arket rettede jeg på computerens dato. Har du et godt forslag???
Private Sub Workbook_Open() Dim dato As Date Dim Svar As String
dato = "02-12-2012" ' Dato hvortil fil kan åbnes If Date >= dato Then Svar = InputBox("Indtast kode", "Prøve perioden er udløbet") If Svar = 1234 Then Exit Sub Else With ActiveWorkbook .RunAutoMacros xlAutoClose .Close End With End If End If End Sub
Private Sub Workbook_Open() Dim dato As Date Dim Svar As String
dato = "02-12-2012" ' Dato hvortil fil kan åbnes If Date >= dato Then
Svar = InputBox("Indtast kode", "Prøve perioden er udløbet") If Svar = "" Then GoTo Luk If Svar = 1234 Then Exit Sub Else Luk: With ActiveWorkbook .RunAutoMacros xlAutoClose .Close End With End If End If End Sub
Jeg har lige tjekket dit første forslag og der var der lige et problem med følgende 1) ved lukning af dialogfelt 2) ved annuller 3) ved ingenting i svarfelt Disse 3 punkter gav fejl i VBA., det ville jeg jo lige skrive retur, men så så jeg du havde lavet et nyt forslag, det er bare lige det jeg manglede, jeg har tjekket det og det virker perfekt ingen fejl, og arket lukkes uanset hvad der gøres bortset fra hvis koden indtastes. - En rigtig god kodestump, det har jeg arbejdet på tidligere men ikke kunnet få til og virke. Rigtig mange tak for hjælpen, og læg et svar.
Når jeg laver VBA-kode plejer jeg og sætte kode på VBA-projektet, så er der jo lukket af for pilfingre. Hvis man skal nå og deaktiver skal man vist være særlig hurtig.
Hej igen Kan godt se at der lige er et problem hvis man kender hvorledes man kan åbne med deaktiverede makroer, men koden kan ikke ses. Er der nogen løsning for det ????
Ok -men der hvor jeg benytter VBA har jeg endnu ikke mødt nogen som var så interesserede, at de ville bruge tid på og finde ud af og deaktivere eller bryde koden på VBA-projekt. - Jeg kender ikke lige selv måde og fjerne koden på et VBA projekt.
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.