Come Attivare una Shapes dal mio Thisworkbook (Open)

Anonimo
2021-04-05T15:32:39+00:00

Buon Giorno a tutti mi chiamo Maurizio
E il mio problema con il vba e questo.
Su di un foglio di excel con office 2007 ho inserito una Shapes ("Ovale 6")

Che al suo interno go inserito una procedura che funziona a meraviglia.

Ora il mio problema e questo: 

E possibile azionare questo tasto (Shapes) quando apro la mia applicazione 
Mi spiego meglio :
Se io avessi creato una Routine chiamata " Sub pippo() "  End Sub

Chiaramente avrei potuto scrivere all'interno del modulo "Thisworkbook.Open "

( Call Pippo ) e il discorso finiva qui.
Ma visto ché la procedura e stata scritta all'interno di un pulsante (Shapes) 
Come faccio per azionare il tutto .
Io di mio ho provato a scrivere (Foglio1.Shapes("Ovale 6") . True )

Ma continua a darmi errore 

Pertanto come posso ovviare a questo problema.
Grazie per tutto l'aiuto che vorrete darmi in merito Saluti e Buona pasquetta a Tutti

Microsoft 365 e Office | Excel | Per la casa | Windows

Domanda bloccata. Questa domanda è stata eseguita dalla community del supporto tecnico Microsoft. È possibile votare se è utile, ma non è possibile aggiungere commenti o risposte o seguire la domanda.

0 commenti Nessun commento

Risposta accettata dall'autore della domanda

Anonimo
2021-04-05T16:47:19+00:00

Buon Giorno a tutti mi chiamo Maurizio
E il mio problema con il vba e questo.
Su di un foglio di excel con office 2007 ho inserito una Shapes ("Ovale 6")

Che al suo interno go inserito una procedura che funziona a meraviglia.

Ora il mio problema e questo: 

E possibile azionare questo tasto (Shapes) quando apro la mia applicazione 
Mi spiego meglio :
Se io avessi creato una Routine chiamata " Sub pippo() "  End Sub

Chiaramente avrei potuto scrivere all'interno del modulo "Thisworkbook.Open "

( Call Pippo ) e il discorso finiva qui.
Ma visto ché la procedura e stata scritta all'interno di un pulsante (Shapes) 
Come faccio per azionare il tutto .
Io di mio ho provato a scrivere (Foglio1.Shapes("Ovale 6") . True )

Ma continua a darmi errore 

Pertanto come posso ovviare a questo problema.

Ciao Maurizio,

Non capisco perché non puoi chiamare direttamente la routine assegnata alla forma ma, dato il nome della forma, prova qualcosa del genere:

'========>>

Option Explicit

'-------->>

Private Sub Workbook_Open()

    Dim SH As Worksheet

    Dim oShape As Shape

    Const sFoglio As String = "Foglio1"

    Const sShape As String = "Ovale 6"

    Set SH = Me.Sheets(sFoglio)

    Set oShape = SH.Shapes(sShape)

    Application.Run oShape.OnAction

End Sub

'<<========

Potresti scaricare il mio file di prova Maurizio20210405.xlsm

===

Regards,

Norman

Immagine

La risposta è stata utile?

1 persona ha trovato utile questa risposta.
0 commenti Nessun commento

1 risposta aggiuntiva

Ordina per: Più utili
  1. Anonimo
    2021-04-06T14:43:43+00:00

    Ciao Norman David Jones hai anche ragione tu , nel sostenere che avrei ; Come poi ho fatto !

    Che potevo creare una Routine Separata dal Tasto Shapes

    Però vedi : A torto o Ragione che sia perché voler imparare a programmare, se poi tutti ti offrono cose ovvie ?

    Io dove posso , anche grazie al vostro aiuto ; Voglio imparare a mettere in pratica ciò che non so; Solo cosi si diventa bravi

    No ? 
    Grazie comunque del tuo supporto Pratico e tecnico sei un amico.
    Saluti sinceri da A.Maurizio

    La risposta è stata utile?

    0 commenti Nessun commento