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 :

A l'aide sur utilisation Worksheet_Change [XL-2003]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2012
    Messages
    37
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Madagascar

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2012
    Messages : 37
    Par défaut A l'aide sur utilisation Worksheet_Change
    Bonjour a tous,

    pour incrémenter un numéro de dossier j'ai écrit le macro suivant

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Private Sub Worksheet_Activate()
     
    Dim num As Integer
    Range("c1").Select
    num = Range("c1").Value
    num = num + 1
    Range("c1").Value = num
    End Sub
    A chaque fois que j'active la feuille, le numéro s'incrémente. J'aimerais pourtant incrémenter le numéro à chaque fois que la valeur d'une cellule contenant le nom du titulaire de dossier change.

    Est ce que quelqu'un pourrait m'aider à combiner ce code avec worksheet_Change

    Merci d'avance

    Bruno

  2. #2
    Expert confirmé
    Avatar de fring
    Homme Profil pro
    Engineering
    Inscrit en
    Février 2008
    Messages
    3 900
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : Belgique

    Informations professionnelles :
    Activité : Engineering

    Informations forums :
    Inscription : Février 2008
    Messages : 3 900
    Par défaut
    Bonjour,

    Ton premier code peut se limiter à
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Private Sub Worksheet_Activate()
        Range("c1") = Range("c1") + 1
    End Sub
    Concernant Worksheet_Change, en supposant que la cellule contenant le nom du titulaire est D5, ça donnerait ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Private Sub Worksheet_Change(ByVal Target As Range)
        If Target.Address = "$D$5" Then
            Range("c1") = Range("c1") + 1
        End If
    End Sub

  3. #3
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2012
    Messages
    37
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Madagascar

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2012
    Messages : 37
    Par défaut
    Merci beaucoup pour le conseil rapide.

    J'ai testé le code mais je ne comprend pas pourquoi cela ne fonctionne pas pour worksheet_change

    Est ce que je doit declarer le type de donner contenant dans D5?

    Merci beaucoup

    Bruno

  4. #4
    Expert confirmé
    Avatar de fring
    Homme Profil pro
    Engineering
    Inscrit en
    Février 2008
    Messages
    3 900
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : Belgique

    Informations professionnelles :
    Activité : Engineering

    Informations forums :
    Inscription : Février 2008
    Messages : 3 900
    Par défaut
    Citation Envoyé par Rabiry Voir le message
    Est ce que je doit declarer le type de donner contenant dans D5?
    non, la cellule C1 sera incrémentée de 1 à chaque modification de la cellule D5, peu importe la valeur de D5

    Qu'as-tu écrit comme code dans l'évènement Worksheet_Change ?

  5. #5
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2012
    Messages
    37
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Madagascar

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2012
    Messages : 37
    Par défaut
    Pour le tester j'ai copier le code que vous avez écrit dans une feuille vierge mais cela ne fonctionne pas!
    je comprend pas pourquoi

    alors que j'ai testé le code range("c1")= range("C1")+1 avec l'évenement Worksheet_beforedoubleclick et ça marche.

  6. #6
    Expert confirmé
    Avatar de fring
    Homme Profil pro
    Engineering
    Inscrit en
    Février 2008
    Messages
    3 900
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : Belgique

    Informations professionnelles :
    Activité : Engineering

    Informations forums :
    Inscription : Février 2008
    Messages : 3 900
    Par défaut
    fais moi un copier/coller de ton code complet qui ne fonctionne pas

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

Discussions similaires

  1. aide sur utilisation d'access2010
    Par bezout1990 dans le forum Access
    Réponses: 1
    Dernier message: 23/01/2014, 14h39
  2. [Débutant] Aide sur utilisation de combobox
    Par coleoptere dans le forum VB.NET
    Réponses: 6
    Dernier message: 28/04/2013, 00h13
  3. Besoin d'aide sur utilisation avancée d'un treeview
    Par Linux44 dans le forum GTK+ avec C & C++
    Réponses: 0
    Dernier message: 09/05/2012, 12h39
  4. Aide sur utilisation cd as400 d'ibm
    Par nasr_live dans le forum AS/400
    Réponses: 6
    Dernier message: 12/01/2009, 13h24
  5. [Dates] aide sur utilisation de la fonction time
    Par ca_mido dans le forum Langage
    Réponses: 2
    Dernier message: 19/09/2007, 11h35

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