Avatar billede bejstrup Juniormester
20. april 2005 - 08:27 Der er 11 kommentarer og
1 løsning

Kan man åbne Excel som userform

Hej E
Jeg vil gerne have, at når man åbner sit Excel regneark, så er det kun userform1, der starter. Selve Excel, skal altså være skjult, så brugeren ikke kan se at det evt. kører i baggrunden.

Som et lille tillægsspørgsmål, vil jeg gerne vide hvordan man sætter en kode på så brugeren ikke kan rette i koden til userformen :-)
Avatar billede jkrons Professor
20. april 2005 - 08:38 #1
Ja og nej. Du kan lade din Workbook_open hændelse åbne userformen, og hvias du så har gjort den stor nok, dækker den over regnearket. Men hvis brugeren vælger at åbne uden makroer vises userformen ikke.

Man kan beskytte sine moduler med kode - men man skal ikke vide så meget om Excel og programmering for at fjerne koden, hvis man ønsker det.
Avatar billede bejstrup Juniormester
20. april 2005 - 08:51 #2
Jeg havde håbet på noget lignende:

Private Sub UserForm_Initialize()
    UpdateChart   
    Dim wb As Workbook
    Application.ScreenUpdating = False
Set wb = Workbooks.Open
wb.Close False
  Set wb = Nothing
  Application.ScreenUpdating = True
End Sub
Avatar billede jkrons Professor
20. april 2005 - 08:54 #3
Det kan du sikkert også, men du skal stadig have noget kode til at åbne Userformen, og duc skal stadig have brugeren til at åbne MED nmakroer. Og det er der udfordringen ligger.
Avatar billede bejstrup Juniormester
20. april 2005 - 08:58 #4
Hvis jeg sikre mig at brugeren har lav sikkerhed på makroer, så bliver han ikke spurgt, om han vil åbne med makroer, så det kan jeg godt klare. Når så regnearket er åbnet med makroer, så skal jeg "bare" have regnearket til at køre i baggrunden. Dvs. jeg vl ikke have at man kan se regnearket hvis man flytter rundt på brugerfladen.
Avatar billede jkrons Professor
20. april 2005 - 09:06 #5
Det tror jeg ikke at du kan undgå. Du kan skjule arkene i den åbne mappe, men der skal ALTID være mindst et synligt ark i en mappe. Du kan gøre det, at du lægger et dummy ark forrest og så skjuler de øvrige. Men dette ark vil kunne ses, hvis brugeren flytter userformen.
Avatar billede bejstrup Juniormester
20. april 2005 - 09:09 #6
Ok, så må jeg jo se at leve med det, desværre. Men det kan være du lige kan fortælle mig hvordan og hvor jeg skal skrive, at Excel skal starte med Userform1 åben. Hvis du sender som svar, så får point :-)
Avatar billede jkrons Professor
20. april 2005 - 09:16 #7
Hvis du skal have Excel til at starte meden bestemt userform åben altid, er du ndt til at lave en standardskabelon. Problemet er, at I Excel, skal kode, i modsætning til fx Word altid ligge i en Workbook.

Men lav en projektmappe. I dene lægger du såvel Userform som kode. Koden til at åbne skal ligge i ThisWorkbook modulet på hændelsen Workbook_Open. Gem mappen som en skabelon. Den SKAL hedde Mappe.xlt, og den SKSL gemmes i XLSTART biblioteket. Så vises den pågældende userform hver gang.

Er det kun i et bestemt regneark, det skal virke, skal koden lægges i dette regnearks ThisWrokbook modul på samem hændelse. I så fald behøver du ingen skabelon.
Avatar billede bejstrup Juniormester
20. april 2005 - 09:24 #8
Jeg har skrevet:
Sub VisForm()
UserForm1.Show
End Sub

i ThisWorkbook, men det får ikke arket til at starte med makroen :-(
Avatar billede bejstrup Juniormester
20. april 2005 - 09:26 #9
Det må være noget med Open.....
Avatar billede jkrons Professor
20. april 2005 - 09:34 #10
Du SKAL lægge den på Workbook open hændelsen.
Det vil sige koden skal se ud som følger:

Sub Workbook_Open()
  UserForm1.Show
End Sub
Avatar billede bejstrup Juniormester
20. april 2005 - 09:36 #11
SUPER!!
Avatar billede jkrons Professor
20. april 2005 - 09:40 #12
Velbekomme :-)
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