|
||||
Disse websidene oppdateres ikke lengre og er kun tilgjengelig for historikken sin skyld.Klikk her for å gå til den oppdaterte informasjonen. Egendefinerte menyer i Excel5/95Dersom du ønsker det kan du lage din egendefinerte meny ved hjelp av makroer. Det er også mulig å benytte Menyredigering i Excel5/Excel95, men denne muligheten bortfaller i Excel97. Så da kan det kanskje være like greit å lære seg den metoden som virker på alle versjonene? Eksempelet nedenfor viser hvordan du oppretter og sletter egendefinerte menyer i Excel5/95. Metoden kan også benyttes i Excel97, men dersom regnearket bare skal benyttes i Excel97 eller nyere bør du ta en titt på Excel97-eksempelet i stedet. Const MinMenyNavn As String = "&TestMeny" Sub OpprettMenyer() ' oppretter egendefinerte menyer på flere menylinjer ' kan eventuelt utføres automatisk fra en Auto_Open-prosedyre LagMenyen 3, MinMenyNavn ' oppretter meny på menylinjen for ingen åpne dokumenter LagMenyen 7, MinMenyNavn ' oppretter meny på menylinjen for regneark End Sub Sub FjernAlleMenyene() ' fjerner den egendefinerte menyen MinMenyNavn fra de valgte menylinjene ' kan eventuelt utføres automatisk fra en Auto_Close-makro FjernMenyen 3, MinMenyNavn ' menylinjen for ingen åpne dokumenter FjernMenyen 7, MinMenyNavn ' menylinjen for regneark End Sub Sub LagMenyen(mLinje As Variant, mNavn As String) ' oppretter den egendefinerte menyen mNavn på menylinjen mLinje Dim mm As Menu, i As Integer FjernMenyen mLinje, mNavn ' fjerner menyen dersom den finnes fra før Set mm = Application.MenuBars(mLinje).Menus.Add(mNavn) ' oppretter menyen mNavn på menylinjen mLinje With mm.MenuItems .Add "&Menyvalg 1", "Eksempel1" .Add "Meny&valg 2", "Eksempel2" .Add "Menyvalg &3", "Eksempel3" .Add "-" ' legger til en skillelinje i menyen .Add "Fjern menyen", "FjernAlleMenyene" End With Set mm = Nothing End Sub Sub FjernMenyen(mLinje As Variant, mNavn As String) ' fjerner alle forekomstene av menyen mNavn på menylinjen mLinje Dim ml As MenuBar, m As Menu, tNavn As String mNavn = RenTekst(mNavn, 2) ' fjerner eventuelle spesialtegn fra menynavnet, returnerer store bokstaver Set ml = Application.MenuBars(mLinje) For Each m In ml.Menus tNavn = RenTekst(m.Caption, 2) If mNavn = tNavn Then m.Delete Next m Set ml = Nothing End Sub Function RenTekst(tString As String, tAlt As Integer) As String ' fjerner spesialtegn fra en menytekst og returnerer store eller småbokstaver ' tAlt=0:opprinnelig format ' tAlt=1:små bokstaver ' tAlt=2:STORE BOKSTAVER ' tAlt=3:Stor Forbokstav Dim tmpString As String, i As Integer, t As Boolean RenTekst = "" For i = 1 To Len(tString) t = True If Mid(tString, i, 1) = "&" Then t = False If t Then RenTekst = RenTekst & Mid(tString, i, 1) Next i Select Case tAlt Case 1: RenTekst = LCase(RenTekst) Case 2: RenTekst = UCase(RenTekst) Case 3: RenTekst = Application.Proper(RenTekst) End Select End Function
Dokumentet er sist oppdatert 2000-02-05 22:10:37
|
||||
|