Sviluppare funzionalita su Microsoft Office con VBA Problema di SetFocus e Exit nelle Textbox (ActiveX)

Login Registrati
Stai vedendo 7 articoli - dal 1 a 7 (di 7 totali)
  • Autore
    Articoli
  • #24367 Score: 0 | Risposta

    Don
    Partecipante

      Ciao a tutti,

      utilizzo il VBA di Excel 2007 (s.o. Windows 10), e non riesco a gestire il focus sugli oggetti (controlli ActiveX) che uso, in particolare le Textbox. Se scrivo istruzioni tipo "Textbox1.SetFocus" mi dà puntualmente errore (di run-time 438: proprietà o metodo non supportati dall'oggetto). L'istruzione "Setfocus" non appare nell'elenco che si apre in automatico mentre si digita "Textbox.", mentre ne compaiono molte altre. Inoltre, non compare, sempre per le Textbox, la scelta della routine Exit (ci sono Change, Dblclick, ecc, ma Exit no).

      Vi chiedo, con umiltà perché non sono certo un grande conoscitore del VBA, un aiuto per poter sistemare le cose. Forse sbaglio in qualcosa di basilare che mi sfugge, oppure serve di installare qualcosa in più che non so...?

      Tra l'altro, la cosa si presenta anche su un altro PC (sempre con Office 2007 e Windows 10), ma anche installando Office 2016 le cose non cambiano!

      Grazie a chiunque voglia aiutarmi!

      #24370 Score: 0 | Risposta

      alfrimpa
      Partecipante
        33 pts

        Allega file di esempio con il codice che ti dà errore.

        A me questo codice

        Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
        MsgBox "Ciao"
        End Sub

        funziona perfettamente.

        Come pure funziona questo

        Private Sub UserForm_Initialize()
        Me.TextBox2.SetFocus
        End Sub

        Alfredo

        #24383 Score: 0 | Risposta

        Don
        Partecipante

          Allego un file con l'esempio piu' banale del mondo: se la TextBox non contiene nulla, premendo il pulsante ho il msg "NO" da MessageBox, altrimenti ho "OK".
          Il mio quesito è: quando chiudo la MessageBox, vorrei poter avere il controllo sulla TextBox, ovvero vorrei essere nella situazione di poterci già scrivere senza dover posizionarmici con mouse o tab. Senza ulteriori istruzioni, infatti, il controllo non sta né su TB, né sul pulsante. Mettendo nel listato del pulsante l'istruzione, che dovrebbe funzionare, "TextBox1.SetFocus" ottengo errore 438 - proprietà o metodo non supportati, che potete verificare.

          Grazie

          Allegati:
          You must be logged in to view attached files.
          #24385 Score: 0 | Risposta

          albatros54
          Moderatore
            89 pts

            prova cosi

            Private Sub CommandButton1_Click()
            
                If TextBox1.Value <> "" Then
                    MsgBox ("OK")
                Else
                    MsgBox ("NO")
                End If
                TextBox1.Text = ""
                TextBox1.Activate
            
            End Sub
            

             

             


            Qual è il punto di avere gusti diversi, se non mostrare che i cervelli lavorano diversamente, che pensiamo diversamente? ( Alan Turing)
            Sempre il mare, uomo libero, amerai!
            ( Charles Baudelaire )
            #24388 Score: 0 | Risposta

            Don
            Partecipante

              Gentilissimo Albatros54, sembra che funzioni!!

              Chissà perché il SetFocus non vuol saperne...

              Saluti e grazie molte!!

              #24394 Score: 0 | Risposta

              Marius44
              Moderatore
                58 pts

                Ciao

                Come ti è stato detto in altro Forum (1), il controllo TextBox non ha la proprietà SetFocus.

                Puoi usare TexstBox.Activate

                 

                Ciao,

                Mario

                 

                (1) http://www.pc-facile.com/forum/viewtopic.php?f=26&t=111171

                #24396 Score: 0 | Risposta

                Don
                Partecipante

                  Grazie!!

                Login Registrati
                Stai vedendo 7 articoli - dal 1 a 7 (di 7 totali)
                Rispondi a: Problema di SetFocus e Exit nelle Textbox (ActiveX)
                Gli allegati sono permessi solo ad utenti REGISTRATI
                Le tue informazioni: