cyllou
Messages postés8Date d'inscriptionjeudi 26 février 2009StatutMembreDernière intervention14 décembre 2011 26 févr. 2009 à 18:48
Merci pour ta réponse, effectivement ta synthaxe fonctionne également (je l'ai juste légèrement modifiée pour que ça passe sur mes données du point de vue des indices que tu avais mis en particulier ta 1ère ligne: strDate = Mid(Cells(i, 5).Value, 1 , 8) )pour que VB se place sur le 1er chiffre et prenne les 8 caractères) et ça améliore la rapidité du code, malheureusement vrt pas assez .
Je viens de touver une solution qui fonctionne très bien en utilisant un enregistrement de macro. En voici le code, les dates sont calculées en 2s chrono (pour 500 données qd meme!):
Sub autre()
Dim annee, mois, jour As String
Dim dates As Range
Dim la_date As Date
Dim i As Integer
On Error Resume Next
Set dates = Application.InputBox( _
prompt:="selectionnez la plage de dates à convertir", _
Title:="dates à transformer", _
Type:=8)
If Err > 0 Then Exit Sub
On Error GoTo 0
Dim derniere As Integer
dates.Select
derniere = 7 + dates.Rows.Count 'total nbr de lignes
Dim objcell As Range
Set objcell = Range("H8 : H" & derniere & "")
cyllou
Messages postés8Date d'inscriptionjeudi 26 février 2009StatutMembreDernière intervention14 décembre 2011 26 févr. 2009 à 17:03
Merci pour la réponse. J'ai essayé mais le Dateserial n'est pas reconnu dans le code.
J'ai peut etre mal expliqué mon problème mais en fait mon code actuel FONCTIONNE mais est BCP trop lent. Je pense que ça vient du fait que VB vient lire 3 fois chaque cellule de la colonne selectionnée pour trouver 1 seule date (il vient chercher l'année, puis le mois, puis le jour à chaque fois). J'aimerai accélérer tout ça...