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 :

Userform VBA modif


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Futur Membre du Club
    Homme Profil pro
    Inscrit en
    Mars 2012
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Mars 2012
    Messages : 3
    Par défaut Userform VBA modif
    Bonjour, je n'arrive pas à modifier une ligne insérer, voici mon code :


    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
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    [A1].Select
     
     
        Do While ActiveCell.FormulaR1C1 <> ""
            ActiveCell.Offset(1, 0).Select
            Loop
        ' se positionner sur la bonne cellule
     
        ActiveCell.FormulaR1C1 = Text_nom.Text
     
        ActiveCell.Offset(0, 1).Select
     
        ActiveCell.FormulaR1C1 = Text_prenom.Text
     
        ActiveCell.Offset(0, 1).Select
     
        ActiveCell.FormulaR1C1 = Text_mail.Text
     
        ActiveCell.Offset(0, 1).Select
     
        ActiveCell.FormulaR1C1 = Text_tel.Text
     
        ActiveCell.Offset(0, 1).Select
     
     
     
        If RBT_homme.Value = True Then
     
            ActiveCell.FormulaR1C1 = "Homme"
        Else
            ActiveCell.FormulaR1C1 = "Femme"
        End If
     
        ActiveCell.Offset(0, 1).Select
     
        If CBX_marie.Value = True Then
     
            ActiveCell.FormulaR1C1 = "Marié(e)"
        Else
            ActiveCell.FormulaR1C1 = "Celibataire"
        End If
     
     
        Me.Hide
        Text_prenom.Text = ""
        Text_nom.Text = ""
        Text_mail.Text = ""
        Text_tel.Text = ""
     
     
     
    End Sub

  2. #2
    Membre Expert Avatar de Fvandermeulen
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2007
    Messages
    1 869
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juillet 2007
    Messages : 1 869
    Par défaut
    Salut,

    Il faudrait être un peu plus explicite sur ton problème...

    Quoi qu'il en soit, voici une proposition d'adaptation de ton code pour le rendre plus court et normalement plus rapide.
    (J'ai pas testé, pas envie de créer un UF)

    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
    17
    18
    19
    20
    21
    22
    23
    24
    Sub EcritFeuille()
    Dim Ws As Worksheet
    Dim DerLig As Long
     
    Set Ws = Sheets("LeNomDeTaFeuille") 'Affecte la feuille cible à la variable Ws
    DerLig = Ws.Cells(Ws.Columns(1).Cells.Count, 1).End(xlUp).Row 'Détermine la dernière ligne remplie sur base de la colonne A
    [A1].Select
     
    'DerLig+1 indique le numéro de la première ligne vide
    Ws.Cells(DerLig + 1, 1) = Text_nom.Text 'Ecrit en colonne A
    Ws.Cells(DerLig + 1, 2) = Text_prenom.Text 'Ecrit en colonne B
    Ws.Cells(DerLig + 1, 3) = Text_mail.Text 'Ecrit en colonne C
    Ws.Cells(DerLig + 1, 4) = Text_tel.Text 'Ecrit en colonne D
    Ws.Cells(DerLig + 1, 5) = IIf(RBT_homme.Value = True, "Homme", "Femme") 'Ecrit en colonne E; le Iif fonctionne +/- comme le If d'Excel
    Ws.Cells(DerLig + 1, 6) = IIf(CBX_marie.Value = True, "Marié(e)", "Celibataire") 'Ecrit en colonne F
     
        Me.Hide
        Text_prenom.Text = ""
        Text_nom.Text = ""
        Text_mail.Text = ""
        Text_tel.Text = ""
        Unload Me 'Permet de décharger le userform, la mise à "" est théoriquement inutile du coup
     
    End Sub

Discussions similaires

  1. [XL-2000] Userform VBA Excel
    Par Igloobel dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 12/04/2015, 13h49
  2. [VBA]modification maitre de section en VBA
    Par hlecleve dans le forum SDK
    Réponses: 4
    Dernier message: 11/07/2007, 11h59
  3. Réponses: 7
    Dernier message: 06/04/2007, 14h26
  4. VBA : modification d'une entrée dans une table
    Par Thibaut_Dupont dans le forum Access
    Réponses: 6
    Dernier message: 13/07/2006, 15h24
  5. [VBA] Modification de la source d'un état (report)
    Par gripoil dans le forum Access
    Réponses: 9
    Dernier message: 19/10/2005, 20h22

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