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 :

Ligne à modifier dans un tableau


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    retraité
    Inscrit en
    Août 2019
    Messages
    109
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : Thaïlande

    Informations professionnelles :
    Activité : retraité
    Secteur : Conseil

    Informations forums :
    Inscription : Août 2019
    Messages : 109
    Par défaut Ligne à modifier dans un tableau
    Bonjour,
    Je vais essayer d'être clair...
    J'ai un tableau de joueurs (nom, équipe, etc..)
    A moment donné, un joueur peut changer d'équipe.
    Vu que la personne qui va procéder à cette modification de joueur n'est pas forcément habituée à intervenir dans ce genre de tableau,
    je voudrais qu'elle se contente de modifier une cellule bien précise (feuille protégée bien entendu)

    Voici le tableau et les explications... (un bon croquis étant mieux qu'un long discours)
    et je joins le petit fichier excel encore plus facile...

    D'avance, merci beaucoup pour votre aide
    Images attachées Images attachées  
    Fichiers attachés Fichiers attachés

  2. #2
    Expert confirmé
    Homme Profil pro
    Electrotechnicien
    Inscrit en
    Juillet 2016
    Messages
    3 241
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 71
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Electrotechnicien

    Informations forums :
    Inscription : Juillet 2016
    Messages : 3 241
    Par défaut
    Bonjour,

    Avec ceci en vba, réagit au changement de l'équipe

    Pièce jointe 575750

    le code dans le module de la feuille
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Private Sub Worksheet_Change(ByVal Target As Range)
        Application.EnableEvents = False
        If Target.Address = "$R$9" Then
            Set j = Range("I6:I35").Find(Range("R5"))
            Range(Cells(j.Row, "I"), Cells(j.Row, "M")).Value = Range("T8:X8").Value
        End If
        Application.EnableEvents = True
    End Sub
    Cdlt

  3. #3
    Membre confirmé
    Homme Profil pro
    retraité
    Inscrit en
    Août 2019
    Messages
    109
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : Thaïlande

    Informations professionnelles :
    Activité : retraité
    Secteur : Conseil

    Informations forums :
    Inscription : Août 2019
    Messages : 109
    Par défaut Mis à jour
    Grand merci pour ton aide...
    J'ai mis la macro dans mon tableur mais ça ne fonctionne pas...
    Le nouveau nom d'équipe n'est pas mis en place.

    Vois svp la pic ci-jointe
    Merci
    Images attachées Images attachées  

  4. #4
    Expert confirmé
    Homme Profil pro
    Electrotechnicien
    Inscrit en
    Juillet 2016
    Messages
    3 241
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 71
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Electrotechnicien

    Informations forums :
    Inscription : Juillet 2016
    Messages : 3 241
    Par défaut
    Bonsoir,

    J'ai mis la macro dans mon tableur mais ça ne fonctionne pas...
    Le nouveau nom d'équipe n'est pas mis en place.
    ça ne fonctionne pas, Que se passe -t_il exactement? citez des exemples qui ne fonctionnent pas

    Avez-vous essayez le fichier joint? pour ma part il semble fonctionner correctement.

    Dans l'attente de votre réponse.

    Cdlt

  5. #5
    Membre confirmé
    Homme Profil pro
    retraité
    Inscrit en
    Août 2019
    Messages
    109
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : Thaïlande

    Informations professionnelles :
    Activité : retraité
    Secteur : Conseil

    Informations forums :
    Inscription : Août 2019
    Messages : 109
    Par défaut
    Ben.. il ne se passe rien.
    Voyez le fichier joint... j'y ai mis la macro que vous m'avez donnée...

    pièce jointe: update player.xlsm
    Merci
    Fichiers attachés Fichiers attachés

  6. #6
    Membre émérite Avatar de Alex020181
    Homme Profil pro
    Prestataire informatique développeur d'application Excel, Access, VBA
    Inscrit en
    Juin 2012
    Messages
    601
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Prestataire informatique développeur d'application Excel, Access, VBA

    Informations forums :
    Inscription : Juin 2012
    Messages : 601
    Par défaut
    Bonjour,

    Vous avez mal positionné le code fourni.

    Vous avez placé le code dans un nouveau module. Il faut que vous le mettiez dans le code de la feuille sur laquelle il doit agir (càd "3 - PLAYER").

    Ensuite attention avec le code fourni. Il vous faut d'abord modifier le numéro du joueur en R5 avant de préciser sa nouvelle équipe en R9. C'est très important.
    De façon automatique le code change "Name (Team)" du joueur dès que la valeur de R9 est modifiée. Donc si vous commencez par changer l'équipe avant de mettre le joueur alors c'est le joueur qui se trouve en R5 qui sera modifié.

  7. #7
    Membre confirmé
    Homme Profil pro
    retraité
    Inscrit en
    Août 2019
    Messages
    109
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : Thaïlande

    Informations professionnelles :
    Activité : retraité
    Secteur : Conseil

    Informations forums :
    Inscription : Août 2019
    Messages : 109
    Par défaut
    pas grave, j'y arrive pas.
    Je n'y connais rien dans ce langage.
    Merci quand même

  8. #8
    Expert confirmé
    Homme Profil pro
    Electrotechnicien
    Inscrit en
    Juillet 2016
    Messages
    3 241
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 71
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Electrotechnicien

    Informations forums :
    Inscription : Juillet 2016
    Messages : 3 241
    Par défaut
    Bonjour raivig,
    Dans ma première réponse, juste au-dessus des lignes de code, j'avais bien préciser que, le code était à coller dans le module de la feuille (j'aurai dû mettre en caractères gras) et non pas dans un module standard, comme l'a rappelé Alex020181

    Le fait de placer le code dans le module de la feuille active, crée ce qu'on appelle une "MACRO EVENEMENTIELLE", cette macro réagit en fonction de l'évènement choisi, et non pas à la demande en cliquant sur un bouton.
    Ici, le nom de la macro évènementielle est "Worksheet_Change", et elle réagit à chaque changement de valeur de la cellule R9.

    Quand vous faites ALT + F11 pour accéder à la fenêtre VBA, dans la partie gauche , faites un double-clic sur "Feui1(3-Player)" et collez le code dans la fenêtre de gauche. Supprimez le code du module1.
    Pièce jointe 575815

    Cdlt

  9. #9
    Membre confirmé
    Homme Profil pro
    retraité
    Inscrit en
    Août 2019
    Messages
    109
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : Thaïlande

    Informations professionnelles :
    Activité : retraité
    Secteur : Conseil

    Informations forums :
    Inscription : Août 2019
    Messages : 109
    Par défaut
    J'ai essayé de respecter scrupuleusement vos recommandations, rien n'y fait.
    L'exemple que je vous avais transmis était un extrait et j'avais oublié certaines choses.

    Là, je fais une copie d'écran, la macro est bien dans la feuille "MODIFY PLAYER"
    j'ai vérifié les concordances des cellules...
    je commence bien entedu dans l'ordre : choix du joueur puis modif nouvelle équipe

    rien à faire.
    Je n'y comprends rien...

    Désolé mais vous aidez gentiment un novice en matière de Visual Basic
    Si j'utilisais moi-même ce tableur j'aurais vite fait de faire un copier/coller des cellules T8:X8 vers la ligne prévue...
    mais le problème est que quelqu'un d'autre risque d'utiliser ce tableau et de faire ces modif, et qui ne s'y connait très très peu sur excel... encore plus nul que moi...

    En tout cas c'est gentil de m'aider, merci encore
    Images attachées Images attachées  

  10. #10
    Expert confirmé
    Homme Profil pro
    Electrotechnicien
    Inscrit en
    Juillet 2016
    Messages
    3 241
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 71
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Electrotechnicien

    Informations forums :
    Inscription : Juillet 2016
    Messages : 3 241
    Par défaut
    Regardez bien le nom du module tout en haut, on voit que c'est le module 5, je reprends ce que j'ai écrit précédemment en mettant en rouge ce que vous avez sûrement oublié de faire

    Quand vous faites ALT + F11 pour accéder à la fenêtre VBA, dans la partie gauche , faites un double-clic sur "Feui1(3-Player)" et collez le code dans la fenêtre de gauche. Supprimez le code du module1.
    à part que ce n'est plus la feuille "Feuil(3-Player")" mais "Feuil15(MODIFY PLAYER)"

    Pièce jointe 575821

  11. #11
    Membre confirmé
    Homme Profil pro
    retraité
    Inscrit en
    Août 2019
    Messages
    109
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : Thaïlande

    Informations professionnelles :
    Activité : retraité
    Secteur : Conseil

    Informations forums :
    Inscription : Août 2019
    Messages : 109
    Par défaut
    Bon, je vous ai assez fait perdre de temps comme ça.
    Je n'y arrive pas.
    J'abandonne.

    Merci encore

Discussions similaires

  1. [XL-2003] (Cacher) modifié en : Supprimer les lignes vides dans un tableau
    Par azerty1956 dans le forum Macros et VBA Excel
    Réponses: 12
    Dernier message: 15/04/2009, 18h12
  2. Lignes verticales dans un tableau
    Par Stochastic dans le forum Tableaux - Graphiques - Images - Flottants
    Réponses: 4
    Dernier message: 27/09/2006, 14h59
  3. Ajout de ligne dynamique dans un tableau (Incompatible IE)
    Par seb34 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 8
    Dernier message: 26/05/2006, 11h03
  4. Éliminer les lignes blanches dans un tableau
    Par DenPro dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 18/11/2004, 01h27
  5. [HTML] Se placer à une ligne précise dans un tableau
    Par seb55555 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 3
    Dernier message: 28/10/2004, 15h06

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