Visualizzazione dei risultati da 1 a 7 su 7
  1. #1
    Utente di HTML.it
    Registrato dal
    Mar 2007
    Messaggi
    22

    [VBA] assegnazione evento a pulsanti creati dinamicamente

    In un foglio excel ho creato un form che al caricamento verifica i fogli presenti e crea un pulsante per ognuno di essi in base al seguente codice:

    codice:
    Private Sub UserForm_Initialize()
    
        Dim obj_fogli As Object
        Dim str_fogli As String
        Dim bottone As Control
        Dim int_btleft, int_bttop As Integer
        
        int_btleft = 10
        int_bttop = 75
        
        Set obj_fogli = ActiveWorkbook.Sheets
    
        With obj_fogli
        
            For i = 1 To (.Count - 1)
            
                Set bottone = Controls.Add("forms.CommandButton.1")
                
                With bottone
                    .Name = Worksheets(i).Name
                    .Width = 175
                    .Height = 20
                    .Caption = Worksheets(i).Name
                    .Top = int_bttop
                    .Left = int_btleft
                End With
                
                int_bttop = int_bttop + 25
                
                str_fogli = i
            
            Next
        
        End With
    
    End Sub
    Ora, quando si preme il pulsante, devo far eseguire una routine che mi apre un altro form ma non sono riuscito a farlo :muro: qualcuno ha suggerimenti?

  2. #2
    Con VB/VBA, a meno che tu non crei i pulsanti come copia di uno già esistente, non si può fare... Purtroppo è una tecnologia vecchia e non avevano pensato a questa possibilità!
    Cerco ombrello vecchio, nuovo, moderno o antidiluviano; purché protegga da una pioggia che vien giù come Dio la manda. Fate presto che ho l’acqua alla gola. (Noè)

    C# programming and other stuffs

  3. #3
    Utente di HTML.it
    Registrato dal
    Mar 2007
    Messaggi
    22
    L'avevo immaginato. Intanto ho creato un pulsante per ogni foglio e vado avanti così. Per il prossimo progetto passerò a c++ o comunque qualcosa di migliore rispetto a vb

  4. #4
    Originariamente inviato da isaya
    L'avevo immaginato. Intanto ho creato un pulsante per ogni foglio e vado avanti così. Per il prossimo progetto passerò a c++ o comunque qualcosa di migliore rispetto a vb
    ... tu hai parlato di VBA/Excel, non di VB6 ! (con il quale si puo' fare quello che dici, con gli array di controlli, ad esempio, ma non solo...), come pensi di usare C++ da Excel ???
    IceCube_HT (VB6 fan Club)

  5. #5
    Utente di HTML.it
    Registrato dal
    Mar 2007
    Messaggi
    22
    per questo progetto ho usato vba/excel, per il prossimo abbandonerò l'accoppiata ed userò qualcosa di totalmente diverso.

  6. #6
    Originariamente inviato da icecube_HT
    ... tu hai parlato di VBA/Excel, non di VB6 ! (con il quale si puo' fare quello che dici, con gli array di controlli, ad esempio, ma non solo...), come pensi di usare C++ da Excel ???
    Con VB/VBA, a meno che tu non crei i pulsanti come copia di uno già esistente, non si può fare
    e io che avevo detto?

    Non si può fare comunque come intendeva lui...
    Cerco ombrello vecchio, nuovo, moderno o antidiluviano; purché protegga da una pioggia che vien giù come Dio la manda. Fate presto che ho l’acqua alla gola. (Noè)

    C# programming and other stuffs

  7. #7
    Originariamente inviato da isaya
    per questo progetto ho usato vba/excel, per il prossimo abbandonerò l'accoppiata ed userò qualcosa di totalmente diverso.
    Dipende, se devi per forza usare excel bisogna adeguarsi a quello che offre vba... altrimenti se hai bisogno semplicemente di fare quello che chiedi, il .net può sicuramente esserti più d'aiuto di c++, almeno in quanto a velocità di sviluppo

    Cerco ombrello vecchio, nuovo, moderno o antidiluviano; purché protegga da una pioggia che vien giù come Dio la manda. Fate presto che ho l’acqua alla gola. (Noè)

    C# programming and other stuffs

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 © 2025 vBulletin Solutions, Inc. All rights reserved.