Excel_2 tblx en 1 meme libéllés ordres diff
julien_débutant_sur_excel
-
michel_m Messages postés 18903 Date d'inscription Statut Contributeur Dernière intervention -
michel_m Messages postés 18903 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
J'extrais régulièrement des informations de deux bases de données différentes, que je dois assembler.
Comme j'utilise pour cela le même outil j'obtiens sur Excel :
Deux tableaux (sur des feuilles différentes) ayant la même nature d'information et les mêmes libéllés de colonnes.
Cependant, les colonnes ne sont pas du tout dans le même ordre.
Je souhaite effectuer un manip la plus rapide possible, à fin d'assembler le tout dans un meme tableau.
Ainsi je pourrais exploiter une base de donnée homogène, pour des tableaux croisés dynamiques notamment.
Le principe est donc : de reconnaitre deux colonnes ayant le même ilibéllé, se trouvant sur deux feuilles différentes et de mettre à la suite les informations de ces deux colonnes dans uen même colonne.
PS: plus de 80 colonnes et ordres complétement différents, mais libéllés identiques.
Si vous parvenez à m'aider vous me ferrez gagner un paquet de temps !
Alors un grand merci d'avance !
J'extrais régulièrement des informations de deux bases de données différentes, que je dois assembler.
Comme j'utilise pour cela le même outil j'obtiens sur Excel :
Deux tableaux (sur des feuilles différentes) ayant la même nature d'information et les mêmes libéllés de colonnes.
Cependant, les colonnes ne sont pas du tout dans le même ordre.
Je souhaite effectuer un manip la plus rapide possible, à fin d'assembler le tout dans un meme tableau.
Ainsi je pourrais exploiter une base de donnée homogène, pour des tableaux croisés dynamiques notamment.
Le principe est donc : de reconnaitre deux colonnes ayant le même ilibéllé, se trouvant sur deux feuilles différentes et de mettre à la suite les informations de ces deux colonnes dans uen même colonne.
PS: plus de 80 colonnes et ordres complétement différents, mais libéllés identiques.
Si vous parvenez à m'aider vous me ferrez gagner un paquet de temps !
Alors un grand merci d'avance !
A voir également:
- Excel_2 tblx en 1 meme libéllés ordres diff
- Libellés gmail - Guide
- Comment mettre en ordre croissant sur excel - Guide
- Dans le document à télécharger, les références des pièces détachées sont affichées par pays, puis par type de pièces. réorganisez le document pour avoir : les pays dans l'ordre alphabétique : allemagne, espagne, france et italie ; et pour chaque pays, les pièces d'auto, de bateau et de moto dans cet ordre. quelle est la référence de la pièce en ligne 500 ? ✓ - Forum Windows
- Ajoutez à la liste de contacts ana le goff, inscrite le 27 novembre 2015, dans la catégorie i. puis triez les contacts en les classant : par ordre alphabétique de leur nom de famille (critère principal), puis par date du plus récent au plus ancien (critère secondaire). quel mot apparaît à la verticale dans la colonne "catégorie" entre les lignes 200 et 209 (en-tête compris) ? ✓ - Forum Word
- Diff doc - Télécharger - Gestion de fichiers
4 réponses
bonjour,
J'extrais régulièrement des informations de deux bases de données différentes
c'est peut-être au niveau de cette extraction qu'il faudrait agir...
donc, quel est le logiciel base de données ,
quel est ce même outil ?
Met un extrait de ces 2 feuilles (quelques lignes suffiront) pour qu'on puisse étudier le problème par une méthode ou une autre. Dis nous quand m^me combien de lignes environ sont en voyées par les 2 bases
pour envoyer
https://www.cjoint.com/
et tu copes le lien proposé par le message
J'extrais régulièrement des informations de deux bases de données différentes
c'est peut-être au niveau de cette extraction qu'il faudrait agir...
donc, quel est le logiciel base de données ,
quel est ce même outil ?
Met un extrait de ces 2 feuilles (quelques lignes suffiront) pour qu'on puisse étudier le problème par une méthode ou une autre. Dis nous quand m^me combien de lignes environ sont en voyées par les 2 bases
pour envoyer
https://www.cjoint.com/
et tu copes le lien proposé par le message
Merci pour votre réponse rapide,
Il s'agit d'une base de donnée du type "cube à trois dimension".
Nous avons retourné le probleme dans tous les sens, malheureusement à la base ca n'est pas fait pour des exportation en tableur.
Les tableaux sous Ecxel se présentent comme cela:
A B C D
1 Date Poste Entreprise Solde
2 01/01/2001 X L 4
3 01/01/2001 Y M 5
4 01/01/2001 Z N 6
A B C D
1 Entreprise Poste Solde Date
2 L X 4 01/01/2001
3 M Y 5 01/01/2001
4 N Z 6 01/01/2001
Et je souhaite "juste" compiler ceci dans une meme base homogene (81 colonnes et une moyenne de 6000 lignes)
D'avance merci !
Il s'agit d'une base de donnée du type "cube à trois dimension".
Nous avons retourné le probleme dans tous les sens, malheureusement à la base ca n'est pas fait pour des exportation en tableur.
Les tableaux sous Ecxel se présentent comme cela:
A B C D
1 Date Poste Entreprise Solde
2 01/01/2001 X L 4
3 01/01/2001 Y M 5
4 01/01/2001 Z N 6
A B C D
1 Entreprise Poste Solde Date
2 L X 4 01/01/2001
3 M Y 5 01/01/2001
4 N Z 6 01/01/2001
Et je souhaite "juste" compiler ceci dans une meme base homogene (81 colonnes et une moyenne de 6000 lignes)
D'avance merci !
OK, je vois a peu près le topo
intéressant!
le principe serait de
1/ construire un tableau VBA (array) à 2 dimensions: titre et numéro de colonne pour la 1° feuille
2/ rechercher la colonne (par ex date) dans la feuille 2 avec son numéro de colonne et de la copier sous la dernière ligne utilisée de date en feuil1 (on connait le numéro de colonne par le tablau -array)
Je regarderai ça à la fraiche demain à moins qu'avec ce principe, tu te sentes "capdel'faire" (tu le dis, merci)
intéressant!
le principe serait de
1/ construire un tableau VBA (array) à 2 dimensions: titre et numéro de colonne pour la 1° feuille
2/ rechercher la colonne (par ex date) dans la feuille 2 avec son numéro de colonne et de la copier sous la dernière ligne utilisée de date en feuil1 (on connait le numéro de colonne par le tablau -array)
Je regarderai ça à la fraiche demain à moins qu'avec ce principe, tu te sentes "capdel'faire" (tu le dis, merci)
re,
important : les premiers champs sont en colonne A
ci dessous macro proposée à adapter
maquette de travail:
https://www.cjoint.com/?fzv26RY5Yi
important : les premiers champs sont en colonne A
ci dessous macro proposée à adapter
maquette de travail:
https://www.cjoint.com/?fzv26RY5Yi
Option Explicit
Sub ranger_col()
Dim der_col As Byte, lig_vid As Long
Dim tablo
Dim cptr As Byte, col As Byte
Dim der_lig2 As Long
'initialisation
With Sheets("maitre")
der_col = .Range("IV1").End(xlToLeft).Column
lig_vid = .Range("A65536").End(xlUp).Row + 1
'memorise les noms de champ feuille maitre
tablo = .Range(.Cells(1, 1), .Cells(1, der_col))
End With
'rcherche la position des champs dans feuille second
With Sheets("second")
'nbre de ligne feuille second
der_lig2 = .Range("A65536").End(xlUp).Row
Application.ScreenUpdating = False
For cptr = 1 To der_col
'recherche la colonne du champ renvoyé par le compteur du tablo
col = Application.Match(tablo(1, cptr), .Range(.Cells(1, 1), .Cells(1, der_col)), 0)
'copie la colonne dans maitre
.Range(.Cells(2, col), .Cells(der_lig2, col)).Copy Sheets("maitre").Cells(lig_vid, cptr)
Next
End With
End Sub