Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it L'avatar di leomac
    Registrato dal
    Mar 2009
    Messaggi
    188

    [VB6/EXCEL '07] Link Textbox-Range

    Salve a tutti,
    All'interno di un form inserisco il seguente codice:
    codice:
    Range ("F13").Value = TextBox9.text
    dovrei fare in modo che se sia presente un valore in rage di excel questo compaia anche in nella textbx del form. Come mai ciò non avviene spontanemente anche se è presente un uguaglianza tra i due nel suddetto codice??
    Inoltre è possibile inserire dei parametri nella texbox ad esempio quantità di caratteri, solo numeri e/o caratteri e cosi via.
    Grazie a tutti


  2. #2
    Utente di HTML.it L'avatar di gibra
    Registrato dal
    Apr 2008
    residenza
    Italy
    Messaggi
    4,244

    Re: [VB6/EXCEL '07] Link Textbox-Range

    Originariamente inviato da leomac
    Salve a tutti,
    All'interno di un form inserisco il seguente codice:
    codice:
    Range ("F13").Value = TextBox9.text
    dovrei fare in modo che se sia presente un valore in rage di excel questo compaia anche in nella textbx del form. Come mai ciò non avviene spontanemente anche se è presente un uguaglianza tra i due nel suddetto codice??
    Perchè dovrebbe farlo? Dove hai letto che dovrebbe essere così?.

    Originariamente inviato da leomac
    Inoltre è possibile inserire dei parametri nella texbox ad esempio quantità di caratteri, solo numeri e/o caratteri e cosi via.
    Cioè ?


  3. #3
    Utente di HTML.it L'avatar di leomac
    Registrato dal
    Mar 2009
    Messaggi
    188

    Re: Re: [VB6/EXCEL '07] Link Textbox-Range

    Originariamente inviato da leomac
    Salve a tutti,
    All'interno di un form inserisco il seguente codice:
    codice:Range ("F13").Value = TextBox9.text

    dovrei fare in modo che se sia presente un valore in rage di excel questo compaia anche in nella textbx del form. Come mai ciò non avviene spontanemente anche se è presente un uguaglianza tra i due nel suddetto codice??
    Originariamente inviato da gibra
    Perchè dovrebbe farlo? Dove hai letto che dovrebbe essere così?.
    il simbolo "=" identifica appunto un uguaglianza tra due numeri o funzioni in generale, se inserisco
    codice:
    Range ("F13").Value = TextBox9.text
    in teroria sarà vero anche il contrario
    codice:
    TextBox9.text = Range ("F13").Value
    in pratica però mi rendo conto che non lo è anche perchè facendo partire la macro non compare nessun testo nella textbox.
    Scusate ma ancora non riesco del tutto a "sintonizzarmi" sul linguaggio.

    Originariamente inviato da leomac
    Inoltre è possibile inserire dei parametri nella texbox ad esempio quantità di caratteri, solo numeri e/o caratteri e cosi via.
    Originariamente inviato da gibra
    Cioè ?
    Nel senso se è possibile impartire alla textbox l'inserimento di soli numeri o un numero di caratteri fissi. Esmpio: impartisco alla textbox numero caratteri = 8 quindi se scrivo SETTEMBRE mi farà solo scrivere SETTEMBR.


  4. #4
    Utente di HTML.it L'avatar di gibra
    Registrato dal
    Apr 2008
    residenza
    Italy
    Messaggi
    4,244

    Re: Re: Re: [VB6/EXCEL '07] Link Textbox-Range

    Originariamente inviato da leomac

    il simbolo "=" identifica appunto un uguaglianza tra due numeri o funzioni in generale, se inserisco
    codice:
    Range ("F13").Value = TextBox9.text
    in teroria sarà vero anche il contrario
    codice:
    TextBox9.text = Range ("F13").Value
    in pratica però mi rendo conto che non lo è anche perchè facendo partire la macro non compare nessun testo nella textbox.
    Scusate ma ancora non riesco del tutto a "sintonizzarmi" sul linguaggio.
    Ecco, forse è quello che ti manca.
    Quello che dici non avrebbe alcun senso né logico né pratico.
    L'assegnazione è e sarà sempre manuale, cioè avverrà se il codice lo richiede.
    Dal momento in cui esegui l'assegnazione:
    codice:
    Range ("F13").Value = TextBox9.text
    entrambi gli oggetti conterranno lo stesso valore.
    Ma se successivamente cambi il valore in uno od in entrambi gli oggetti:
    codice:
    Range ("F13").Value = 5
    TextBox9.text=23
    Ogni oggetto conterrà il proprio (nuovo) valore.

    Cosa completamente diversa è verificare se i due oggetti hanno lo stesso valore:
    codice:
    If Range ("F13").Value = TextBox9.text Then
        MsgBox "Sono uguali."
    Else
        MsgBox "Sono diversi."
    End If
    Ma questi sono concetti universali di programmazione, indipendenti dal linguaggio.

    Originariamente inviato da leomac
    Nel senso se è possibile impartire alla textbox l'inserimento di soli numeri o un numero di caratteri fissi. Esmpio: impartisco alla textbox numero caratteri = 8 quindi se scrivo SETTEMBRE mi farà solo scrivere SETTEMBR.
    1-Per il numero di caratteri devi impostare la proprietà MaxLength

    2- Per filtrare il tipo di caratteri, puoi usare l'evento KeyPress , testando il parametro KeyAscii. In un modulo Bas inserisci questa routine:

    codice:
    Public Function ValidaCarattereNumerico (valAscii As Integer) As Integer
        Rem Verifica che il carattere digitato sia un numero. 
        Rem Se non è un numero restituisce 0 (nessun carattere)
        Rem I caratteri inferiori al codice 32 (tasti di sistema) devono sempre essere consentiti.
        If valAscii < 32 Then
            ValidaCarattereNumerico = valAscii
            Exit Function
        End If
        ValidaCarattereNumerico = IIf(InStr(1, "1234567890", Chr$(valAscii)) > 0, valAscii, 0)
    End Function
    Poi nell'evento KeyPress del TextBox inserisci la chiamata:
    codice:
    Private Sub Text1_KeyPress(KeyAscii As Integer)
        KeyAscii = ValidaCarattereNumerico (KeyAscii)
    End Sub

  5. #5
    Utente di HTML.it L'avatar di leomac
    Registrato dal
    Mar 2009
    Messaggi
    188
    Ti ringrazio per la delucidazione e per filtrare il tipo di caratteri, ma rimane il problema di come "linkare" il textbox al range.
    Originariamente inviato da leomac
    Salve a tutti,
    All'interno di un form inserisco il seguente codice:
    codice:
    Range ("F13").Value = TextBox9.text
    dovrei fare in modo che se sia presente un valore in rage di excel questo compaia anche in nella textbx del form.

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.