Mise à jour date automatiquement sauf ligne 1 [Résolu/Fermé]

Signaler
Messages postés
328
Date d'inscription
lundi 5 mars 2012
Statut
Membre
Dernière intervention
15 juillet 2015
-
Messages postés
328
Date d'inscription
lundi 5 mars 2012
Statut
Membre
Dernière intervention
15 juillet 2015
-
Bonjour,

Je rencontre un problème avec ce code qui affecte l'ensemble de mes lignes et donc par la même occasion ma ligne d'entête. Auriez vous une idée pour faire en sorte d'exclure la ligne 1 de ce traitement ?

Private Sub Worksheet_Change(ByVal sel As Range)
    Application.EnableEvents = False
    Cells(sel.Row, "A").Value = "jean.Pierre"
    Cells(sel.Row, "B").Value = "Controle"
    Cells(sel.Row, "C").Value = Date
    Application.EnableEvents = True
End Sub


Merci par avance

3 réponses

Messages postés
149
Date d'inscription
mercredi 23 janvier 2013
Statut
Membre
Dernière intervention
7 mai 2014
10
Bonjour,

Tu as un bon nombre de solutions :

Une boucle for.
"Vider" les cellules de la lignes 1
Créer une plage (http://www.excelabo.net/excel/plage_vba)
...

Je te laisse choisir ce que tu préfères
Messages postés
328
Date d'inscription
lundi 5 mars 2012
Statut
Membre
Dernière intervention
15 juillet 2015

Merci Ergor,

Mais le lien ne fonctionne pas
Messages postés
149
Date d'inscription
mercredi 23 janvier 2013
Statut
Membre
Dernière intervention
7 mai 2014
10
Voici le lien corriger (simplement en enlevant la parenthèse de fin) :

http://www.excelabo.net/excel/plage_vba
Messages postés
328
Date d'inscription
lundi 5 mars 2012
Statut
Membre
Dernière intervention
15 juillet 2015

C'est vrai, j'ai pas bien fais attention...
J'essaie avec la première fonction en y rajoutant le for devant mais on me demande un "=" que je ne veux pas mettre car je ne sais pas quoi y accoler derrière. Je veux juste dire que cette fonction s'applique de la ligne A2 à la dernière ligne (comme suit)

For Range([A2], [AG65635].End(xlUp))
Messages postés
149
Date d'inscription
mercredi 23 janvier 2013
Statut
Membre
Dernière intervention
7 mai 2014
10
Oula,

Autant pour moi je me suis fourvoyé, j'avais mal compris ce que tu voulais faire.

Pour ce que tu veux faire c'est très simple un "if" suffit, comme ceci :


Private Sub Worksheet_Change(ByVal sel As Range)

    If sel.Row <> 1 Then
    
    
        Application.EnableEvents = False
        Cells(sel.Row, "A").Value = "jean.Pierre"
        Cells(sel.Row, "B").Value = "Controle"
        Cells(sel.Row, "C").Value = Date
        Application.EnableEvents = True
        
    
    End If

End Sub





Dis-moi si cela correspond à ce que tu cherchais.


Bonne journée
It's not a bug, it's a feature
Messages postés
328
Date d'inscription
lundi 5 mars 2012
Statut
Membre
Dernière intervention
15 juillet 2015

C'est bien ça :)
J'avais essayé avec le même code mais en ne mettant que le > d'où le fait que ça ne marchait pas !

Merci