Lancer automatiquement une macro Excel
Résolu/Fermé
Mistral_13
Messages postés
17
Date d'inscription
vendredi 28 décembre 2007
Statut
Membre
Dernière intervention
11 février 2008
-
28 déc. 2007 à 10:22
Mistral_13 Messages postés 17 Date d'inscription vendredi 28 décembre 2007 Statut Membre Dernière intervention 11 février 2008 - 31 déc. 2007 à 09:21
Mistral_13 Messages postés 17 Date d'inscription vendredi 28 décembre 2007 Statut Membre Dernière intervention 11 février 2008 - 31 déc. 2007 à 09:21
A voir également:
- Lancer automatiquement une macro Excel
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Liste déroulante excel - Guide
- Déplacer une colonne excel - Guide
- Calculer une moyenne sur excel - Guide
- Si et excel - Guide
2 réponses
gbinforme
Messages postés
14946
Date d'inscription
lundi 18 octobre 2004
Statut
Contributeur
Dernière intervention
24 juin 2020
4 712
28 déc. 2007 à 22:18
28 déc. 2007 à 22:18
bonjour
Pour obtenir la date du jour en colonne A lorsque tu saisis la colonne B en non numérique tu peux utiliser une macro événementielle :
Pour obtenir la date du jour en colonne A lorsque tu saisis la colonne B en non numérique tu peux utiliser une macro événementielle :
Private Sub Worksheet_Change(ByVal sel As Range) If sel.Column = 2 And sel.Count = 1 Then If sel.Value <> "" And Not IsNumeric(sel.Value) Then sel.Offset(0, -1).Value = Date End If End If End Sub
gbinforme
Messages postés
14946
Date d'inscription
lundi 18 octobre 2004
Statut
Contributeur
Dernière intervention
24 juin 2020
4 712
29 déc. 2007 à 08:18
29 déc. 2007 à 08:18
bonjour
Tu peux simplifier ainsi
Moins il y a de code et plus c'est efficace et facile à maintenir.
Tu peux simplifier ainsi
Private Sub Worksheet_Change(ByVal sel As Range) If sel.Column = 14 And sel.Count = 1 Then If sel.Value <> "" And Not IsNumeric(sel.Value) Then sel.Offset(0, -1).Value = Date Else sel.Offset(0, -1).Value = "" End If End If End Sub
Moins il y a de code et plus c'est efficace et facile à maintenir.
Mistral_13
Messages postés
17
Date d'inscription
vendredi 28 décembre 2007
Statut
Membre
Dernière intervention
11 février 2008
31 déc. 2007 à 09:21
31 déc. 2007 à 09:21
Bonjour,
C'est super! Ca marche super bien et c'est exactement ce que je cherchais.
Un grand merci à toi pour cette solution.
C'est super! Ca marche super bien et c'est exactement ce que je cherchais.
Un grand merci à toi pour cette solution.
29 déc. 2007 à 08:02
Un grand merci à toi Gbinforme c'est exactement ce que je souhaitais.
J'ai modifié ton code non seulement pour l'adapter à ma feuille mais aussi pour effacer la date en cas d'effacement de la cellule située à droite de la date.
N'étant qu'un débutant en VBA Excel peux tu me donner ton avis sur ma façon de faire. Voici ce que j'ai fait :
Private Sub Worksheet_Change(ByVal sel As Range)
If sel.Column = 14 And sel.Count = 1 Then
If sel.Value <> "" And Not IsNumeric(sel.Value) Then
sel.Offset(0, -1).Value = Date
End If
End If
If sel.Column = 14 And sel.Count = 1 Then
If sel.Value = "" Then
sel.Offset(0, -1).Value = ""
End If
End If
End Sub
D'avance merci.
Mistral 13