IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

[VBA-E][access]"date out of range"


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Août 2005
    Messages
    116
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 116
    Par défaut [VBA-E][access]"date out of range"
    bonjour,
    j'ai un pb de "date out of range" en exportant une table access vers excel.
    J'ai vu que excel ne prenait pas les date anterieures au 01/01/1900 or il s'agit ici de dates lointaines mais vers le future : en 2099.
    Quelqu'un a-t-il une info sur les limites de date d'excel "vers le future"?
    merci
    b.

  2. #2
    Expert éminent


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Par défaut
    .. je sais pas mais par addition de date j'arrive jusqu'en 9999...

  3. #3
    Expert confirmé
    Avatar de ThierryAIM
    Homme Profil pro
    Inscrit en
    Septembre 2002
    Messages
    3 673
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2002
    Messages : 3 673
    Par défaut
    Je le remets encore une fois :
    Citation Envoyé par MSDN
    expression de date
    Toute expression pouvant être interprétée comme une date. Ceci comprend toute combinaison de littéraux de date, de nombres ou de chaînes ressemblant à des dates, et de dates retournées par des fonctions. Une expression de date est limitée aux nombres ou chaînes, sous toute forme de combinaison, qui représentent une date comprise entre le 1er janvier 100 et le 31 décembre 9999.
    Les dates sont enregistrées comme partie d'un nombre réel. Les valeurs à gauche de la virgule représentent la date, tandis que les valeurs à droite représentent le temps. Les valeurs négatives correspondent aux dates antérieures au 30 décembre 1899.

  4. #4
    Membre confirmé
    Inscrit en
    Août 2005
    Messages
    116
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 116
    Par défaut
    ok, merci.
    mais alors, pourquoi la date "31/12/2099" est -elle "out of range"?
    b.

  5. #5
    Expert confirmé
    Avatar de ThierryAIM
    Homme Profil pro
    Inscrit en
    Septembre 2002
    Messages
    3 673
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2002
    Messages : 3 673
    Par défaut
    a mon avis, c'est ton import qui foire à cause du format de la date dd/mm/yyy et dans Access c'est mm/dd/yyyy

    donc tu dois te retrouver le 12 du mois 31, et la y'a problème !

  6. #6
    Membre confirmé
    Inscrit en
    Août 2005
    Messages
    116
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 116
    Par défaut
    oui, c'est la premiere chose à laquelle j'ai pensé, mais mes paramètres regionaux sont bien corrects avec jj/mm/aaaa...
    merci de ton aide,
    a+
    b.

  7. #7
    Expert confirmé
    Avatar de ThierryAIM
    Homme Profil pro
    Inscrit en
    Septembre 2002
    Messages
    3 673
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2002
    Messages : 3 673
    Par défaut
    et tu le fais comment ton export ?
    Par code ?

    si oui, fais le voir

  8. #8
    Membre confirmé
    Inscrit en
    Août 2005
    Messages
    116
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 116
    Par défaut
    mais avec plaisir...!
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    Private Sub Command_ExportVariations_Click()
    Dim stdocname As String
    stdocname = "temp_projections"
    DoCmd.TransferSpreadsheet acExport, 5, stdocname, Me!Text_chemin3, True, "variations projections"
     
    End Sub
    c'est la table temp_projections qui contient les dates...

    b.

  9. #9
    Expert éminent


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Par défaut
    les autres dates exportées... corresponde bien à leur valeur dans la table... il n'y as pas d'invertion ? mois/jour?

  10. #10
    Membre confirmé
    Inscrit en
    Août 2005
    Messages
    116
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 116
    Par défaut
    les autres date (entre 2005 et 2007) sont correctement exportées (bon ordre, se sont des 31/12 aussi..!)
    b.

  11. #11
    Expert éminent


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Par défaut
    Citation Envoyé par borisa
    les autres date (entre 2005 et 2007) sont correctement exportées (bon ordre, se sont des 31/12 aussi..!)
    b.
    as-tu vérifier en changeant sous excel leur format d'affichage en du style

    31 décembre 2005

  12. #12
    Expert confirmé

    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 419
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 419
    Par défaut
    Citation Envoyé par ThierryAIM
    Je le remets encore une fois :
    Citation Envoyé par MSDN
    expression de date
    Toute expression pouvant être interprétée comme une date. Ceci comprend toute combinaison de littéraux de date, de nombres ou de chaînes ressemblant à des dates, et de dates retournées par des fonctions. Une expression de date est limitée aux nombres ou chaînes, sous toute forme de combinaison, qui représentent une date comprise entre le 1er janvier 100 et le 31 décembre 9999.
    Les dates sont enregistrées comme partie d'un nombre réel. Les valeurs à gauche de la virgule représentent la date, tandis que les valeurs à droite représentent le temps. Les valeurs négatives correspondent aux dates antérieures au 30 décembre 1899.
    oui bof essaye de mettre dans une cellule excel 01/01/1900 et en dessous tu fais -2 tu obtiendras ######## les date ou heures négatives sont affichées sous forme ########"
    par contre access accepte

  13. #13
    Expert confirmé
    Avatar de ThierryAIM
    Homme Profil pro
    Inscrit en
    Septembre 2002
    Messages
    3 673
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2002
    Messages : 3 673
    Par défaut
    Je n'y suis pour rien si les logiciels µsoft ne font pas correctement ce qui est écrit dans leur aide

  14. #14
    Expert confirmé

    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 419
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 419
    Par défaut
    je le sais bien que tu n'y es pour rien
    ce n'était pas toi la cible mais bills
    gates qui a trouvé un très bon système de représentation des dates mais qui est incapable de l'appliquer correctement à toutes les applications

  15. #15
    Membre confirmé
    Inscrit en
    Août 2005
    Messages
    116
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 116
    Par défaut
    bon, j'ai fais un petit test et les dates sont correctement exportées jusqu'au 31/12/2078 inclus, après elles sont "out of range". Je n'ai aucune idée d'où cela peut être parmaétré.
    Par aileurs, si je fais une Query à partir d'excel sur la table que je cherche à exporter depuis access, les dates sont parfaitement importées dans excel...
    si qqn a une idée (y compris Mr Gates...) elle est la bienvenue!
    a+
    b.

  16. #16
    Expert confirmé

    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 419
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 419
    Par défaut
    en fait
    31/12/2077= 65015.00
    31/12/2078= 65380.00

    et 2^15=32768 alors que 2^16=65536

    moralité la colonne qui recoit la valeur est positionnée sur décimal ou sur texte et non sur date heure

  17. #17
    Membre confirmé
    Inscrit en
    Août 2005
    Messages
    116
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 116
    Par défaut
    tres interessant ça! merci random.
    mais alors: comme j'exporte vers excel, dans un classeur vierge (donc avec un type de champ par défaut à priori), comment lui dire "ce sont des dates"? D'autant que dans la table access d'origine, les champs concernés sont bien de type date/time...
    merci,
    a+
    b.

  18. #18
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Par défaut
    J'ai fais ça sans pb

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Cells(1, 5).Value = Format("31/12/2098", "dd/mm/yyyy")
    J'essaie avec 66000

    A+

    Edit
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Cells(2, 5).Value = Format(66000, "dd/mm/yyyy")
    donne 09/11/2080

  19. #19
    Membre confirmé
    Inscrit en
    Août 2005
    Messages
    116
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 116
    Par défaut
    oui, mais tu fais ça dans excel, non?
    je pilote tout ça depuis access et voudrais donc définir le format de la colonne d'une feuille excel depuis Access.
    ça me parait une bonne solution de définir le type de champ avant l'export , mais y a t-il un moyen de faire ça dans le "transferspreadsheet"? ou bien faut-il necessairement ouvrir un fichier vierge, le bidouiller puis importer dedans les données?
    merci de votre aide,
    a+
    b.

  20. #20
    Membre confirmé
    Inscrit en
    Août 2005
    Messages
    116
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 116
    Par défaut
    bon je viens de retourner faire un tour sur cette excellente page : http://cafeine.developpez.com/access/tutoriel/excel/#LV
    et je vois donc qu'il est impossible de préciser une plage de cellule ou un formatage dans "transferspreadsheet" en export... donc je tente de prédéfinir le format avant l'export et advienne que pourra!
    à+
    b.[/code]

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. Réponses: 3
    Dernier message: 06/10/2014, 17h46
  2. Réponses: 2
    Dernier message: 15/08/2010, 16h20
  3. Insertion champ date en VBA dans Access
    Par spud96 dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 23/06/2010, 16h49
  4. datetime data type resulted in an out-of-range
    Par faamugol dans le forum ASP
    Réponses: 2
    Dernier message: 26/05/2004, 20h51
  5. [Interbase] [Access] les dates
    Par AnestheziE dans le forum InterBase
    Réponses: 17
    Dernier message: 26/11/2003, 14h40

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo