IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

[VBA] Problème avec l'utilisation d'un TexBox


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé Avatar de etorria
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    107
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 107
    Par défaut [VBA] Problème avec l'utilisation d'un TexBox
    Bonjour au Forum !

    Je suis débutant sous VBA et je viens vers vous pour résoudre un problème.
    Dans un USF, j'ai placé 4 colonnes de TextBox (TxtCode, TxtRef, TxtFar, TxtGro), tous numérotés de 1 à 12 puisque 12 TextBox par colonnes.
    Mon souhait est que les saisies de ces TextBox soient recopiées dans les cellules de mon classeur (de "N74" à "Q83").
    D'après ce que j'ai semblé comprendre, il faut utiliser une boucle (For ... to Next) ainsi que la propriété .Cells.
    Mais bon, à l'heure actuelle, c'est trop compliqué pour moi.
    Si vous pouviez me donner un coup de pouce...

    D'avance merci
    Etorria

  2. #2
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Par défaut
    Pour placer les données des textbox dans tes cellules, c'est
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Dim i as integer, NoCol as integer
    NoCol = range("N1").column
    For i = 74 to 83
          Cells(i, NoCol) =  Me.Controls("TxtCode" & i - 73)
          Cells(i, NoCol + 1) = Me.Controls("TxtRef" & i - 73)
          Cells(i, NoCol + 2) = Me.Controls("TxtFar" & i - 73)
          Cells(i, NoCol + 3) = Me.Controls("TxtGro" & i - 73)
    Next

  3. #3
    Membre confirmé Avatar de etorria
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    107
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 107
    Par défaut
    Merci ouskel'n'or !
    Peux-tu m'expliquer cette partie de code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    For i = 1 To .Cells(Rows.Count, 1).End(xlUp).Row
    etorria

  4. #4
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Par défaut
    Citation Envoyé par etorria
    Mon souhait est que les saisies de ces TextBox soient recopiées dans les cellules de mon classeur (de "N74" à "Q83").
    J'ai donc utilisé cette plage. Ton nombre de texbox par colonne correspond au nombre de lignes. Ton nombre de colonnes correspond au nombre de "type" de textbox. Tout est ok !
    Le code pour lequel tu demandes une explication indique le n° de la dernière ligne renseignée dans ta feuille de calculs. Il ne peut être utilisé dans ce cas là car si le nombre de lignes dépasse ton nombre de textbox par type, ça ne marche plus.
    Au code que tu proposes il manque un bout que j'ajoute
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    With Worksheets("LaFeuille")
          For i = 1 To .Cells(Rows.Count, 1).End(xlUp).Row
    Tu pourrais écrire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    For i = 1 To Worksheets("LaFeuille").Cells(Rows.Count, 1).End(xlUp).Row
    ou encore, pour connaître le No de la dernière ligne renseignée
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    NoLig = Worksheets("LaFeuille").Cells(Rows.Count, 1).End(xlUp).Row
    Ai-je bien répondu ?

    PS - Reste à préciser que c'est le N° de la dernière ligne renseignée de la colonne 1 ("A")

Discussions similaires

  1. problème avec l'apostrophe dans une requête
    Par mika0102 dans le forum VBA Access
    Réponses: 7
    Dernier message: 09/03/2019, 16h51
  2. Problème avec l'utilisation de librairies
    Par Aradesh dans le forum MFC
    Réponses: 3
    Dernier message: 01/08/2005, 15h00
  3. [debutant] problème avec type à utiliser
    Par mlequim dans le forum Autres SGBD
    Réponses: 2
    Dernier message: 15/07/2005, 16h08
  4. Problème avec l'utilisation de la fonction clock
    Par Matgic95 dans le forum C++Builder
    Réponses: 13
    Dernier message: 09/05/2005, 19h27
  5. [Requete SQL en VBA] Problème avec la fonction FLOOR
    Par zubral dans le forum Langage SQL
    Réponses: 4
    Dernier message: 13/07/2004, 13h24

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo