Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

liaison excel et access

F

fomy

Guest
Bonjour @ tous ,
Voilà mon problème :
J'ai un classeur Excel qui a pour but de gérer un parc info
Dans ce classeur, j'ai une feuille "user" qui contient les colonnes suivantes:
Nom | prénom | tél. | fonction | immeuble | bureau | etc …..
Bref quand je créer une liaison dans Access (clique droit  lier les tables )
Je sélectionne une feuille de mon classeur et a priori tout est bon sauf que
Le numéro de bureau est formater comme étant un nombre (eh alors ?) le
problème, c'est que ce n'est pas un nombre mais un texte car si la plupart des
bureaux sont effectivement référencés par des nombres, certain sont des 506 A
ou bien 4004 B bref comme le format est "numérique", des qu'il y a une lettre,
il me mets Nombre # (normal c'est pas un nombre 406 B).
alors comment faire ?

soit il faut que j'arrive à persuadé Access que c'est du texte. (j'y arrive pas)
Soit il faut que je modifie le fichier Excel (mais étant bourrée de macro ?? je préfère pas).
Soit une fois la liaison fait, je fais un copier - coller de la table liée dans une autre table ou
j'aurais la possibilité de modifier le format de "bureau". Mais cela implique de
refaire le copier coller dans l'autre sens et j'ai peur que cela ne fonctionne pas tip - top
et en plus quand je fais un copier - coller, il me récréer une liaison(j'y arrive pas)
soit, il y a un autre moyen de créer une liaison (bidirectionnel) entre une feuille Excel et une
table Access (je pensais au SQL) (je connais pas)


Merci d'avance
PS: toute autres propositions est bonnes à prendre.
 
S

sylvain

Guest
bonjour,

une solution idiote comme d'habitude : rajoute un _ à chaque numéro ça sera du texte et l'importation ne plantera pas.
Tu peux faire cela en créant une colonne supplémentaire :
=A1&"_"
et tu importes cette colonne dans access.
Dan access tu fais un rechercher remplacer du _

A+
 
C

chris

Guest
Sinon il faut que la premiere ligne contienne un numero de bureau non numerique.
Tu peux y mettre un numero bidon genre abcde que tu filtreras dans ACCESS si tu ne veux pas modifier l'ordre des lignes.
chris
 
F

fomy

Guest
Non, desole (bonne idée quand-meme) mais en fait dans la feuille excel,les bureaux sont recuperer grace a une formule, (extraction d'une autre table)je ne peux donc pas modifier le contenu de la feuille excel
 
C

chris

Guest
Il faut peut etre plus d'une ligne : il faudrait savoir comment ACCESS fait l'analyse.
Sinon en passant par un format texte (enregistrer sous en type texte) puis import dans ACCESS on peut redefinir le type de chaque champ.
Je n'ai jamais compris pourquoi ACCESS le propose sur les imports texte et pas sur les imports EXCEL.
Autre solution : utiliser l'astuce de sylvain en faisant preceder le numero de bureau d'une chaine puis realiser une requete sur la table importee ou liee pour eliminer ce prefixe et utiliser cette requete en lieu et place de la table pour les traitements access.
Chris
 
C

chris

Guest
Bizzare sur les versions que j'ai ici (excel 2000 et access 97 en version US)
une 1ere ligne avec 12a (ligne 2 excel) suffit à faire basculer vers le type texte alors que si je met 12a en ligne 10 le champ prend le type double.
Si ça marche ils uffit de mettre une ligne bidon en ligne 2 et tes formules en-dessous.
Tu pourras éliminer ou filtrer cette ligne dans ACCESS.
Chris
 
F

fomy

Guest
oui mais exporter le xls en txt puis ds une table de mdb puis le chemin inverse, je m'engage ds une base qui sera longue a traite et pas stable du tout.bref c'est galere
 
F

fomy

Guest
pour info, la premiere ligne de la colonne f c'est bureau avec un tri automatique, la deuxieme ligne c'est un 518/A....
et meme en mettant DONOTOUCH a chaque cases en premieres lignes a mrche pas
 

Discussions similaires

Réponses
4
Affichages
542
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…