Problème de fusion de fichiers

sylkan

XLDnaute Nouveau
Bonjour à toutes et tous!

Ca commence à faire pas mal de jours que je traîne sur un blème de consolidation ou fusion!

Bon, j'expose comme je peux :

Je désire créer un classeur indépendant (j'y tiens) à partir de 1 à C classeurs (variable).
Chaque classeur contient 1 feuille.
Cette feuille contient de 1 à L lignes (variable avec un maximum 14 lignes ).
Chaque ligne comporte 5 cellules.
En gros, j'ai un certain nombre de bons de commandes (nombre variable par mois) chacun de ces bons correspond à un classeur.
Tt les classeurs sont dans un même répertoire nommé : 200609
Chaque classeur nommé contient une feuille nommée "cde" et sur chaque feuille, il y a un nombre variable (1 à 14 lignes mais au moins une) de ligne(s) détaille(s).
Toutes les commandes du mois se trouvent dans un répertoire. Pour septembre : 200609; Pour octobre : 200610, etc...
Je souhaite reprendre chaque ligne détail de chaque feuille de chaque classeur pour en faire un nouveau classeur excel que je pourrai triturer dans tout les sens. Sur chaque ligne détaille (5 colonnes), j'aimerai en plus prendre le n° de commande ainsi que la date de la commande venant de l'entête de la commande.

Pour l'exemple, je joins 3 bons de commande:
http://www.forum-openoffice.org/ci-joint/fichier/2006/10/12-082840.xls
http://www.forum-openoffice.org/ci-joint/fichier/2006/10/12-082926.xls
http://www.forum-openoffice.org/ci-joint/fichier/2006/10/12-082952.xls
Pour le classeur de sortie, je n'ai pas de contraintes, il faut juste qu'il y ai le n° du bon de cde, la date et les 5 colonnes par ligne détail.

J'imagine qu'il faut effectivement faire du Vba, et bonjour la programmation! je suis débutant en excel, quand au vba, mon niveau n'est même pas homologué!

Il est impossible que je sois le 1er et le seul à avoir à traiter ce genre de blème!
J'ai bien commencé par faire des recherches, mais, les posts qui pourraient être intéressant sont vieux comme mes robes et les exemples ne sont plus disponible;

Alors, le défit reste à relever!
Encore merci d'avance
 

sylkan

XLDnaute Nouveau
Re : Problème de fusion de fichiers

Bonjour Eric!

C'est encore le boulet qui te dérange :confused:

J'ai compris les points 1 et 2 de ton dernier post , Mais je butte sur le point 3.

J'ai changé la ligne :
ActiveSheet.Paste
Par celle que tu indiques :
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks_:=False, Transpose:=False
(j'ai repris le code par un copier/coller)

Et excel sort une erreur sur cette ligne :
"erreur d'exécution 1004"

A part ça, l'enregistrement de mes lignes est parfait et conforme à ma demande!
Le seul point noir, le remplacement des formules par leurs valeurs calculées!

Bref, tu as vraiment eu à faire au boulet du jour mais sur plusieurs jours!
Merci encore pour ta patience.
 

ERIC S

XLDnaute Barbatruc
Re : Problème de fusion de fichiers

Bonjour

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False

le _ indique un saut à la ligne, à supprimer

le mieux est que tu fasses l'essai avec l'enregistreur de macro

tu ouvre un classeur vierge
tu mets =A1 en A2
tu ouvres l'enregistreur
tu copies
tu sélectionnes A4
collage spécial valeurs
tu fermes l'enregistreur

tu auras un code exact car selon les versions d'excel, toutes les options ne sont pas disponibles (le transpose je crois par exemple)
 

sylkan

XLDnaute Nouveau
Re : Problème de fusion de fichiers

Re

Comme tu le préconises, j'ai créé une macro avec l'enregistreur (pas triste) bref la seule différence entre ta ligne et celle de l'enregistreur (en souligné)
Selection.PasteSpecial Paste:=xlPastValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False

L'enregistreur ne donne pas la partie soulignée !

Et le résultat est identique, l'erreur 1004 et Cette opération requiert que les cellules fusionées soient de taille identique

Je me suis permis de rajouter par des copier/coller une feuille base code et tarif (tel que dans mes commandes)
Est-il possible à partir du code colonne A3 à Al de la feuille "données1" de lier la feuille "base code et tarif" colonne A2 à Afindetable pour récuperer le libellé (C2 à Cfinderable), le code (B2 à Bfinderable) et le PU (E2 à Efinderable)
http://www.forum-openoffice.org/ci-joint/fichier/2006/10/21-012457.xls

Selon que l'une ou l'autre solution est la plus facile à mettre en place
@+
 

ERIC S

XLDnaute Barbatruc
Re : Problème de fusion de fichiers

re

pas trop le temps mais effectivement tu as les colonnes B & C de tes tableaux qui sont fusionnées

donc la solution consiste à conserver ton paste dans un premier temps et ensuite de sélectionner une à une les colonnes à formules et faire un copier collage spécial (par macro évidemment)

je ne sais pas si j'aurai le temps ce WE


un peu de temps, alors
 

Pièces jointes

  • recueillignescommandes2.zip
    13.1 KB · Affichages: 17
Dernière édition:

ERIC S

XLDnaute Barbatruc
Re : Problème de fusion de fichiers

re

Pour les fichiers il vaut mieux mettre le fichier sur ce forum (xls ou zip max 50ko) sinon pour les consultations futures, la trace aura disparu.

nommer la liste
insertion nom définir

produits
=DECALER('base code et tarif'!$A$2;;;NBVAL('base code et tarif'!$A:$A)-1)

sélectionner A25:A38 dans feuille cde

données validation liste

=produits
 

sylkan

XLDnaute Nouveau
Re : Problème de fusion de fichiers

Bien le bonjour Eric

Bon, là, tu ne vas pas être content de moi !

J’ai essayé de faire le bout de macro pour récupérer les 3 colonnes correspondant aux formules ! et j’arrive au même résultat que ce que tu m’as fourni ! Mais j’obtiens toujours un #ref !
Et c’est là que tu ne vas pas être content, j’ai fait le liens avec la feuille que j’ai ajouté (base code et tarif ) et j’ai utiliser la formule :
=SI(A3<>"";RECHERCHEV(A3;'base code et tarif'!1:65536;3;FAUX);"") ou le 3 représente la désignation,
=SI(A3<>"";RECHERCHEV(A3;'base code et tarif'!1:65536;2;FAUX);"") ou le 2 représente le conditionnement,
=SI(A3<>"";RECHERCHEV(A3;'base code et tarif'!1:65536;5;FAUX);"") ou le 5 correspond au prix unitaire.
Et là, ça fonctionne (enfin !!!) pour la 1ère ligne car, quand je tire sur la petite croix en bas à droite de la cellule pour reproduire sur les lignes suivantes, la formule se transforme en :
=SI(A4<>"";RECHERCHEV(A4;'base code et tarif'!#REF!;3;FAUX);"")
Bon, autant dire que j'aurai préféré ta solution!
Mais, puisque tu préfères passer tes we loins de moi :eek:
Tout ça pour dire que maintenant, j'ai une solution qui est sauvegardée et qui peut-être une roue de secours mais que je compte encore sur toi pour ce que je n'ai pas réussi à mettre en place
Passe un bon WE!
 

sylkan

XLDnaute Nouveau
Re : Problème de fusion de fichiers

Bien le bonjour Eric!

Ben, je t'explique pas ton passage! :)

Alors que "ma" solution était complétement bidon! ( heureusement, un moment de honte est vite passé :cool: )

Ton passage express à tout reglé de mon problème! je n'ai plus aucun #ref ! ( pour une histoire à 2$ ( $1:$65536) )

Je ne sais pas si un flag existe pour indiquer qu'un blème est reglé sur le forum, mais pour moi celui-ci est terminé!

Ne compte pas sur moi pour dire que je n'aurai plus besoin de toi pour d'autres problème!:D
Tu m'as tiré une sacré épine du pied.
Encore un très grand merci et bravo pour ta disponibilité!
 

Discussions similaires

Statistiques des forums

Discussions
312 236
Messages
2 086 479
Membres
103 232
dernier inscrit
logan035