Skwi
XLDnaute Nouveau
Sous ce titre qui peut parraitre assez simple se cache une question un peu plus complexe :
J'ai un fichier excel contenant mes données, rangées en colonnes selon ma base access.
Ma base access contient les noms des champs (qui se retrouvent également à la ligne 1 du fichier excel) avec les types associés que je souhaite.
Lors de l'import je dois faire face à plusieurs problèmes :
1) Certains champs sont vides, notamment des dates, lors de l'import il convertit bien les dates renseignées en date, mais m'enregistre également une erreur de conversion des dates inexistantes.
A la limite ce problème est juste gênant car il me créé une nouvelle table contenant les erreurs, j'ai juste à ne pas en tenir compte. Mais si vous avez une solution je suis preneur.
2) Excel ne semble pas connaitre le type booléen; J'ai une colonne contenant les valeurs Oui/Non, lors de l'importation ACCESS ne me met pas d'erreur mais met tous les champs à faux. J'ai essayé de remplacer les Oui/Non par VRAI/FAUX -1/0 1/0 mais à chaque fois j'obtiens que des cases décochées sous ACCESS.
J'ai testé la manip inverse, renseigner dans ACCESS puis exporter, j'obtiens bien un fichier excel avec des VRAI lorsque la case est cochée dans ACCESS et des FAUX sinon. Lorsque je regarde la propriété de la cellule il n'y a rien de particulier, et si je copie colle une case vrai sur une case faux, que j'enregistre et que je ré-importe dans ACCESS, les nouvelles cases VRAI restent décochées, mais les anciennes cases VRAI restent cochées.
Une solution envisageable mais super crade serait de garder le type Texte (codé sur 8 bits) à la place de convertir en booléen (1 bit), ce qui fait une grande perte en terme d'optimisation.
Donc voila, je ne comprends pas d'où vient le problème, je vais continuer de faire des tests et vous tiens informé si je trouve la solution.
Merci,
Skwi
Edit :
Bon j'ai refais des tests et je devais être fatigué hier soir, je ne vois pas d'autres alternatives.
Pour la 2) le solution que j'ai trouvé c'est : convertir tous les Oui (de mon fichier excel) en VRAI et tous les Non en FAUX, si j'ajoute ça dans une table déjà crée avec le type booléen, ça me coche les cases où la valeur est VRAI, si la table est inexistante ça me met -1 pour VRAI et 0 pour FAUX, toujours de type booléen, et c'est ce que je voulais.
Par contre il essaye toujours de convertir un champ vide en date dans ma colonne contenant des dates.
J'ai un fichier excel contenant mes données, rangées en colonnes selon ma base access.
Ma base access contient les noms des champs (qui se retrouvent également à la ligne 1 du fichier excel) avec les types associés que je souhaite.
Lors de l'import je dois faire face à plusieurs problèmes :
1) Certains champs sont vides, notamment des dates, lors de l'import il convertit bien les dates renseignées en date, mais m'enregistre également une erreur de conversion des dates inexistantes.
A la limite ce problème est juste gênant car il me créé une nouvelle table contenant les erreurs, j'ai juste à ne pas en tenir compte. Mais si vous avez une solution je suis preneur.
2) Excel ne semble pas connaitre le type booléen; J'ai une colonne contenant les valeurs Oui/Non, lors de l'importation ACCESS ne me met pas d'erreur mais met tous les champs à faux. J'ai essayé de remplacer les Oui/Non par VRAI/FAUX -1/0 1/0 mais à chaque fois j'obtiens que des cases décochées sous ACCESS.
J'ai testé la manip inverse, renseigner dans ACCESS puis exporter, j'obtiens bien un fichier excel avec des VRAI lorsque la case est cochée dans ACCESS et des FAUX sinon. Lorsque je regarde la propriété de la cellule il n'y a rien de particulier, et si je copie colle une case vrai sur une case faux, que j'enregistre et que je ré-importe dans ACCESS, les nouvelles cases VRAI restent décochées, mais les anciennes cases VRAI restent cochées.
Une solution envisageable mais super crade serait de garder le type Texte (codé sur 8 bits) à la place de convertir en booléen (1 bit), ce qui fait une grande perte en terme d'optimisation.
Donc voila, je ne comprends pas d'où vient le problème, je vais continuer de faire des tests et vous tiens informé si je trouve la solution.
Merci,
Skwi
Edit :
Bon j'ai refais des tests et je devais être fatigué hier soir, je ne vois pas d'autres alternatives.
Pour la 2) le solution que j'ai trouvé c'est : convertir tous les Oui (de mon fichier excel) en VRAI et tous les Non en FAUX, si j'ajoute ça dans une table déjà crée avec le type booléen, ça me coche les cases où la valeur est VRAI, si la table est inexistante ça me met -1 pour VRAI et 0 pour FAUX, toujours de type booléen, et c'est ce que je voulais.
Par contre il essaye toujours de convertir un champ vide en date dans ma colonne contenant des dates.
Dernière édition: