Accedi per seguire   
Seguaci 0
Mettler

Aggiunta In Excel

6 messaggi in questa discussione

Salve a tutti

Ho creato un'aggiunta in excel ( praticamente una macro in una file salvato con estensione xla ). Questa piccola macro aggiunge un comando nel menu a discesa "inserisci" di Excel che poi avvia la funzione che ho creato.

Sul mio pc funziona tutto a meraviglia ma se installo la macro su un altro pc no.

Io ho windows 2000 ed Excel 2000. Sull'altro pc c'è XP con Excel 2000 .

La parte di codice che non funziona è questa . Serve per aggiungere il comando nel menù.

Dim righem As CommandBarButton

Set righem = Application.CommandBars("Insert").Controls.Add(Type:=msoControlButton, before:=3)

righem.Caption = "&Righe multiple"

righem.Style = msoButtonbutton

righem.OnAction = "Avvia"

Qualcuno può aiutarmi ? Grazie

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti

Application.CommandBars("Insert") è un sottomenù nella barra delle tabelle pivot.

Il normale menù "Inserisci" di excel, invece, è:

Application.CommandBars("Worksheet Menu Bar").Controls("Inserisci")

Mi sfugge come possa funzionare sul tuo pc...

bye

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti

Ciao Guldo e grazie di aver risposto.

Hai ragione infatti dopo il tuo messaggio ho controllato il menù delle tabelle pivot e alla voce formule era pieno di tasti di comando "Righe multiple" frutto di tutte le mie prove. Ecco dove andavano a finire !!

Però ci sono cose che ancora non tornano:

1. Sull'altro pc (stessa versione di excel) tutto funziona come previsto e cioè il tasto "Righe multiple" appare nel menù inserisci in terza posizione.

2. Se io avvio il registratore di macro e inserisco il comando desiderato manualmente nel menù inserisci in terza posizione la macro mi registra questa istruzione :

Application.CommandBars("Insert").Controls.Add Type:=msoControlButton, ID:= _

2950, Before:=3

e questo mi aveva ingannato.

Comunque nonostante la tua correzione non sono riuscito ancora a creare il codice corretto per far apparire il comando nella giusta posizione.

Ciao

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti
Ciao Guldo e grazie di aver risposto.

[CUT]

Però ci sono cose che ancora non tornano:

2. Se io avvio il registratore di macro e inserisco il comando desiderato manualmente nel menù inserisci in terza posizione la macro mi registra questa istruzione :

Application.CommandBars("Insert").Controls.Add Type:=msoControlButton, ID:= _

2950, Before:=3

e questo mi aveva ingannato.

Comunque nonostante la tua correzione non sono riuscito ancora a creare il codice corretto per far apparire il comando nella giusta posizione.

Scusa il ritardo.

Cmq basta sostituire:

Set righem = Application.CommandBars("Worksheet Menu Bar").Controls("Inserisci").Controls.Add(Type:=msoControlButton, before:=3)

Fregatene di quello che dice il registratore; prova così.

bye

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti

Benissimo Guldo l'istruzione è giusta e funziona . Ma qualcosa ancora non va: nonostante abbia inserito un istruzione per togliere il pulsante alla chiusura di Excel questo non avviene con il risultato che ad ogni apertura di Excel mi trovo un comando in più e il menù a discesa si allunga sempre più.

Per farti capire ti allego tutta la mia macro così ti rendi conto.

http://www.mytempdir.com/328345

Il funzionamento e lo scopo sono intuitivi.

Vorrei sottolineare che non è la prima volta che mi cimento con vba .

Il problema sta tutto nel fatto che ho 2 pc con la stessa versione di Excel ( 2000 SR1 ) e le macro funzionano in modo diverso . Infatti anche per questo problema vale lo stesso discorso del mio primo messaggio : sul mio pc portatile questa aggiunta funziona correttamente.

Ciao

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti

Strano... la macro mi sembra OK.

(a parte il carattere "&" che non hai inserito nella caption del pulsante quando fai l'eliminazione; ma funziona cmq)

Anche l'altro pc ha la versione italiana di Office? O quella inglese?

Non mi viene in mente nessun altro motivo per cui possa non funzionare...

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti

Crea un account o accedi per lasciare un commento

Devi essere un utente registrato per partecipare

Crea un account

Iscriviti per un nuovo account nella nostra community. È facile!


Registra un nuovo account

Accedi

Sei già registrato? Accedi qui.


Accedi Ora
Accedi per seguire   
Seguaci 0