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 :

Code de modification contenu Cellule apres recherche


Sujet :

Macros et VBA Excel

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Août 2007
    Messages
    4
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 4
    Points : 3
    Points
    3
    Par défaut [XL-2007] Code de modification contenu Cellule apres recherche
    Bonjour,

    J'ai un bouton rechercher dont le code est le suivant :

    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
    Private Sub CommandButton9_Click()
     
    Application.ScreenUpdating = False
     
    Valeur = TextBox9.Value
    Sheets("info").Select
    Range("A1").Select
     
    On Error GoTo fin
    ActiveSheet.Cells.Find(What:=Valeur, After:=ActiveCell, LookIn:=xlFormulas, LookAt:= _
    xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:=False) _
    .Activate
    TextBox10.Text = ActiveCell.Offset(0, -1).Value
    TextBox11.Text = ActiveCell.Offset(0, 1).Value
    TextBox12.Text = ActiveCell.Offset(0, 2).Value
    TextBox13.Text = ActiveCell.Offset(0, 3).Value
    TextBox14.Text = ActiveCell.Offset(0, 4).Value
    TextBox15.Text = ActiveCell.Offset(0, 5).Value
    TextBox16.Text = ActiveCell.Offset(0, 6).Value
    TextBox17.Text = ActiveCell.Offset(0, 7).Value
    TextBox18.Text = ActiveCell.Offset(0, 8).Value
    TextBox19.Text = ActiveCell.Offset(0, 9).Value
    TextBox20.Text = ActiveCell.Offset(0, 10).Value
     
    Application.ScreenUpdating = True
     
    Exit Sub
    fin:
    MsgBox "l'info recherchée n'existe pas"
    Application.ScreenUpdating = True
    Ce code me permet à partir de la recherche du nom d'afficher dans plusieurs textbox les informations de la personne.

    Je souhaiterais créer un bouton modifier qui me permettrait de modifier les informations contenus dans les textbox après recherche.... En gros qui permettrait de mettre à jour les cellules apres la recherche.

    Mais je sais pas vraiment comment démarrer....


    Bien à vous

  2. #2
    Membre expérimenté Avatar de laetitia
    Profil pro
    Inscrit en
    Décembre 2002
    Messages
    1 281
    Détails du profil
    Informations personnelles :
    Âge : 34
    Localisation : France

    Informations forums :
    Inscription : Décembre 2002
    Messages : 1 281
    Points : 1 512
    Points
    1 512
    Par défaut
    bonjour xeeel le forum si j ai compris le mieux peut etre c est d utiliser un combobox a la place de find plus simple a voir!!


    Option Explicit

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    Dim c, x As Variant, i As Byte
    Private Sub CommandButton1_Click()
    Application.ScreenUpdating = False
    x = -1
    Sheets("info").Select
    Set c = [b:b].Find(TextBox9, LookIn:=xlValues, LookAt:=xlWhole)
    If c Is Nothing Then MsgBox "pas trouve  !!!": Exit Sub
    c.Activate
    For i = 10 To 20
    Selection.Offset(0, x) = Me.Controls("Textbox" & i).Value
    If x = -1 Then x = x + 1
     x = x + 1
    Next i: Beep
    End Sub

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    Private Sub CommandButton9_Click()
     Application.ScreenUpdating = False
     x = -1
    Sheets("info").Select
    Set c = [b:b].Find(TextBox9, LookIn:=xlValues, LookAt:=xlWhole)
    If c Is Nothing Then MsgBox "pas trouve  !!!": Exit Sub
    c.Activate
    For i = 10 To 20
     Me.Controls("Textbox" & i) = Selection.Offset(0, x)
    If x = -1 Then x = x + 1
     x = x + 1
    Next i
    End Sub

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Août 2007
    Messages
    4
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 4
    Points : 3
    Points
    3
    Par défaut Super


    Bonjour,

    2 choses:
    - Ton code du bouton recherche est 100 fois plus intelligent que le mien mais comme moi en VBA je réfléchis pas trop et encore moins pour les boucles je te dis respect lol
    - Ton code pour le bouton Modifier marche au poil aussi

    Bref tu as répondu à 100 % à mes interrogations avec transfert de compétence.

    Merci beaucoup

  4. #4
    Candidat au Club
    Profil pro
    Inscrit en
    Août 2007
    Messages
    4
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 4
    Points : 3
    Points
    3
    Par défaut Petit souci
    Bonjour à tous et à toutes,
    j'ai le problème suivant à propos du code précédent :

    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 CommandButton9_Click()
     
    Application.ScreenUpdating = False
    x = -1
    Sheets("info").Select
    Set c = [b:b].Find(TextBox9, LookIn:=xlValues, LookAt:=xlWhole)
     
    If c Is Nothing Then MsgBox "Information non trouvée ": Exit Sub
    c.Activate
    For i = 10 To 20
     Me.Controls("Textbox" & i) = Selection.Offset(0, x)
    If x = -1 Then x = x + 1
     x = x + 1
    Next i
     
    End Sub
    Si je l'exécute sur ma machine je n'ai aucun problème la recherche s'effectue correctement. A Contrario si je l'exécute sur le PC d'un de mes collaborateurs j'ai l'erreur suivante :



    Les versions d'Excel sont des 2007, le mien PRO et celui du poste ou j'ai l'erreur BASIC.

    Auriez vous une solution à ce problème car la je pige pas ...?? j'ai beau rajouté les variables et modifier dans tous les sens j'ai toujours une erreur.


    Cordialement,

    Xeeel

  5. #5
    Membre expérimenté Avatar de laetitia
    Profil pro
    Inscrit en
    Décembre 2002
    Messages
    1 281
    Détails du profil
    Informations personnelles :
    Âge : 34
    Localisation : France

    Informations forums :
    Inscription : Décembre 2002
    Messages : 1 281
    Points : 1 512
    Points
    1 512
    Par défaut
    bonjour xeeel le forum regarde du côte des références pour voir

    dans vba barre des menus / outils / références /
    et tu décoches les références qui sont marquées : Manquantes

  6. #6
    Candidat au Club
    Profil pro
    Inscrit en
    Août 2007
    Messages
    4
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 4
    Points : 3
    Points
    3
    Par défaut
    Merci ça marche ;-)

    Tu es précieuse ^^

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

Discussions similaires

  1. [XL-2000] détection modification contenu cellules
    Par Noe06 dans le forum Macros et VBA Excel
    Réponses: 18
    Dernier message: 30/05/2012, 11h22
  2. [XL-2003] Selection cellule après recherche
    Par dlight dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 22/07/2010, 22h58
  3. Réponses: 21
    Dernier message: 20/11/2009, 23h46
  4. Comment effacer des cellule après modification d'une cellule
    Par NEC14 dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 02/03/2009, 08h51
  5. Réponses: 4
    Dernier message: 29/09/2006, 16h38

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