Visualizzazione dei risultati da 1 a 3 su 3
  1. #1

    [VBA Excel 2007] Macro che assegna macro a oggetti shapes

    Ciao a tutti.
    Ho una macro che disegna alcuni oggetti su un foglio di lavoro e assegna loro una macro da eseguire al click. Riporto il codice per chiarezza.

    Questo è quello che si trova nella macro principale:
    codice:
    'Inserisci pulsanti di aggiunta riga
    ReDim pulsante(0 To valore - 1)
    For i = 0 To valore - 1
        Set pulsante(i) = AddShapeToRange(msoShapeMathPlus, "G" & CStr(4 + i))
    Next
    La funzione AddShapetoRange è fatta così:
    codice:
    Function AddShapeToRange(ShapeType As MsoAutoShapeType, sAddress As String) As Shape
    
    With ActiveSheet.Range(sAddress)
        Set AddShapeToRange = ActiveSheet.Shapes.AddShape(ShapeType, .Left, .Top, .Width, .Height)
            With AddShapeToRange
                .ShapeStyle = msoShapeStylePreset37
                .OnAction = "inserisci_riga(" & sAddress & ")"
                .Placement = xlMove
            End With
    End With
    End Function
    La sub inserisci_riga() è fatta così:
    codice:
    Sub inserisci_riga(posizione As String)
    Range(posizione).Select
    Selection.EntireRow.Insert , CopyOrigin:=xlFormatFromLeftOrAbove
    End Sub
    Gli oggetti vengono creati e le macro assegnate. Ma quando clicco su qualsiasi degli oggetti creati (e richiamo dunque la sub "inserisci_riga") excel dice:
    Impossibile eseguire la macro 'inserisci_riga(G4)'. E' possibile che tale macro non sia disponibile o che tutte le macro siano disattivate.

    Dove sta l'errore?

  2. #2
    scusate, credo di aver postato nella sezione sbagliata..

  3. #3
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,328

    Moderazione

    Spostato.


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2026 vBulletin Solutions, Inc. All rights reserved.