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 :

Remplir une textbox avec le contenu d'une cellule choisie par un click


Sujet :

Macros et VBA Excel

  1. #1
    Membre à l'essai
    Homme Profil pro
    Retraité
    Inscrit en
    Janvier 2015
    Messages
    26
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Bâtiment Travaux Publics

    Informations forums :
    Inscription : Janvier 2015
    Messages : 26
    Points : 19
    Points
    19
    Par défaut Remplir une textbox avec le contenu d'une cellule choisie par un click
    Bonsoir à tous,

    Auriez-vous une idée pour remplir la txtbox1 de mon userform2 avec le contenu d'une cellule à choisir par un click n'importe où dans la colonne "A".
    Le textbox1 en question servira ensuite à renseigner une cellule connue dans une feuille modèle restant à insérer en dernier dans mon classeur.

    Voila ce que j'ai déjà testé et qui ne fonctionne pas :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    'Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
    'Cancel = True
    'Stop
    'With Target
    'a = Target.Value
    'End With
    'Application.ScreenUpdating = False
    'If Not Intersect(Target, Range("A2:A2000")) Is Nothing Then
    'UserForm2.TextBox1 = a
     
     
    End If
    Application.ScreenUpdating = True
    End Sub
     
    UserForm2.TextBox1.Text = ActiveCell.Value
    Lors de l'ouverture du userform dans la feuille, bien entendu, le focus étant sur le userform, je n'avais pas d'accès aux cellules.
    Alors j'ai ajouté le 0 après le show du userform comme çà :
    Là j'ai bien accès aux cellules mais je ne retourne rien au textBox.

    Merci d'avance.

  2. #2
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Février 2004
    Messages
    15
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 15
    Points : 30
    Points
    30
    Par défaut Utiliser SelectionChange de la feuille active
    Bonjour Cadet69,


    il est normal que rien ne se passe car vous devez utiliser l'événement SelectionChange de la feuille active.

    - si vous devez utiliser votre userform uniquement sur la feuil1 par exemple :
    - dans la feuille de code de Feuil1, créer l'événement Worksheet_SelectionChange(ByVal Target As Range)
    - si vus devez utiliser votre userform dans n'importe quelle feuille
    - dans la feuille de code de ThisWorkbook, créer l'événement Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)


    et taper le code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    If Not Intersect(ActiveCell, Feuil1.Range("A:A")) Is Nothing then userform1.TextBox1.Value = ActiveCell.value
    Bonne journée

    Kedar

  3. #3
    Membre à l'essai
    Homme Profil pro
    Retraité
    Inscrit en
    Janvier 2015
    Messages
    26
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Bâtiment Travaux Publics

    Informations forums :
    Inscription : Janvier 2015
    Messages : 26
    Points : 19
    Points
    19
    Par défaut
    Salut Kedar,

    Merci pour ton aide.
    J'ai essayé la solution que tu proposes mais cela ne fonctionne pas.
    Ou alors je n'ai pas compris.
    J'ai bien compris l'endroit où placer le "Worksheet_SelectionChange(ByVal Target As Range)".
    Mais j'ai un doute pour le code ? J'ai un peu tout essayé mais rien de bien probant.
    Effectivement, à l'ouverture de mon userforme2, j'ai bien accès aux cellules de la feuille1 mais le click sur une des cellules de la colonne A ne remonte pas
    la valeur de celle-ci dans mon textBox1.
    Or j'ai besoin de ce textBox1 pour remplir la cellule d'une feuille que je vais chercher dans les modèles d'Excel (modèle créé par moi) et que je dois rapatrier
    en tout dernier dans mon classeur.

    Maintenant, j'ai peut-être un problème plus sérieux en ce sens que la méthode que j'ai choisi pour renseigné la cellule de destination n'est peut-être pas la bonne.
    En effet, j'arrive sans souci à rapatrier mon modèle dans mon classeur mais, si je le fait classiquement, la cellule utile est alors vide et je dois faire, à la main, un copier/collé.
    Je détaille point par point ce que je cherche à faire le besoin final étant d'avoir, dans mon classeur, mon modèle (avec son nom changé) et pré renseigné :
    1 - Choisir à l'aide d'un click dans la colonne A, dans ma base de patients, et avec mon userform1 le numéro de Sécu de la personne.
    2 - Rapatrier mon modèle au bon endroit.
    3 - Coller le numéro de sécu dans la cellule du modèle qui va bien (B9 pour ne pas la nommer) (ici le modèle renseigne l'identité complète de la personne).
    4 - Modifier le nom de la feuille contenant le modèle.

    Et voila, je ne pensais pas que ce serait si compliqué, flute et re flute.

    Bon appétit.

  4. #4
    Membre à l'essai
    Homme Profil pro
    Retraité
    Inscrit en
    Janvier 2015
    Messages
    26
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Bâtiment Travaux Publics

    Informations forums :
    Inscription : Janvier 2015
    Messages : 26
    Points : 19
    Points
    19
    Par défaut
    Encore salut Kedar,

    Le code, ci-dessous, fonctionne parfaitement et fait bien remonter la valeur de ma cellule dans mon textBox1 :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Private Sub Worksheet_SelectionChange(ByVal Target As Range)
     
        UserForm2.TextBox1.Text = ActiveCell.Value
     
    End Sub
    Je l'ai placé dans le Worsheet de ma feuille1.

    A la suite maintenant.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Remplir une comboBox avec le contenu d'une feuille excel
    Par monichou86 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 1
    Dernier message: 20/01/2010, 13h46
  2. Alimenter une TextBox Avec le contenu d'une cellule
    Par nico18987 dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 29/10/2008, 21h41
  3. Remplir une ListView avec le contenu d'une feuille
    Par sat478 dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 05/02/2008, 11h50
  4. Réponses: 1
    Dernier message: 07/08/2007, 13h05
  5. Remplir une ListView avec le contenu d'une requête
    Par callo dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 19/10/2006, 08h44

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