28. december 2009 - 23:21 Der er 8 kommentarer og
1 løsning

Fjerne blokkering af funktioner med macros, aabne paa en bestemt formuler.

For at skaffe mig lidt praktisk erfaring i Informatik er jeg begyndt som frivillig medarbejder en dag om ugen i en velfaerdsorganisation (jeg er pensionist.)  Der bruger de Access til hvad de kalder databaser men som stort set er en raekke enkeltstaaende flade regneark.  De har for eksempel en database over frivillige og sympatisanter og saa en saerskilt database over frivillige og en anden over sympatisanter og saagar en databaser over frivillige der har email og en over frivillige uden email.  Sidst jeg var der havde de opdaget , ved at kikke paa de etiketter jeg havde produceret til at sende julekort ud, at i deres database over besoegende paa centret var der mange der ikke laengere var aktive men hvor de godt ville beholde oplysningerne.  Jeg blev derfor bedt om at splitte databasen i en over aktive og en over passive - hvilket jeg naturligvis ikke gjorde, jeg lavede et ekstra felt med status (aktiv, passiv, afdoed) og rapporter over de forskellige kategorier.  (Jeg skyndte mig ogsaa i databasen over frivillige og sympatisanter at lave de noedvendige felter saa alle noedvendige kategorier kan traekkes ud af denne database som rapporter eller queries, og min hensigt er at overbevise lederen af centeret at vi kan slette (eller arkivere) de andre databaser.)

Problemet er at jeg saa at sige ingen erfaring har med Access og slet ikke med VBA. (Heldigvis har jeg en rimelig god almen viden over databaser/sql og programmering, saa der er lidt at bygge paa.) Jeg har naturligvis studeret tutorials (saasom http://www.functionx.com/access/ og http://www.functionx.com/vbaccess/index.htm) ligesom jeg har kikket paa relevante guides og spoergsmaal her paa Eksperten.  Men jeg forudser at der kommer en del spoergsmaal fra mig vedroerende Access og VBA i den kommende tid.  Jeg haaber paa jeres taalmodighed.

Lige nu har jeg to konkrete spoergsmaal.  Jeg er i gang med at dele databasen over besoegende op i tabeller (for eksempel er det vigtigt at holde rede paa hvem der bor paa samme addresse (familier, sammenboende,) og der er en mange-til-mange relation mellem besoegende og aktivitetsgrupper, altsammen noget man har proevet at presse ind i en enkel flad tabel) og med at lave en form for medarbejderne til at besigtige og opdatere databasen (i oejeblikket er alt printet ud, og rettelser og tilfoejelser skriver man paa papir indtil jeg kommer naeste gang og opdaterer.)  Spoergsmaal 1:  Access synes at vaere indrettet saaledes at funktioner der bruger macros og lignende er standard valgt fra og skal vaelges ind hver gang man aabner databasen.  Hvordan soerger jeg for at den version der loades paa centrets lokale network har disse funktioner permanent valgt til?  Spoergsmaal 2:  Kan jeg arrangere det saaledes at databasen automatisk aabner paa en bestemt form saa medarbejderne ikke skal til at soege?  Den form der skal aabne er formen Persoon i databasen (under udarbejdelse) der sidder paa http://christianjorgensen.be/Mensen.zip.  (Det er paa hollandsk, derfor hedder det persoon i stedet for person.)
Avatar billede mugs Novice
28. december 2009 - 23:52 #1
1. Sådan er Access ikke indrettet. Jeg har ikke hørt om det tidligere. I min version (2000) kan jeg ikke vælge en sådan ændring. Det betyder dog ingenlunde, at den ikke findes.

2. Lav en makro. Vælg Åbn Formular og i handlingsargumenter nederst skriver du Persoon. Tilbage til Handlinger øverst og på næste linie vælger du maksimer. Luk makroen og døb den autoexec.
Avatar billede mugs Novice
28. december 2009 - 23:55 #2
Jeg er helt ening i, at der ikke skal være separate db til hver type person. ALLE personer skal være i samme tabel, og så kan du med en gruppeboks vælge, hvilken status denne person skal have.

Problemet med makroer: Kan det skyldes en meget restriktiv sikkerhedspolitik fra centerets side?
29. december 2009 - 21:16 #3
Makroen:  Den virker oven i koebet.  (Det var saa samtidig min introduktion til makroer - jeg havde toevet med at give mig i kast med dem.)

Kommentarer:  Makroen du foreslaar goer to ting:  (1) Den starter databasen op med at vise den valgte formular, og (2) den maximerer formularen.  Jeg opdagede at (1) kan man ogsaa opnaa (i Access 2007) ved under Options -> Denne database (gaetter jeg paa at det hedder paa dansk) -> Vise formular (igen min fordanskning) i stedet for standardvalget "Ingen" saa at vaelge den oenskede formular. (2) virker paa alle formularer i databasen - naar maximer er valgt for en formular saa maksimeres de alle.

Blokkerer for makroer:  I Access 2007 faar du somme tider, naar du aabner en database, en bjaelke med (min danske oversaettelse) "Sikkerhedsadvarsel.  Noget af indholdet i databasen er sat ud af virkning."  Saa er der en knop for options der leder til et vindue med to radio-knapper med "Hjaelp mig med at beskytte mig mod ukendt indhold (anbefalet)" standard valgt men mulighed i stedet at vaelge "Saet dette indhold i virkning."

Jeg opdagede at denne advarsel, saa vidt jeg kan se, kommer paa databaser man har downloaded hvorimod den ikke forekommer paa databaser man har bygget lokalt.  Der er ingen advarsel paa den database jeg er i faerd med at bygge, men efter at jeg havde sat den til downloading og saa havde downloaded den selv for at se at det virkede er der advarsel paa den version jeg har downloaded.

Jeg kan godt forstaa advarslen paa en nylig downloaded database, men jeg ville da mene at naar man har accepteret den en gang saa skulle advarslen ikke blive ved med at komme hver gang man aabner databasen.

Har du kommentarer til dette (og helst en afhjaelpning saa jeg kan saette det ud af kraft?)

Jeg har aksepteret dit svar med hensyn til makroen (og forbered dig paa flere Access spoergsmaal fra min side hen ad vehen.)
Avatar billede mugs Novice
29. december 2009 - 21:25 #4
Tak for point.

Jeg har ikke selbv 2007 og derfor ingen erfaring med versionen. på min arbejdsplads er der også en sikkerhedsadvarsel mod at åbne databaser på bestemte drev. Det er simpelthen administratoren der er gået ind med denne advarsel.

Her hjemme kommer der af og til en advarsel. Så kan jeg i stifinderen finde db og højreklikke på den og i egenskaber fjerne blokeringen. Derefter er der ingen problemer.

Jeg ser frem til dine spørgsmål, mne som sagt har jeg ikke 2007.
Avatar billede mugs Novice
29. december 2009 - 21:27 #5
Når jeg ikke rådede dig til at benytte options for at åbne en formular, er det fordi denne mulighed ikke maksimerer en formular i 2000. Derfor benytter jeg altisd wen autoexec makro, som er den eneste makro jeg bruger.
30. december 2009 - 10:23 #6
Hvad angaar blokkeringen af kode der indeholder macros saa gjorde jeg endnu en interessant opdagelse.  Jeg havde allerede konstateret (mener jeg) at blokkeringen forekommer paa databaser der er downloadede, ikke databaser der er bygget lokalt.  De databaser de bruger paa det center hvor jeg arbejder som frivillig har blokkeringen.  Men igaar kopierede jeg databaserne til min usb stik og kopierede dem hjemme til min egen komputer og nu er blokkeringen der ikke mere.  Aabenbart behandlede sikkerhedssystemet en database paa e-driven som en lokalt udviklet database.  For at teste videre downloadede jeg en database som saa havde blokkeringer.  Jeg kopierede den til min stick og kopierede den tilbage i mappen og saa var blokkeringen forsvundet.

Altsaa, for de der doejer med Access 2007 databaser der blokkerer for kode med macros indtil man har valgt at tillade indholdet, proev at kopiere databasen til usb-stick og saa kopier tilbage til mappen og se om blokkeringen saa er forsvundet.
Avatar billede mugs Novice
30. december 2009 - 10:36 #7
Når det er så nemt at omgå blokeringen, hvad er den så værd?
30. december 2009 - 12:45 #8
Jeg synes det har vaerdi at advare mod filer med makros som kommer fra en extern og muligvis ukendt source.  Men det er ikke en absolut blokkering, man tillader brugeren, paa eget ansvar, at vaelge at bruge indholdet.  Naar saa en bruger har taget den beslutning kan jeg ikke se vaerdien i at tvinge brugeren til at beslutte igen hver gang han aabner filen.  (Hvis han downloader filen paany er det en anden sag.)  Tvaert imod vil jeg mene at saadanne overdrevne advarsler kan lede til at brugere per refleks overskriver sikkerhedsadvarsler.  Siden Access 2007 er indrettet som den er (eller synes at vaere, jeg har muligvis ikke det fulde billede) er jeg glad for at jeg har fundet en maner, efter en gang at have accepteret et indhold, saa at kunne slippe for flere advarsler.

Forstaar jeg dig ret i at du tvaert imod synes at brugeren skal vaelge makro indholdet paany hver gang han aabner databasen?

Der er muligvis et andet aspekt.  Jeg kommer i tanker om at der er et begrep "trusted locations."  Maaske er det Microsoft's tanke at man skal placere en downloaded database i en fil som man har erklaeret som trusted location og saa kommer advarslen ikke igen.  Det maa jeg proeve engang ved lejlighed.  Har du kommentarer til eller erfaring med trusted locations?
Avatar billede mugs Novice
30. december 2009 - 13:34 #9
"trusted locations" må være det der i Browseren kaldes "WEB-steder du har tillid til" kontra "Usikre WEB-steder".

Jeg mener, at der efterhånden er så mange sikkerhedsadvarsler eller "Er du sikker på at du vil...", at det fratager brugeren en del af betjeningen af maskinen. En ansvarlig bruger har ikke brug for, at maskinen overtager så meget. Men bevares - Der findes brugere, der absolut har brug for disse advarsler grundet uansvarlig færdes på nettet.

aovergaard har skrevet en udmærket artikel om emnet. Hvis alle rettede sig efter denne, var der ikke så mange spørgsmål om virus / malware.
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
Dyk ned i databasernes verden på et af vores praksisnære Access-kurser

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