Utilisation de Sendkeys

Rebonjour à tous,

j'ai un souci avec des dates qui sont reconnues en format texte je pense, malgré que le format de la cellule soit en date.

pour solutionner mon pb, j'ai pensé utiliser cette petite macro trouvé sur le net ...y a un truc qui doit pas fonctionner car il se passe rien.

Sub Entrer_Sortir_Cellule()

Application.ScreenUpdating = False

Dim c As Range

Range("I3:I9").Select

For Each c In Selection
    Application.SendKeys "{F2}"
    Application.SendKeys "{ENTER}"
Next c

Application.ScreenUpdating = True

End Sub

Merci par avance pour votre aide.

Laurent

Bonjour,

Cette macro rentre dans chaque cellule de la plage (ce que fait la touche F2), et valide avec enter.

Donc en fait, elle ne fait rien si tes données ne sont pas numériques.

Sub transformer_date()
Dim c As Range
Application.ScreenUpdating = False

For Each c In Range("A1:A2")
c.NumberFormat = "dd/mm/yyyy"
c = CDate(c)
Next c
End Sub

Tant que tu peux, évite sendkeys, ça désactive le pavé numérique, c'est pénible.

Salut JoyeuxNoel,

merci pour ton retour ... mais j'ai un message d'erreur lorsque je lance ta macro ...

image

et l'erreur se situe ici

c = CDate(c)

je comprends pas ce que ça veut dire...

Laurent

PS: j'ai juste modifié la plage des cellules. "A2:U2587"

Bonjour,

L'erreur se situe sur une cellule vide ?

Je n'ai pas de quoi tester là, à voir si ça change quelque chose :

Sub transformer_date()
Dim c As Range
Application.ScreenUpdating = False

For Each c In Range("A2:U2587")
c.NumberFormat = "dd/mm/yyyy"
If c <>"" then c = CDate(c)
Next c
End Sub

pas mieux ...

mais pas grave, j'ai revu la formule pour ne mettre que sur une seule colonne, et là ça fonctionne

c'est déjà super !

merci pour ton aide ... je poursuis les recherches de mon côté pour l'appliquer à toute ma feuille

bonne soirée

Rechercher des sujets similaires à "utilisation sendkeys"