Calcul Excel impossible suite importation document Access

Fermé
mablansh Messages postés 20 Date d'inscription mardi 30 avril 2013 Statut Membre Dernière intervention 27 juin 2013 - Modifié par Ricky38 le 30/04/2013 à 13:47
mablansh Messages postés 20 Date d'inscription mardi 30 avril 2013 Statut Membre Dernière intervention 27 juin 2013 - 1 mai 2013 à 13:54
Bonjour à tous!

Voici une question qui va en stopper plus d'un :

Je travaille sur un fichier Excel qui doit effectuer des calculs à partir de tables importées d'un document Access. Le fichier Access est mis à jour sur un serveur, et les données importées dans Excel se mettent à jour automatiquement toutes les minutes.

Seulement je ne peux pas effectuer les opérations désirées dans Excel.
A cause du format importé?...

Les données provenant d'Access sont certainement au format texte, alors que les données devraient être des chiffres ou des temps (hh:mm:ss.000).
Je ne peux pas faire la somme d'une colonne entière par exemple (somme = 0 ou 00:00:00.000). Est-ce à cause de l'onglet en haut de chaque colonne?

Je pense plutôt que cela vient du format des cellules, mais même en les modifiant, le résultat est le même...
J'ai changé le format des cellules de façon classique et ça ne marche pas.
J'ai essayé de convertir les données avec le bouton convertir dans l'onglet données. Dans ce cas ça marche, mais dès que le fichier s'actualise (au bout d'une minute) les colonnes perdent leur format et je me retrouve avec (somme = 0 ou 00:00:00.000).

Si vous avez une idée je serais vraiment content. je peux également vous faire parvenir les fichiers si vous souhaitez y voir plus clair.

Merci!
A voir également:

4 réponses

Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 394
Modifié par Vaucluse le 30/04/2013 à 14:09
Bonjour
essayez:
sélectionnez une cellule vide
copier la
sélectionnez le champ de valeurs
clic droit / collage spécial / Addition.
peut être cela pourra t il numériser vos valeurs, mais ce n'est pas sur.
Si ça ne convient pas dites nous comment elles sont écrites après le transfert.
crdlmnt

Errare humanum est, perseverare diabolicum
1
mablansh Messages postés 20 Date d'inscription mardi 30 avril 2013 Statut Membre Dernière intervention 27 juin 2013
30 avril 2013 à 14:59
Bonjour,

Merci de la réponse.
Dans le cas que vous me présentez, cela numérise bien mes valeurs.
A la place d'un format hh:mm:ss:000 (ex : 00:36:52:684) j'obtiens un format numérique (les nombres sont à droite) de type 0.000658497.

Par contre je peux additionner ma colonne...
Ça avance petit à petit...

Déjà merci pour ce coup de pouce.
Seb
0
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 394
30 avril 2013 à 15:04
Alors c'est déjà ça
pour complèter formatez vos cellules après l'opération en:
format personnalisé/ Type:
[hh]:mm:ss,000
vous devriez retrouver votre affichage
crdlmnt
0
mablansh Messages postés 20 Date d'inscription mardi 30 avril 2013 Statut Membre Dernière intervention 27 juin 2013
30 avril 2013 à 15:45
En effet je retrouve bien mon affichage, mais il y a un HIC!

Après avoir appliqué cela à 11 colonnes,
Un joli message apparaît quand je commence à appliquer cela à plusieurs colonnes (même en n'en sélectionnant qu'un seule):

"Excel ne peut pas terminer cette tache avec les ressources disponibles. Sélectionnez moins de données ou fermez des applications. Voulez vous continuer sans annuler?"

Et pour cause, Excel applique ça au maximum qu'il peut, c'est à dire pour moi 1048576 lignes! (alors que 2000 m'auraient suffies). Sachant que je dois faire ça pour 481 colonnes (sans compter les opérations derrière)...

Y aurait-il une solution moins "gourmande en ressources"?

Reste à savoir une chose essentielle que je ne sais pas, peut-être le savez-vous :
Je travail actuellement sur la mise au point de ce fichier Excel à partir d'une base de données Access finie (c'est à dire qu'elle n'est pas mise à jour, mais je simule cette mise à jour quand même), dont le chemin d'accès est dans C: mes documents.
Est ce que quand je vais aller modifier le chemin d'accès dans MSQuery pour lui indiquer le changement de source cela va-t-il effacer tout ce joli travail? ou si je me déconnecte de la source de données?

Merci, cordialement
Seb
0
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 394
30 avril 2013 à 15:56
Pour faire au plus simple, avant le collage spécial, sélectionnez uniquement le champ concerné.
vous pouvez le faire rapidement:
sélectionnez la case adresse à gauche de la barre de formule
entrez les limites du champ exemple: B1:G2000
touche Enter
tout le champ est sélectionné et seul ce champ sera traité par le collage.

Quant à la chose essentielle je ne sais pas non plus... tout ce que je peux vous conseiller si ça ne fonctionne pas, c'est d'alimenter votre fichier via une feuille liée,et de travailler ensuite sur une autre feuille ou vous aurez inscrit sur le champ utile la formule:
=A1+0 de façon à numériser automatiquement votre tableau

A moins que vous chargiez vos données via VBA et que l'opération puisse être inscrite dans le code... mais là, moi je décroche.. suis trop limité en VBA.

Bonne chance, bonne route
Crdlmnt
0
mablansh Messages postés 20 Date d'inscription mardi 30 avril 2013 Statut Membre Dernière intervention 27 juin 2013
30 avril 2013 à 17:19
Merci de cette astuce!

Par contre je n'ai pas tout compris dans la dernière partie de votre message :

"... tout ce que je peux vous conseiller si ça ne fonctionne pas, c'est d'alimenter votre fichier via une feuille liée,et de travailler ensuite sur une autre feuille ou vous aurez inscrit sur le champ utile la formule:
=A1+0 de façon à numériser automatiquement votre tableau "

Mais ça semble intéressant...
Merci. Seb
0
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 394
Modifié par Vaucluse le 30/04/2013 à 17:26
... disons pour l'exemple:
que vous alimentez via votre fichier d'origine une feuille nommée base qui contient des valeurs de A2 à C1000
vous pouvez
utilisez une autre feuille pour travailler vos données, cette feuille étant documentée en continue à partir de la feuille base avec le formule en A2:
=Base!A2+0 à reproduire en correspondance dans tous les champs reçus du fichier d'origine de A2 à C1000 dans l'exemple.
La feuille Base sera alimentée et vous travaillerez avec une feuille qui contient les correspondances numérisées en continu
Mais bien sur tout dépend de ce que vous faites avec vos données.
crdlmnt
0
mablansh Messages postés 20 Date d'inscription mardi 30 avril 2013 Statut Membre Dernière intervention 27 juin 2013
1 mai 2013 à 13:54
Bon juste pour informer les futurs lecteurs :

La première technique du collage spécial par addition ne fonctionne pas lorsqu'on réactualise nos données en temps réel. Plus haut vous avez pu lire le contraire, mais mon fichier Excel s'était déconnecté de sa base de données.

Par contre, la technique de la feuille liée que m'a gentiment proposé Vaucluse fonctionne presque.
Les données sont bien copiées et numérisées dans la feuille liée.
Mais lorsque je change mes paramètres d'importation de données (ex : je ne veux plus les informations concernant le client 95, mais le client 50), les formules de la feuille liée se décalent vers le haut.

Je m'explique. Normalement mon fichier est paramétré pour copier les infos des cellules A2 à N2000 (A2:N2000) de la feuille Base. La formule que je doit étendre à ma feuille liée est donc (pour la case A2) =Base!A2+0 et ceci à étendre pour toutes les cases qui nous intéressent.
Quand je change mes paramètres, les formules de la feuille liée importent les nouvelles infos à partir de la ligne 63, si précédemment j'avais importé que 63 lignes avec mes anciens critères de sélection.

Ce qu'il faudrait pour que la technique de la feuille liée soit parfaite, c'est que les formules ne se décalent pas. Il faudrait que la feuille liée prenne une sorte de photo de la feuille base quelles que soient les modifications apportées à la feuille Base.
0