Avatar billede moba Nybegynder
29. august 2004 - 13:55 Der er 8 kommentarer og
2 løsninger

vedr formularer

Hejsa
Jeg har et regneark som i udgangspunktet styres af en formular "hovedmenu". Jeg har to små problmer med denne struktur, 1. Det skal være muligt at gå til og fra hovedmenuen uden af lukke den. Dette skal gøres på en let og enkel måde. Det der sker nu er at jeg har en knap på alle ark som kalde hovedmenuen (hovedmenu.show), men denne metode virker lidt knudret og knapperne kommer men hvis man kopierer arket og evt sætter det ind i word (ikke acceptabelt). 2. Jeg skal på hovedmenuformularen have en knap som genstarter formularen, dog uden at lukke regnearket ned!

Håber på nogle gode bud

Mvh

Morten
Avatar billede bak Forsker
29. august 2004 - 14:09 #1
1. hvis du har excel 2000 eller højere skal du i formularerens properties sætte ShowModal = False.  Dettte gør at formulareren ikke behøver lukkes for at taste i regnearket.
Avatar billede moba Nybegynder
29. august 2004 - 14:16 #2
hmm kender godt til modal, men det løser ikke rigtig problemet, men skaber i stedet nogle flere, da brugeren nu redigere i det underliggende ark hvilket kan have ret grumme konsekvenser. Hvad med at ligge en knap i en værktøjslinie som kan vise hovedmenuen???
Avatar billede kabbak Professor
29. august 2004 - 17:41 #3
Lav et modul og smid koden ind, den laver en knap ved siden af hjælp , som hedder Hovedmenu.

Public Sub Auto_open()
Set newItem = CommandBars("Worksheet menu bar").Controls.Add(Type:=msoControlPopup, Temporary:=True)
With newItem
    .BeginGroup = True
 
    .Caption = "Hovedmenu"
    .OnAction = "VisHovedmenu"
End With
End Sub

Public Sub Auto_close()
CommandBars("Worksheet menu bar").Reset
End Sub


Public Sub VisHovedmenu()
'Navnet på din userform
UserForm1.Show
End Sub
Avatar billede bak Forsker
29. august 2004 - 20:53 #4
alternativ kan du også oprette en menubar selv
Disse to ind i modulet ThisWorkBook

Private Sub Workbook_Open()
    Dim newitem As CommandBarControl
    On Error GoTo getout
    Application.CommandBars.Add(Name:="USR").Visible = True
    Set newitem = Application.CommandBars("USR").Controls. _
        Add(Type:=msoControlButton, ID:=2950, Before:=1)
    newitem.Caption = "Hovedmenu"
    newitem.OnAction = "VisHovedmenu"
getout:
End Sub

Private Sub Workbook_BeforeClose(Cancel As Boolean)
    On Error Resume Next
    Application.CommandBars("USR").Delete
End Sub


og dette i et standard modul
Avatar billede bak Forsker
29. august 2004 - 20:53 #5
Public Sub VisHovedmenu()
'Navnet på din userform
UserForm1.Show
End Sub
Avatar billede moba Nybegynder
30. august 2004 - 16:55 #6
Tak for det, det var svar på det første punkt og fortjener self. også point. Jeg deler pointene hvis det er ok med jer begge! Det ville være helt i top om i gav et bud på den sidste del af spørgsmålet. Altså hvordan kan man via en knap på en formular "reset(e) eller load(e)" formularen på ny.
Tak for hjælpen
Morten
Sender i lige et svar
Avatar billede kabbak Professor
30. august 2004 - 19:36 #7
Unload UserForm1

Svarer til at lukke den på X,  altså total luk


UserForm1.hide

betyder skjul, intil jeg skal bruge dig igen, sidst intastede vætdier beholdes
Avatar billede moba Nybegynder
30. august 2004 - 22:28 #8
Ok tak for det, venter lige på svar fra bak.
Avatar billede bak Forsker
30. august 2004 - 22:33 #9
her er et svar..

Hvis du vil resette formen, så er det nemmest at lukke den og åbne den igen men ellers
Textbox1.value =""
osv.
Avatar billede moba Nybegynder
30. august 2004 - 22:36 #10
eneste problem er bare at du ikke kan lukke og åbne via formularen, man skal stå på underformular og så lukke og åbne hovedformularen...
Nå skidt pyt.
Tak for det anyway.
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