Copier colonnes dans DB

Adil.costing

XLDnaute Junior
Bonjour a tous,

J' ai un petit problem est j' espere qu ' il y aura quelqu 'un qui peut m'aider..

C un fichiers avec beaucoup des feuilles et je veut copier des informations ou des colonnes specific dans la base de donnees sur la base du nom de la case

Voila dans l exemple ci joins il y a 7 feuilles (T33,T43,T52,T57,T81,DIM & Berlei)

Les infos que veut copier sur data base:

Colonne 'A' doit prendre le nom de la feuille
Colonne 'B' season
'C' Style number
'D' description
'E' Agreed Fob et 'F' Date

Merci d' avance de votre aide

Salut
Adil
 

Pièces jointes

  • Test extract..zip
    46.2 KB · Affichages: 23

Gael

XLDnaute Barbatruc
Re : Copier colonnes dans DB

Bonjour adil,

Ci-joint un essai avec une requête qui utilise MsQuery.

C'est un système très pratique, simple et rapide. Pour ta demande, il présente quelques inconvénients:

* sur les 7 feuilles, pas de problème mais s'il y en a beaucoup plus, la requête sera complexe et les modifications plus complexes.

* Dans la feuille résultats ("Database") tu peux manipuler les données pour des tris ou sélections mais si tu insères des commentaires, ils restent liés à la cellule et risquent de ne plus correspondre lors de l'actualisation.

Pour le test, j'ai supprimé les premières lignes de chaque feuille et ajouté une colonne avec le n° de feuille pour le récupérer dans la Database. J'ai également suprimé quelques lignes de la feuille T57 pour réduire la taille du fichier.

Fonctionnement:
Tu modifies les feuilles Txx DIM et Berlei en changeant les données, ajoutant ou supprimant des lignes mais sans changer les en-têtes dont les titres servent de référence pour la requête.

Une fois les modifs terminées, tu vas dans la feuille Database, tu fais un clic droit n'importe où dans les données et tu fais "Actualiser les données" La database s'actualise et doit refléter le nouveau contenu de toutes les feuilles.

Si cela te paraît intéressant, je t'expliquerai ensuite la façon de modifier la requête pour ajouter d'autres feuilles ou champs.

L'actualisation peut être réalisée dans une macro pour l'associer à des tris complémentaires si nécessaire.

@+

Gael
 

Pièces jointes

  • Test extract.zip
    45.1 KB · Affichages: 26

Adil.costing

XLDnaute Junior
Re : Copier colonnes dans DB

Merci Gael

Je ne pense pas que cette requête va marche! le fichier original est beaucoup plus grand avec un total de 15 feuilles pour l' instant et qui va etre augmenter avec la nouvelle saison mais je suis intéresse de comprendre comment modifier la requête et actualiser les infos je peut l' utiliser a des autres cas seleument je ne savais pas comment faire pour pour transmetre ce que ta fait a un autre fichier..

Merci encors
Adil
 

Gael

XLDnaute Barbatruc
Re : Copier colonnes dans DB

Bonjour adil,

Finalement, j'ai fait dans le fichier joint une macro très simple qui va cumuler toutes les données dans la feuille Data Base.

La macro efface d'abord le contenu existant et tient compte de toutes les feuilles existantes (Data Base doit être la dernière feuille), il suffit de la lancer pour tout remettre à jour.

Je pense que cela répond mieux à ton problème.

@+

Gael
 

Pièces jointes

  • Test extract_V2.zip
    46.6 KB · Affichages: 11

Adil.costing

XLDnaute Junior
Re : Copier colonnes dans DB

Merci Gael c maghifique

Il y a un petit truc si c possible de le changer

Le macro s' excute dans la feuille selectioner.. est ce que possible de limiter ce marco pour modifier seleument la derniere feuille (DB) meme si je l' excute ne selectinant une autre feuille?

Merci encor

Salut
Adil
 

Gael

XLDnaute Barbatruc
Re : Copier colonnes dans DB

Bonjour Adil,

C'est modifié dans la version ci-joint. J'ai testé avec beaucoup de feuilles et ça marche très bien. L'important est que la feuille "Data Base" soit la dernière feuille.

Dans cette version, tu peux sélectionner n'importe quelle feuille avant de lancer la macro puisque celle-ci se positionne toujours sur data Base avant de supprimer les données existantes.

Tiens-moi au courant.

@+

Gael
 

Pièces jointes

  • Test extract_V3.zip
    47.3 KB · Affichages: 15

Adil.costing

XLDnaute Junior
Re : Copier colonnes dans DB

Bonjour Gael,

J’ai essaye le macro ça marche bien mais avec un bug

For j = 3 To UBound(tablo)??

J’ai attaché print screen

Aussi est ce que vous pouvez modifier le macro d’une façon qu’il ignore la 1er feuille je l’utilise pour le summary

Merci encor
Adil
 

Gael

XLDnaute Barbatruc
Re : Copier colonnes dans DB

Bonsoir Adil,

Pour commencer à la deuxième feuille, tu remplaces F=1 par F=2 dans l'instruction:

Code:
For F = 2 To Worksheets.Count - 1

Pour le bug, cela peut se produire s'il rencontre une feuille où il n'y a aucune donnée (ou seulement la ligne 7) ou si la structure est différente.

Si la macro s'arrête sur l'instruction:

Code:
For j = 3 To UBound(tablo)

tu regardes quelle feuille est sélectionnée à ce moment et tu m'envois un fichier avec cette feuille.

@+

Gael
 

Adil.costing

XLDnaute Junior
Re : Copier colonnes dans DB

Merci Gael,
Ca fonction tres bien...c maghifique je que vous avez fait (you have made my life a lot a lot easier)

Une dernier chose de colorer les information qui en ete modifier une semaine avant

IE
Je vais executer cette macro une fois par semaine et je veut savoir les modification qui en etait effectuer sans controler tout les fichiers peut une couleur selement dans la colonne (Agreed FOB)

Merci encors

Adil
 

Discussions similaires

Statistiques des forums

Discussions
311 997
Messages
2 084 455
Membres
102 581
dernier inscrit
Michou