begin process at 2012 02 11 12:38:38
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Base de Donnees

 > CONVERSION DATE /VBA-- ACCESS

CONVERSION DATE /VBA-- ACCESS


 Information sur la source

Note :
10 / 10 - par 2 personnes
10,00 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Base de Donnees Niveau :Débutant Date de création :10/06/2005 Date de mise à jour :10/06/2005 08:07:52 Vu :17 698

Auteur : NetJoao

Ecrire un message privé
Commentaire sur cette source (4)
Ajouter un commentaire et/ou une note

 Description

Petite fonction que je me sert dans mes requêtes. Elle convertie une chaîne de caractère au format date.
Les données à convertir sont de la forme "20050610" -->année, mois, jour

Source

  • Public Function DatePandore(mydate As string) as Date
  • 'Conversion au format date
  • On Error GoTo err_Date
  • If IsNull(mydate) Then
  • DatePandore = ""
  • Else
  • DatePandore = Right(mydate, 2) & "/" & Mid(mydate, 5, 2) & "/" & Left(mydate, 4)
  • End If
  • exit_err:
  • Exit Function
  • err_Date:
  • MsgBox "L'erreur suivante :" & vbCrLf & Err.Number & " " & Err.Description & vbCrLf & _
  • "s'est produite dans la fonction DatePandore", vbCritical, "NetJoao"
  • Resume exit_err
  • End Function
Public Function DatePandore(mydate As string) as Date
'Conversion au format date
On Error GoTo err_Date
    If IsNull(mydate) Then
        DatePandore = ""
    Else
        DatePandore = Right(mydate, 2) & "/" & Mid(mydate, 5, 2) & "/" & Left(mydate, 4)
    End If
exit_err:
    Exit Function
err_Date:
    MsgBox "L'erreur suivante :" & vbCrLf & Err.Number & " " & Err.Description & vbCrLf & _
        "s'est produite dans la fonction DatePandore", vbCritical, "NetJoao"
    Resume exit_err
End Function

 Conclusion

Si quelqu'un a mieux, qu'il le fasse savoir ?
Utilisation de la fonction :
DatePandore([Champ])
Voilà c'est très basic, mais ça me sert bien.


 Historique

10 juin 2005 08:07:52 :
Changement de nom

 Sources du même auteur

GESTION DU D.I.F -- VBA
INSERTION DONNÉES VBA -- ADO

 Sources de la même categorie

Source avec Zip Source avec une capture BIEN ADMINISTRER LES ETUDIANTS ET LEURS CÔTES par okosa
Source avec Zip VBA EXEL GESTION DE PERSONEL NOUVEAU CONTRAT DE TRAVAI par oudlarbi
Source avec Zip Source avec une capture CREATION D'UN OBJET D'ACCÈS AUX DONNÉES par okosa
Source avec Zip Source .NET (Dotnet) MISAHORAIRE par MdelM
Source avec Zip Source avec une capture BASEDEDONNEES,GESTIONDEMALADES,DATABASSE par shadkitenge

Commentaires et avis

Commentaire de econs le 10/06/2005 10:36:50 administrateur CS

En 2 lignes de moins. Le Resume sur le label exit_err ne sert à rien. Après le traitement d'erreur, c'est la ligne 'End Function' qui est interprétée, et donc on sort de la fonction. Pas besoin de faire un Goto sur le label exit_err puis de sortir par 'Exit Function'.
Bref, une optimisation de 2 lignes :o)



   1. Public Function DatePandore(mydate As string) as Date
   2. 'Conversion au format date
   3. On Error GoTo err_Date
   4.     If IsNull(mydate) Then
   5.         DatePandore = ""
   6.     Else
   7.         DatePandore = Right(mydate, 2) & "/" & Mid(mydate, 5, 2) & "/" & Left(mydate, 4)
   8.     End If
  10.     Exit Function
  11. err_Date:
  12.     MsgBox "L'erreur suivante :" & vbCrLf & Err.Number & " " & Err.Description & vbCrLf & _
  13.         "s'est produite dans la fonction DatePandore", vbCritical, "NetJoao"
  15. End Function

Commentaire de yan35 le 10/06/2005 11:07:33

Tu pouvais aussi faire :

Public Function DatePandore(mydate As String) As Date
'Conversion au format date
On Error GoTo err_Date
     If IsNull(mydate) Then
         DatePandore = ""
     Else
        DatePandore = Format(mydate, "0000\/00\/00")
     End If
Exit Function
err_Date:
     MsgBox "L'erreur suivante :" & vbCrLf & Err.Number & " " & Err.Description & vbCrLf & _
     "s'est produite dans la fonction DatePandore", vbCritical, "NetJoao"
End Function

Commentaire de erramiahmed le 19/07/2005 16:08:54

Salut, j'ai utilisé votre fonction dans un module MS Access. J'extrais des dates ( plus d'autres données ) à partir d'un fichier texte et je stock le tout dans une table. Mais j'ai un petit problème, la date une fois stockée le jour se transforme en année et l'année en jour (exemple "30/06/2005" ---> 05/06/1930 !!! ).
La requete utilisée a l'allure suivante :
DoCmd.RunSql " insert into ... values (" & date & "," & ... & ")".
Dernière chose : la fonction integrée à Access nommée CDate fait exactement la même tâche.

Commentaire de eowyn_ le 19/06/2006 15:31:07

Salut,
pour ton problème d'inversion jour:année, tu dois remplacer
DatePandore = Right(mydate, 2) & "/" & Mid(mydate, 5, 2) & "/" & Left(mydate, 4)
par
DatePandore = Left(mydate, 2) & "/" & Mid(mydate, 3, 2) & "/" & Right(mydate, 4)
enfin... je crois :)

 Ajouter un commentaire




Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,732 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales