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 :

Alimentation d'un Usf à partir de la cellule active


Sujet :

Macros et VBA Excel

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    7
    Détails du profil
    Informations personnelles :
    Âge : 62
    Localisation : France

    Informations forums :
    Inscription : Janvier 2009
    Messages : 7
    Par défaut Alimentation d'un Usf à partir de la cellule active
    Bonjour,

    Dans une feuille, il y a en
    E6:E4000 un nom
    F6:F4000 un prénom
    G6:G4000 un n° de tél

    je souhaiterais avoir un formulaire qui s'ouvre en faisant un double-
    click sur une quelconque cellule de la colonne E
    Donc, voici l'évenement déclenchant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel
    As Boolean)
     
           If Target.Column = 5 Then
               UserForm2.Show
           End If
           Cancel = True
    End Sub
    Jusque là tout va bien ...

    Dans mon UserForm2, je voudrais qu'il se passe ceci :
    TextBox1 = valeur de la cellule active (En), valeur de référence pour
    la suite
    TextBox2 = valeur décalée (offset(0,1) sur la même ligne, cellule à
    droite (Fn)
    TextBox3 = valeur décalée (offset(0,2) sur la même ligne, cellule à
    droite (Gn)

    Là je bloques
    Le tout étant de ne pas "débloquer"

    Par la suite et après validation, je voudrais que la valeur de
    Textbox1 retourne en (En) avec le format NomPropre(); idem pour
    TextBox2 en (Fn) et TextBox3 en (Gn) avec la format spécial de numéro
    de téléphone ....

    Est ce possible ou suis je en train de rêver ???
    Merci de vos éclairages

    Cordialement

    Jean-Yves

  2. #2
    Membre Expert Avatar de rvtoulon
    Homme Profil pro
    Agent Technique
    Inscrit en
    Mars 2009
    Messages
    1 042
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Agent Technique
    Secteur : Santé

    Informations forums :
    Inscription : Mars 2009
    Messages : 1 042
    Par défaut
    Bonjour, il ya beaucoup d'exemple dans le forum pour ce que tu souhaites faire.
    pour afficher le contenu de la cellule active dans un textbox dans initialize du userform met :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Private Sub UserForm_Initialize()
    Me.TextBox1 = ActiveCell
    Me.TextBox2 = ActiveCell.Offset(0, 1)
    Me.TextBox3 = ActiveCell.Offset(0, 2)
    End Sub

  3. #3
    Expert éminent Avatar de mercatog
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    9 435
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations forums :
    Inscription : Juillet 2008
    Messages : 9 435
    Par défaut
    Bonjour
    Une autre proposition en utilisant une variable publique qui mémorise la ligne double cliquée.

    Dans un module standard (déclarer la variable publique LaLig)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Option Explicit
     
    Public LaLig As Long
    Dans le module de Feuil1
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
     
    Cancel = True
    LaLig = Target.Row
    UserForm2.Show
    End Sub
    Dans le module de l'userform
    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 UserForm_Initialize()
     
    If LaLig > 0 Then
        With Worksheets("Feuil1")
            Me.TextBox1 = StrConv(.Range("E" & LaLig), vbProperCase)
            Me.TextBox2 = StrConv(.Range("F" & LaLig), vbProperCase)
            Me.TextBox3 = Format(.Range("G" & LaLig), "0# ## ## ## ##")
        End With
    End If
    End Sub
     
    'A la fermeture
    Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)
     
    LaLig = 0
    End Sub

  4. #4
    Membre Expert Avatar de Jean-Pierre49
    Homme Profil pro
    Retraité
    Inscrit en
    Juillet 2007
    Messages
    659
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2007
    Messages : 659
    Par défaut
    Bonjour Mercatog

    juste une question : pourquoi

    Puisque

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    LaLig = Target.Row
    UserForm2.Show

    Cordialement

    Edit: mercatog, merci de ta réponse ci dessous A@

  5. #5
    Expert éminent Avatar de mercatog
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    9 435
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations forums :
    Inscription : Juillet 2008
    Messages : 9 435
    Par défaut
    Certes, mais dans le cas où l'userform est aussi ouvert d'une autre façon et non suite au double clique.

Discussions similaires

  1. [Toutes versions] Saisies a partir de la cellule active
    Par silver_r dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 17/07/2010, 23h58
  2. analyse d'une plage à partir de la cellule active
    Par buhrne dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 07/03/2008, 09h27
  3. [VBA-E]suppression lignes a partir d'une cellule active
    Par lio62 dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 08/02/2007, 15h01
  4. alimenter un liste déroulante à partir d'une popup
    Par allowen dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 11/01/2006, 15h27
  5. Réponses: 4
    Dernier message: 26/08/2004, 08h01

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