Condividi:        

vba excel: eliminare menu creato da barra

Vuoi potenziare i tuoi documenti Word? Non sai come si fa una macro in Excel? Devi creare una presentazione in PowerPoint?
Oppure sei passato a OpenOffice e non sei sicuro di come lavorare al meglio?

Moderatori: Anthony47, Flash30005

vba excel: eliminare menu creato da barra

Postdi karug64 » 12/11/17 15:52

Salve a tutti.

Volendo aggiungere un menu personalizzato alla barra di excel 2007 ho trovato questo codice su internet e l'ho provato:

Codice: Seleziona tutto
Sub InserisciMenu()
    Dim ModiMenu As CommandBar
    Dim NuovoPopup As CommandBarPopup
   
    Set ModiMenu = CommandBars.Add(Name:="ModiMenu")
     
    With ModiMenu.Controls
        Set NuovoPopup = .Add(Type:=msoControlPopup)
        NuovoPopup.Caption = "&NuovoMenu"
        NuovoPopup.Controls.Add.Caption = "&Voce 1"
        NuovoPopup.Controls.Add.Caption = "&Voce 2"
    End With
   
    ModiMenu.Protection = msoBarNoCustomize
    ModiMenu.Position = msoBarTop
    ModiMenu.Visible = True

End Sub
   


ed ho ottenuto questo risultato :

Immagine.

Ora ho due problemi:
1) come elimino il nuovo menu "Componenti aggiuntivi" ?
2) si può cambiare il nome del nuovo menu aggiunto in uno a mio piacimento invece di "Componenti aggiuntivi" (per esempio "NEW") ?

Grazie
Office 2010
karug64
Utente Senior
 
Post: 746
Iscritto il: 20/11/11 21:22

Sponsor
 

Re: vba excel: eliminare menu creato da barra

Postdi Zer0Kelvin » 12/11/17 21:08

Ciao.
Stai facendo un pò di confusione, credo.
Componenti aggiuntivi non è il nome del menù, ma la scheda che contiene il menù personalizzato.
Per modificare il nome della scheda, devi fare click destro sulla Ribbon e cliccare "Personalizza barra multifunzione".
Dopo aver selezionato la voce che ti interessa clicca, in basso, su Rinomina.
Per eliminare il menù, invece, fai click destro sul menù "NuovoMenù" e clicca Elimina barra degli strumenti personalizzata".
[Win7,Office2010]
Condividere la conoscenza aumenta la ricchezza di tutti(Z0°K)
Dai ad un uomo un pesce e lo avrai sfamato per un giorno;insegnagli a pescare e lo avrai sfamato per sempre(Confucio)
Il sonno della ragione genera mostri(Francisco Goya)
Avatar utente
Zer0Kelvin
Utente Senior
 
Post: 388
Iscritto il: 08/04/12 11:23

Re: vba excel: eliminare menu creato da barra

Postdi karug64 » 12/11/17 23:26

Beh, si. In effetti un po' di confusione c'e' (è materia completamente sconosciuta per me ....)

Ma

Immagine

non trovo la scelta da te indicata: "Personalizza barra multifunzione"..... Cerco nel posto sbagliato ??

Grazie
Office 2010
karug64
Utente Senior
 
Post: 746
Iscritto il: 20/11/11 21:22

Re: vba excel: eliminare menu creato da barra

Postdi Zer0Kelvin » 12/11/17 23:49

Forse hai cliccato fuori dalla ribbon.
Comunque puoi anche fare così:
-accedere alla scheda File
-clicca su Opzioni
-sulla destra dovresti trovare la voce di cui sopra.


**EDIT**
Purtroppo, facendo una prova, ho visto che la scheda Componenti aggiuntivi, a differenza delle altre, non può essere rinominata.
[Win7,Office2010]
Condividere la conoscenza aumenta la ricchezza di tutti(Z0°K)
Dai ad un uomo un pesce e lo avrai sfamato per un giorno;insegnagli a pescare e lo avrai sfamato per sempre(Confucio)
Il sonno della ragione genera mostri(Francisco Goya)
Avatar utente
Zer0Kelvin
Utente Senior
 
Post: 388
Iscritto il: 08/04/12 11:23

Re: vba excel: eliminare menu creato da barra

Postdi karug64 » 12/11/17 23:59

Ok.
Ma come si fa a non visualizzarla ?
Office 2010
karug64
Utente Senior
 
Post: 746
Iscritto il: 20/11/11 21:22

Re: vba excel: eliminare menu creato da barra

Postdi Anthony47 » 13/11/17 00:12

La prossima volta, prima di personalizzare il tuo ribbon salva le impostazioni correnti, cosi' ti basta importare quella personalizzazione per ripristinare le cose
Per fare questo:
-tasto dx sul ribbon
-scegli Personalizza barra multifunzione
-l'ultima opzione in basso a dx dovrebbe essere Importa/Esporta; usala sia per "esportare" l'impostazione corrente che per eventualmente ripristinarla poi.

Sempre nella parte di destra hai le opzioni per
-Rinominare una scheda: selezioni la voce, premi Rinomina,
-nascondere una scheda: togli la "spunta" alla voce

Pero' la scheda "Componenti Aggiuntivi" e' riservata e quindi non puoi rinominarla. Se vuoi creare una scheda e darle il nome che preferisci allora usa il comando Nuova Scheda (sempre "nella parte destra").

Comunque le mie conoscenze in merito sono modeste, in genere mi limito a inserire schede, gruppi e comandi usando l'interfaccia di personalizzazione della barra multifunzione.

Ciao
Avatar utente
Anthony47
Moderatore
 
Post: 19181
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: vba excel: eliminare menu creato da barra

Postdi karug64 » 13/11/17 00:36

Anthony47 ha scritto:La prossima volta, prima di personalizzare il tuo ribbon salva le impostazioni correnti, cosi' ti basta importare quella personalizzazione per ripristinare le cose


sicuramente !!!

Anthony47 ha scritto:Per fare questo:
-tasto dx sul ribbon
-scegli Personalizza barra multifunzione


Il problema è proprio questo. Come detto nel post precedente, questa opzione "Personalizza barra multifunzione" non ce l'ho (vedi immagine ....)
Se per "ribbon" si intende quello che ho evidenziato nell'immagine, ovviamente ....

Grazie
Office 2010
karug64
Utente Senior
 
Post: 746
Iscritto il: 20/11/11 21:22

Re: vba excel: eliminare menu creato da barra

Postdi Anthony47 » 13/11/17 01:32

Humm.... avrai sputtanato il menu contestuale...

Prova (come ha detto gia' Z0K) Menu /File /Opzioni /Personalizza barra multifunzione
Dovresti ora avere a disposizione il pannello per la personalizzazione; prova subito il comando "Reimposta", a destra verso il basso

Poi prova a vedere se con TastoDx l'opzione Personalizza barra multifunzione e' ripristinata oppure no.

Ciao
Avatar utente
Anthony47
Moderatore
 
Post: 19181
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: vba excel: eliminare menu creato da barra

Postdi karug64 » 13/11/17 10:41

Grazie. Ho un problema : su office 2007 non trovo il menu "file".....
Office 2010
karug64
Utente Senior
 
Post: 746
Iscritto il: 20/11/11 21:22

Re: vba excel: eliminare menu creato da barra

Postdi Anthony47 » 13/11/17 15:52

Oh mamma... In effetti l'avevi scrtto che avevi provato su XL 2007, ma speravo fosse un errore...

Io invece non ho Office2007, quindi non so se il menu si poteva personalizzare tramite comandi o solo tramite file xml; comunque le Opzioni sono accessibili tramite il "Tasto Office" (verso sx /top).

Non sono in grado di controllarne l'esito, ma copiando il codice da te pubblicato ho "combinato" questa macro:
Codice: Seleziona tutto
Sub MenuReset()
Dim I As Long
'
For I = 1 To CommandBars.Count
    If CommandBars(I).BuiltIn Then
'    If CommandBars(I).Visible Then Debug.Print CommandBars(I).NameLocal
        CommandBars(I).Reset
    Else
        Debug.Print CommandBars(I).NameLocal
        CommandBars(I).Delete
    End If
Next I
End Sub

Se ti sembra di non avere idea di cosa fare allora prova a eseguirla, ma non sono certo che fara' delle cose buone.
La teoria e' che dovrebbe reimpostare le CommandBars native e cancellare quelle personali; l'elenco di quelle cancellate dovrebbe poi trovarsi nella Finestra Immediata del vba.

Un'altra opzione dovrebbe essere fare la procedura di Ripristino di Office; fino a Office 2003 si trovava in Menu /?; da Office 2010 si trova nel Pannello di controllo; in Office 2007 (i miei appunti dicono che) si trova tra le Opzioni (tasto Office /Opzioni).

Ciao
Avatar utente
Anthony47
Moderatore
 
Post: 19181
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: vba excel: eliminare menu creato da barra

Postdi karug64 » 13/11/17 19:47

Ok. Anthony.
Ho provato la tua routine e il TAB "Componenti aggiuntivi" non c'è più.

Ha funzionato.

Capisco che, questo nuovo TAB posso ricrearlo ma non posso dargli un nome (sarà sempre "Componenti aggiuntivi"). Giusto ?

Grazie
Office 2010
karug64
Utente Senior
 
Post: 746
Iscritto il: 20/11/11 21:22

Re: vba excel: eliminare menu creato da barra

Postdi Anthony47 » 14/11/17 13:28

Secondo me quel codice e' relativo a Office 2003, quindi l'impatto sulle versioni successive e' imprevedibile.
Per quello che ho letto il Ribbon del 2007 puo' essere modificato (compreso l'aggiunta di nuove schede) solo tramite un file xml di configurazione (file che definiscono la struttura dei tab e del loro contenuto).
In Office 2010 e successive e' anche possibile modificarlo anche tramite il comando "Personalizza la barra multifunzione", e successiva Esportazione (e importazione) dei file xml di configurazione.

Il Tab Componenti Aggiuntivi e' riservato agli Add-in (ma puo' contenere gruppi e comandi personalizzati) e non puo' essere rinominato.

Ciao
Avatar utente
Anthony47
Moderatore
 
Post: 19181
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: vba excel: eliminare menu creato da barra

Postdi karug64 » 14/11/17 14:11

Ok.

Mi sono accorto di un altro problema:
la routine proposta ha cancellato il TAB "Componenti aggiuntivi", ma nel menù contestuale mi ritrovo ancora la voce del nuovo menu.

Immagine

Avrei la necessità di eliminarla, perchè ho provato a portare il file sul computer dove dovrà lavorare e mi ritrovo la voce (tra l'altro non abbinata ad alcun comando).

Potreste aiutarmi ad eliminarla ? Grazie
Office 2010
karug64
Utente Senior
 
Post: 746
Iscritto il: 20/11/11 21:22

Re: vba excel: eliminare menu creato da barra

Postdi Zer0Kelvin » 14/11/17 14:53

Ciao.
Prova con
Codice: Seleziona tutto
CommandBars("Ribbon").Reset


PS: in generale, io eviterei di modificare i menù di Excel, possono succedere brutte cose... 8)
[Win7,Office2010]
Condividere la conoscenza aumenta la ricchezza di tutti(Z0°K)
Dai ad un uomo un pesce e lo avrai sfamato per un giorno;insegnagli a pescare e lo avrai sfamato per sempre(Confucio)
Il sonno della ragione genera mostri(Francisco Goya)
Avatar utente
Zer0Kelvin
Utente Senior
 
Post: 388
Iscritto il: 08/04/12 11:23

Re: vba excel: eliminare menu creato da barra

Postdi Zer0Kelvin » 14/11/17 15:14

oppure
Codice: Seleziona tutto
CommandBars("ModiMenu").delete
[Win7,Office2010]
Condividere la conoscenza aumenta la ricchezza di tutti(Z0°K)
Dai ad un uomo un pesce e lo avrai sfamato per un giorno;insegnagli a pescare e lo avrai sfamato per sempre(Confucio)
Il sonno della ragione genera mostri(Francisco Goya)
Avatar utente
Zer0Kelvin
Utente Senior
 
Post: 388
Iscritto il: 08/04/12 11:23

Re: vba excel: eliminare menu creato da barra

Postdi karug64 » 14/11/17 21:26

Zer0Kelvin ha scritto:Ciao.
Prova con
Codice: Seleziona tutto
CommandBars("Ribbon").Reset


PS: in generale, io eviterei di modificare i menù di Excel, possono succedere brutte cose... 8)


Provato ma non va.

Si si, ho proprio capito che i menù di excel non si toccano ....
Office 2010
karug64
Utente Senior
 
Post: 746
Iscritto il: 20/11/11 21:22

Re: vba excel: eliminare menu creato da barra

Postdi karug64 » 14/11/17 21:27

Zer0Kelvin ha scritto:oppure
Codice: Seleziona tutto
CommandBars("ModiMenu").delete


Ok. Con questo codice cancello il menu dal ribbon.

I menù del tasto dx li ho cancellati così:

Codice: Seleziona tutto
Dim NewControl As CommandBarControl
    Application.CommandBars("Cell").Controls("Tua Voce").Delete


Grazie a tutti
Office 2010
karug64
Utente Senior
 
Post: 746
Iscritto il: 20/11/11 21:22


Torna a Applicazioni Office Windows


Topic correlati a "vba excel: eliminare menu creato da barra":


Chi c’è in linea

Visitano il forum: Nessuno e 33 ospiti