Come aggiungere uno ScreenTip ad un’immagine già associata ad una macro

Edoardo ha aggiunto una piccola immagine grafica a un foglio di lavoro e ha collegato una macro all’immagine. Quando si fa clic sull’immagine, la macro viene eseguita. Edoardo si chiede se sia possibile aggiungere un’etichetta o un commento all’immagine in modo che quando un utente posiziona il puntatore del mouse sull’immagine, l’etichetta/commento appaia e dica all’utente cosa fa la macro.

Inizialmente potresti pensare di poter aggiungere una descrizione comando all’immagine, ma ciò può essere fatto solo se le assegni un collegamento ipertestuale. Aggiungere il collegamento ipertestuale (e la descrizione comando) è abbastanza semplice, ma scoprirai che il collegamento ipertestuale ha la precedenza sulla macro, impedendone l’esecuzione.

Ciò significa che è necessario cercare altri modi per affrontare il problema. Sfortunatamente non esiste un modo semplice per creare questo tipo di descrizione comando, ma esistono un paio di modi per affrontare l’attività. Una cosa che puoi fare è aggiungere un pulsante di comando al foglio di lavoro e quindi assegnare l’immagine al pulsante. L’intera immagine funge quindi da pulsante. Quando si fa clic sul pulsante, viene eseguito il gestore eventi CommandButton1_Click (presupponendo che si utilizzi il nome predefinito per il pulsante di comando).

Successivamente è necessario creare una casella di testo che si avvicini all’aspetto di una “descrizione comando”. In realtà la casella di testo ti dà più libertà di quella che hai con una normale descrizione comando, perché può essere formattata nel modo che desideri e può contenere qualsiasi testo esplicativo che desideri. Tutto quello che devi fare è assicurarti che alla casella di testo venga assegnato un nome univoco, ad esempio “MyShape” (puoi assegnare un nome alla casella di testo selezionandola e quindi modificando il nome nella Casella del nome nell’angolo in alto a sinistra dell’area del foglio di lavoro).

Con il pulsante di comando e la casella di testo in posizione, fai clic con il pulsante destro del mouse sul pulsante di comando e scegli di visualizzare la finestra del codice per il pulsante di comando. Quindi, aggiungi il seguente codice alla finestra del codice:

 

Private Sub CommandButton1_Click()
    'Chiama qui la tua macro normale
    Hide_Shape
End Sub
Private Sub CommandButton1_MouseMove( _
    ByVal Button As Integer, ByVal Shift As Integer, _
    ByVal X As Single, ByVal Y As Single)
    Display_and_Hide_Shape
End Sub

 

 

È il gestore dell’evento Click che dovrai modificare per chiamare il normale codice macro. Il codice MouseMove viene eseguito quando il mouse viene spostato sul pulsante di comando. In questo caso, il codice visualizza la casella di testo creata.

Successivamente, inserisci le seguenti macro in un modulo macro standard. Queste due macro mostrano e nascondono la forma della casella di testo creata. Si noti che la prima macro utilizza il metodo OnTime per nascondere automaticamente la forma due secondi dopo la prima visualizzazione.

 

Sub Display_and_Hide_Shape()
    ActiveSheet.Shapes("MyShape").Visible = True
'   regola il tempo di visualizzazione
    Application.OnTime Now + TimeValue("00:00:02"), "Hide_Shape"
End Sub
Sub Hide_Shape()
    ActiveSheet.Shapes("MyShape").Visible = False
End Sub

 

 

Con tutte le macro attive, basta spostare il puntatore del mouse sull’immagine del pulsante di comando. La casella di testo dovrebbe scomparire due secondi dopo, per poi riapparire quando si sposta nuovamente il mouse sull’immagine.

Un altro approccio consiste nell’incorporare l’immagine in un oggetto grafico, denominare l’immagine utilizzando il testo che si desidera venga visualizzato nella descrizione comando e quindi assegnare la macro all’oggetto grafico. Questo può sembrare un po’ confuso, ma è relativamente facile da fare seguendo questi passaggi generali:

  1. Crea un oggetto grafico vuoto. Puoi farlo semplicemente selezionando una cella vuota, scegliendo di inserire un grafico e facendo immediatamente clic sul pulsante Fine. Il grafico non conterrà nulla, motivo per cui è un “oggetto grafico vuoto”.
  2. Successivamente aggiungi l’immagine all’oggetto del grafico. Basta copiare l’immagine negli Appunti, quindi selezionare l’oggetto grafico vuoto (lo hai creato nel passaggio 1) e incollare il contenuto degli Appunti.
  3. Regola sia le dimensioni dell’oggetto grafico che dell’immagine all’interno dell’oggetto grafico in modo che rappresentino le tue esigenze.
  4. Seleziona l’immagine all’interno dell’oggetto grafico, quindi assegna un nome all’immagine modificando ciò che si trova nella Casella del nome nell’angolo in alto a sinistra dell’area del foglio di lavoro. Questo nome dovrebbe essere il testo che desideri venga visualizzato come descrizione comando.
  5. Ora assegna la tua macro all’oggetto del grafico (non all’immagine all’interno dell’oggetto del grafico) facendo clic con il pulsante destro del mouse sull’oggetto del grafico e scegliendo Assegna macro.

 

Questo è tutto. Ora, quando si sposta il puntatore del mouse sull’immagine, il nome dell’immagine appare come descrizione comando e se si fa clic viene eseguita la macro assegnata all’oggetto grafico.

 

 

Tags: , , , , , , , ,

Ti è stato utile?