Avatar billede besida Nybegynder
03. september 2007 - 14:53 Der er 16 kommentarer og
1 løsning

Beskyttelse af celler

Hej

Jeg har lavet en regnskabsmodel i excel, som skal bruges af nogle venner, til at bogføre og holde styr på deres regnskab.

Men for at kunne bogføre i henhold til bogføringsloven, skal man ikke kunne slette/ændre tidligere posteringer, andet end vha. efterposteringer.

Der skal derfor være en funktion/makro som låser cellerne efter der er indtastet i dem, således at de ikke kan åbnes igen.. Dette kunne evt. aktiveres af en knap.

JEg låser selvfølgelig modellen før de får den, således at de ikke kan ændre/eller komme til at slette formler mv.
Den bliver låst med password, således at de slet ikke kan låse den op, på noget tidspunkt.

Men kan man godt låse cellerne vha. makro, også selv om modellen egentlig er låst???

Håber der er nogen der kan hjælpe eller har et andet godt bud

Mvh.

Daniel
Avatar billede nemlig Professor
03. september 2007 - 15:18 #1
Jo det kan sagtens lade sig gøre via makro.
Men selvom du beskytter arket, herunder også makrokoden, kan den meget nemt brydes. Så låsningen kan nemt brydes bevidst, men er omvendt god, for at sikre sig mod fejl.
Avatar billede be_nice Juniormester
03. september 2007 - 18:40 #2
Hej besida,

Det er korrekt at en evt. kode nemt kan brydes i et Excel ark - derfor vil jeg anbefale at dine venner kontakter deres revisor, for at få oplyst de nøjagtige krav til bogføringen.

Som udgangspunkt er det ikke noget problem at føre alle posteringer i et "åbent" Excel ark - hvis man benytter denne løsning vil der givet være et krav omkring en kassebog til at sikre mod "uautoriseret" sletning/retning af posteringer. Men så er idéen med at føre regnskabet i Excel ligesom gået fløjten!

Hvilken type regnskab er det dine venner skal føre - er det en virksomhed, eller er der tale om noget foreningsarbejde?

Hvis der er tale om foreningsregnskab, kan jeg varmt anbefale et kig på flg. gratis regnskabsprogram - http://www.vigforeningsprogram.dk/e107/news.php

Er der tale om en virksomhed, må dine venners revisor kunne give et godt bud på mindste krav til deres bogføringer, samt evt. foreslå et billigt regnskabsprogram.

Sig til hvis du har brug for mere assistance.

Mvh.
Be_Nice
"Hver for sig kan vi alle en smule - men sammen kan vi det hele :o)"
Avatar billede word-hajen Nybegynder
03. september 2007 - 19:30 #3
Avatar billede besida Nybegynder
03. september 2007 - 21:57 #4
Tak for de hurtige svar.

Jeg arbejder selv i et revisionsfirma, og er igang med udd. mig til revisor.

Det eneste jeg umiddelbart mangler, er at kunne låse de felter, efter de har indtastet bilagene... jeg har siddet og leget med acces, og det er ikke særlig brugervenligt efter min mening:)

Det samme med SummaSummarum:) Det hænger ikke helt sammen efter min mening:)
Fordelen er med excel, at de kan køre det hele ud fra samme mappe, eller program, dertil hørende årsrapport, budget mv. efter bogføringsloven, samt årsregnskabsloven.

Modellen er egentlig lavet, det eneste jeg mangler er at kunne låse alle felterne i de forskellige ark..

Eksempel: Jeg har låst alle arkene med adgangskode, og self. låst alle celler som ikke må benyttes. når de så har indtastet bilag for januar, trykker man på en knap, og cellerne bliver låst, sammen med resten af cellerne...

Hvorn skal man gøre, og kan man hente de scripts til makroerne nogle steder?
Avatar billede besida Nybegynder
03. september 2007 - 21:59 #5
Til det med at koden kan brydes, er det jo det samme med nogle bogføringsprogrammer.. Sålænge de overholder loven, og arket i sig selv er "sikkert" nok. vil man stadig kunne overholde bogføringsloven.
Avatar billede word-hajen Nybegynder
03. september 2007 - 22:24 #6
Du skal selvfølgelig gøre det, som du mener er bedst, men at SummaSummarum ikke hænger sammen, forstår jeg ikke. Jeg kender op til flere begejstrede brugere, herunder en udd. revisor.
Avatar billede besida Nybegynder
04. september 2007 - 11:01 #7
Ok... jeg ved bar at når eksempelvis laver årsregnskaber, hvor folk selv har bogført i SummaSummarum, så er der stort set altid problemer med at få de korrekte oplysninger ud mv. Men altså.. Man ville bar kunne undlade nogle processer, ved at køre det hele i excel, såsom at skulle hente data først.

Men er det muligt at kunne låse modellen efterfølgende?? Det er egentlig bar det svar jeg er ude efter, og så evt. en løsning:)
Avatar billede jlemming Nybegynder
04. september 2007 - 13:57 #8
Jeg er ikke helt klar om det er nogen bestemte felter, eller de de spredt rundt. men her er et stykke kode som låser et bestemt område på alle ark

Private Sub CommandButtonprotect_Click()
    Dim Skema As Worksheet
   
    For Each Skema In Worksheets
      Skema.Activate
      Skema.Range("F8:k10").Select
      Selection.Locked = True
      Skema.Protect "kode"
    Next Skema
    MsgBox ("Alle beskyttet celler er nu låst på alle ark")
End Sub
Avatar billede jlemming Nybegynder
04. september 2007 - 14:06 #9
dette stykke kode virker også 2. gang :-)

Private Sub CommandButtonprotect_Click()
    Dim Skema As Worksheet
   
    For Each Skema In Worksheets
      Skema.Activate
      Skema.Unprotect "kode"
      Skema.Range("F8:k10").Select
      Selection.Locked = True
      Skema.Protect "kode"
    Next Skema
    MsgBox ("Alle beskyttet celler er nu låst på alle ark")
End Sub
Avatar billede jlemming Nybegynder
04. september 2007 - 14:37 #10
Denne her låser udfyldte celler i et område

Private Sub CommandButtonprotect_Click()
    Dim Skema As Worksheet
   
    ActiveSheet.Unprotect "kode"
    ActiveSheet.Range("F8:k10").Select
    For Each c In Selection
      If c <> "" Then
        c.Locked = True
      End If
    Next
    ActiveSheet.Protect "kode"
    MsgBox ("Alle udfyldte celler i området F8:K10 er nu låst")
End Sub
Avatar billede besida Nybegynder
04. september 2007 - 15:57 #11
jlemming: tak, det var lige sån noget jeg ledte efter.. men det kan også godt lade sig gøre, selvom arket er låst i forvejen??
Avatar billede jlemming Nybegynder
04. september 2007 - 17:13 #12
Ja, det skal bare være låst med den samme kode.
Hvis du skal bruge det på flere forskellige ark, er det bedst med en makro, istedet for knapper. en knap vil dog være mere synlig.
Avatar billede jlemming Nybegynder
05. september 2007 - 07:45 #13
Du kan også oprette en knap på hver side, som kalde den samme makro, som er det nemmere at rette i

Private Sub CommandButton1_Click()
  makronavn
End Sub
Avatar billede jlemming Nybegynder
05. september 2007 - 07:51 #14
Denne kode låser alle ark op, her kan man bruge en anden kode hvis man ønsker dette


Private Sub CommandButtonUnprotect_Click()
Dim Skema As Worksheet
       
If MsgBox("Du låser nu alle ark op !!!" _
& vbCrLf & "Er du sikker ?", vbYesNo + vbQuestion) = vbYes Then
  If InputBox("Indtast Pasword") = "ny kode" Then
      Application.ScreenUpdating = False
      For Each Skema In Worksheets
        Skema.Unprotect "kode"
        Skema.Activate
      Next Skema
      Application.ScreenUpdating = True
      MsgBox ("Du har nu adgang til at ændre i alle celler !" & _      vbCrLf & "Så PAS PÅ !!!")
  Else
      MsgBox ("Forkert pasword")
  End If
End If
End Sub
Avatar billede besida Nybegynder
05. september 2007 - 09:49 #15
Ok, det er sq lige det jeg mangler:)

Nu er jeg ikke helt nørd til makro'er desværre...

MEn hvis jeg vil bruge den der låser alle de udfyldte celler i området A10-C14, og så sætte en knap på hvert ark? så gør jeg? sender du et svar så du kan få de point der:)
Avatar billede jlemming Nybegynder
05. september 2007 - 11:18 #16
vælg tools, makro,makro, indtast makronavn, create, indsæt kode

i excel: vælg view, toolsbars,control toolbox skal være vinget til
Du  skulle nu gerne have en ny menu linie, der starter med med en linieal og en tegnetrekant, vælg knap (6.symbol hos mig), tegn knap,højre klik, vælg code, skriv makro navn.
i excel: høje klip på knappen, properties, i caption kan du ændre teksten,
deaktivere du linieal/tegnetrekant.

Så skulle det køre

kode for knap:
Private Sub CommandButton1_Click()
  test
End Sub

kode for makro:
Sub test()
     
    ActiveSheet.Unprotect "kode"
    ActiveSheet.Range("A10:C14").Select
    For Each c In Selection
      If c <> "" Then
        c.Locked = True
      End If
    Next
    ActiveSheet.Protect "kode"
    MsgBox ("Alle udfyldte celler i området A10:C14 er nu låst")

End Sub

hvis du kun har et ark, dropper du makro og indsætter koden under knappen

prøv det :-)
Avatar billede besida Nybegynder
05. september 2007 - 13:49 #17
Tusinde tak for hjælpen:) jeg forsøger mig når jeg kommer hjem fra arbejde:)
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