Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

comment insérer dans un tableau, les lignes d'un second tableau

7 réponses
Avatar
Magali
Bonsoir à tous,
j'ai un premier tableau avec des informations en lignes (matricule, nom,
prénom....), et un second avec d'autres information. Il peut avoir
contrairement au 1er plusieur ligne avec le même matricule.
le 1er tableau doit resté tel quel, les informations sont classées par
société, par section, puis par ordre alphabétique. Ma question, comment sans
passer par le tri (qui va changer la sturucture du tableau 1), ni par le
tableau croisé dynamique (les noms de sociétés ne sont pas exploitables), ni
par la recherche (elle revoit les informations de la première ligne du
critère trouvé) arriver à insérer la ou les lignes du 2nd tableau, sous la
ligne du même matricule du tableau 1.
Ouf, pas facile d'être explicite .
Merci d'avance
magali

7 réponses

Avatar
alexandre-dit le jeune
Bonjour,
pouvez-vous envoyez un fichier par cjoint s'il vous plaît?
Cordialment,
celui qui demande toujours un exmple-Alexandre

"Magali" a écrit dans le message de
news:
Bonsoir à tous,
j'ai un premier tableau avec des informations en lignes (matricule, nom,
prénom....), et un second avec d'autres information. Il peut avoir
contrairement au 1er plusieur ligne avec le même matricule.
le 1er tableau doit resté tel quel, les informations sont classées par
société, par section, puis par ordre alphabétique. Ma question, comment
sans
passer par le tri (qui va changer la sturucture du tableau 1), ni par le
tableau croisé dynamique (les noms de sociétés ne sont pas exploitables),
ni
par la recherche (elle revoit les informations de la première ligne du
critère trouvé) arriver à insérer la ou les lignes du 2nd tableau, sous la
ligne du même matricule du tableau 1.
Ouf, pas facile d'être explicite .
Merci d'avance
magali


Avatar
FFO
Salut Magali

Je te propose une solution macro avec ce code :

Sheets("1° Tableau").Activate
For Each c In Worksheets("1° Tableau").Range("A1", [A65535].End(xlUp))
If Sheets("1° Tableau").Range("IV" & c.Row).Interior.ColorIndex <> 6 Then
Sheets("2° Tableau").Activate
For Each d In Worksheets("2° Tableau").Range("A1", [A65535].End(xlUp))
If d = c Then
d.EntireRow.Copy
c.Offset(1, 0).Insert Shift:=xlDown
c.Offset(1, 255).Interior.ColorIndex = 6
End If
Next
End If
Next
Sheets("1° Tableau").Range("IV1").EntireColumn.Interior.ColorIndex = xlNone

Celà devrait te convenir

Dis moi !!!!


Bonsoir à tous,
j'ai un premier tableau avec des informations en lignes (matricule, nom,
prénom....), et un second avec d'autres information. Il peut avoir
contrairement au 1er plusieur ligne avec le même matricule.
le 1er tableau doit resté tel quel, les informations sont classées par
société, par section, puis par ordre alphabétique. Ma question, comment sans
passer par le tri (qui va changer la sturucture du tableau 1), ni par le
tableau croisé dynamique (les noms de sociétés ne sont pas exploitables), ni
par la recherche (elle revoit les informations de la première ligne du
critère trouvé) arriver à insérer la ou les lignes du 2nd tableau, sous la
ligne du même matricule du tableau 1.
Ouf, pas facile d'être explicite .
Merci d'avance
magali


Avatar
Magali
C'est énorme, l'aide que tu viens de m'apporter. Ta macro fonctionne 5/5, et
c'est pile poils le résultat auquel je voulais arriver...

Mille fois merci, et bravo !
--
magali



Salut Magali

Je te propose une solution macro avec ce code :

Sheets("1° Tableau").Activate
For Each c In Worksheets("1° Tableau").Range("A1", [A65535].End(xlUp))
If Sheets("1° Tableau").Range("IV" & c.Row).Interior.ColorIndex <> 6 Then
Sheets("2° Tableau").Activate
For Each d In Worksheets("2° Tableau").Range("A1", [A65535].End(xlUp))
If d = c Then
d.EntireRow.Copy
c.Offset(1, 0).Insert Shift:=xlDown
c.Offset(1, 255).Interior.ColorIndex = 6
End If
Next
End If
Next
Sheets("1° Tableau").Range("IV1").EntireColumn.Interior.ColorIndex = xlNone

Celà devrait te convenir

Dis moi !!!!


Bonsoir à tous,
j'ai un premier tableau avec des informations en lignes (matricule, nom,
prénom....), et un second avec d'autres information. Il peut avoir
contrairement au 1er plusieur ligne avec le même matricule.
le 1er tableau doit resté tel quel, les informations sont classées par
société, par section, puis par ordre alphabétique. Ma question, comment sans
passer par le tri (qui va changer la sturucture du tableau 1), ni par le
tableau croisé dynamique (les noms de sociétés ne sont pas exploitables), ni
par la recherche (elle revoit les informations de la première ligne du
critère trouvé) arriver à insérer la ou les lignes du 2nd tableau, sous la
ligne du même matricule du tableau 1.
Ouf, pas facile d'être explicite .
Merci d'avance
magali




Avatar
Magali
Merci pour tout, je viens de tester la macro de FFO, qui correspond
exactement à ce dont j'avais besoin.

Merci encore pour m'avoir répondu.
--
magali



Bonjour,
pouvez-vous envoyez un fichier par cjoint s'il vous plaît?
Cordialment,
celui qui demande toujours un exmple-Alexandre

"Magali" a écrit dans le message de
news:
Bonsoir à tous,
j'ai un premier tableau avec des informations en lignes (matricule, nom,
prénom....), et un second avec d'autres information. Il peut avoir
contrairement au 1er plusieur ligne avec le même matricule.
le 1er tableau doit resté tel quel, les informations sont classées par
société, par section, puis par ordre alphabétique. Ma question, comment
sans
passer par le tri (qui va changer la sturucture du tableau 1), ni par le
tableau croisé dynamique (les noms de sociétés ne sont pas exploitables),
ni
par la recherche (elle revoit les informations de la première ligne du
critère trouvé) arriver à insérer la ou les lignes du 2nd tableau, sous la
ligne du même matricule du tableau 1.
Ouf, pas facile d'être explicite .
Merci d'avance
magali





Avatar
FFO
Rebonjour Magali

Trés heureux de t'avoir rendu service

A trés bientôt peut être


C'est énorme, l'aide que tu viens de m'apporter. Ta macro fonctionne 5/5, et
c'est pile poils le résultat auquel je voulais arriver...

Mille fois merci, et bravo !
--
magali



Salut Magali

Je te propose une solution macro avec ce code :

Sheets("1° Tableau").Activate
For Each c In Worksheets("1° Tableau").Range("A1", [A65535].End(xlUp))
If Sheets("1° Tableau").Range("IV" & c.Row).Interior.ColorIndex <> 6 Then
Sheets("2° Tableau").Activate
For Each d In Worksheets("2° Tableau").Range("A1", [A65535].End(xlUp))
If d = c Then
d.EntireRow.Copy
c.Offset(1, 0).Insert Shift:=xlDown
c.Offset(1, 255).Interior.ColorIndex = 6
End If
Next
End If
Next
Sheets("1° Tableau").Range("IV1").EntireColumn.Interior.ColorIndex = xlNone

Celà devrait te convenir

Dis moi !!!!


Bonsoir à tous,
j'ai un premier tableau avec des informations en lignes (matricule, nom,
prénom....), et un second avec d'autres information. Il peut avoir
contrairement au 1er plusieur ligne avec le même matricule.
le 1er tableau doit resté tel quel, les informations sont classées par
société, par section, puis par ordre alphabétique. Ma question, comment sans
passer par le tri (qui va changer la sturucture du tableau 1), ni par le
tableau croisé dynamique (les noms de sociétés ne sont pas exploitables), ni
par la recherche (elle revoit les informations de la première ligne du
critère trouvé) arriver à insérer la ou les lignes du 2nd tableau, sous la
ligne du même matricule du tableau 1.
Ouf, pas facile d'être explicite .
Merci d'avance
magali






Avatar
lSteph
Bonjour,
Si tu ne veux pas affecter le tableau1 essaie plutôt, ainsi:
depuis le tableau2 utilises le champ matricule pour récupèrer
les données dans tableau1
supposons la plage Feuil1!A2:C300 où l'on a donc les 3 colonnes
matricule Nom prénom
en Feuil2 en colonne a:a matricule puis dans les colonnes voisines
les autres données
dans les colonnes suivantes:

=index(Feuil1!$b$2:$b$300;equiv(Feuil2!a2;Feuil1!$a$2:$a$300;0);1)
=index(Feuil1!$c$2:$c$300;equiv(Feuil2!a2;Feuil1!$a$2:$a$300;0);1)

à recopier vers le bas

Cordialement.

lSteph

On 16 juil, 21:18, Magali wrote:
Bonsoir à tous,
j'ai un premier tableau avec des informations en lignes (matricule, nom,
prénom....), et un second avec d'autres information. Il peut avoir
contrairement au 1er plusieur ligne avec le même matricule.
le 1er tableau doit resté tel quel, les informations sont classées par
société, par section, puis par ordre alphabétique. Ma question, com ment sans
passer par le tri (qui va changer la sturucture du tableau 1), ni par le
tableau croisé dynamique (les noms de sociétés ne sont pas exploita bles), ni
par la recherche (elle revoit les informations de la première ligne du
critère trouvé) arriver à insérer la ou les lignes du 2nd tableau , sous la
ligne du même matricule du tableau 1.
Ouf, pas facile d'être explicite .
Merci d'avance
magali


Avatar
Magali
Encore une petite question. Si possible biensûr : j'ai terminé mes tableaux
et mes macros dans lesquelles j'ai insérer la tienne. J'aimerai rajouter une
petite finition à ce document.

Je pense qu'il est possible sur la colonne A de rechercher un texte, et à
chaque fois qu'il est trouvé, qu'un saut de page vienne s'insérer au dessous.
Sachant que mon document aura tous les mois une longueur différente, et que
donc le texte recherché ne sera pas toujours sur la même ligne, il ne faut
pas que dans visual basic il y ait un N° de ligne, sinon, ça va marcher sur
le document sur lequel j'enregistre la macro, mais ça coupera n'importe où
sur les prochains.

Merci.
--
magali



Rebonjour Magali

Trés heureux de t'avoir rendu service

A trés bientôt peut être


C'est énorme, l'aide que tu viens de m'apporter. Ta macro fonctionne 5/5, et
c'est pile poils le résultat auquel je voulais arriver...

Mille fois merci, et bravo !
--
magali



Salut Magali

Je te propose une solution macro avec ce code :

Sheets("1° Tableau").Activate
For Each c In Worksheets("1° Tableau").Range("A1", [A65535].End(xlUp))
If Sheets("1° Tableau").Range("IV" & c.Row).Interior.ColorIndex <> 6 Then
Sheets("2° Tableau").Activate
For Each d In Worksheets("2° Tableau").Range("A1", [A65535].End(xlUp))
If d = c Then
d.EntireRow.Copy
c.Offset(1, 0).Insert Shift:=xlDown
c.Offset(1, 255).Interior.ColorIndex = 6
End If
Next
End If
Next
Sheets("1° Tableau").Range("IV1").EntireColumn.Interior.ColorIndex = xlNone

Celà devrait te convenir

Dis moi !!!!


Bonsoir à tous,
j'ai un premier tableau avec des informations en lignes (matricule, nom,
prénom....), et un second avec d'autres information. Il peut avoir
contrairement au 1er plusieur ligne avec le même matricule.
le 1er tableau doit resté tel quel, les informations sont classées par
société, par section, puis par ordre alphabétique. Ma question, comment sans
passer par le tri (qui va changer la sturucture du tableau 1), ni par le
tableau croisé dynamique (les noms de sociétés ne sont pas exploitables), ni
par la recherche (elle revoit les informations de la première ligne du
critère trouvé) arriver à insérer la ou les lignes du 2nd tableau, sous la
ligne du même matricule du tableau 1.
Ouf, pas facile d'être explicite .
Merci d'avance
magali