OVH Cloud OVH Cloud

macro

9 réponses
Avatar
Marc
Bonjour
je ne suis pas programmeur, alors je ne sais pas par quel bout commencé.
j'ai deux feuilles, avec les mêmes titres de colonnes. Sur la troisième,
j'ai les mêmes titres de colonne, mais je suis à la recherche d'une macro qui
fera en sorte d'aller chercher les données de la feuille 1 et les ajouter à
la feuille 3 et même chose pour la feuille 2. Par contre, si deux semaines
après j'exécutes la macro, je veux qu'elle vérifier si sur la feuille 1 il y
a des nouvelles donnée et qu'elle les ajoutes à la feuille 3, même chose pour
la feuille 2. Est-ce quelqu'un peut m'aider?

Merci de votre aide
Marc

9 réponses

Avatar
Daniel
Bonjour.
Y a-t-il une colonne de données uniques sur laquelle on puisse vérifier si
une ligne a déjà été recopiée ?
Par exemple : si Feuil1!A10 = Feuil3!An alors on ne recopie pas la ligne
Feuil1!A10
Cordialement.
Daniel
"Marc" a écrit dans le message de news:

Bonjour
je ne suis pas programmeur, alors je ne sais pas par quel bout commencé.
j'ai deux feuilles, avec les mêmes titres de colonnes. Sur la troisième,
j'ai les mêmes titres de colonne, mais je suis à la recherche d'une macro
qui
fera en sorte d'aller chercher les données de la feuille 1 et les ajouter
à
la feuille 3 et même chose pour la feuille 2. Par contre, si deux semaines
après j'exécutes la macro, je veux qu'elle vérifier si sur la feuille 1 il
y
a des nouvelles donnée et qu'elle les ajoutes à la feuille 3, même chose
pour
la feuille 2. Est-ce quelqu'un peut m'aider?

Merci de votre aide
Marc


Avatar
Daniel
Regarde le classeur là :
http://cjoint.com/?bxs6ydHq6S
Daniel
"Marc" a écrit dans le message de news:

Bonjour
Les noms de la feuille1 ne se retrouvent nulle part ailleurs. Par contre,
je
continuerai d'ajouter les données dans la feuille 1. Donc lors que la
macro
s'exécutera, je veux qu'elle vérifie si les noms ont déjà été collés avant

exemple
feuille 1
fred
julie
feuille 2
marc
sylvie
feuille3
macro qui combinent
fred
julie
marc
sylvie
par contre, vu que les noms existent déjà dans la feuille 3, si je
réexécute, je ne veux pas que la macro recolle encore les noms déjà
existants.
en espérant avoir été plus claire

merci de votre aide
marc

Bonjour.
Y a-t-il une colonne de données uniques sur laquelle on puisse vérifier
si
une ligne a déjà été recopiée ?
Par exemple : si Feuil1!A10 = Feuil3!An alors on ne recopie pas la ligne
Feuil1!A10
Cordialement.
Daniel
"Marc" a écrit dans le message de news:

Bonjour
je ne suis pas programmeur, alors je ne sais pas par quel bout
commencé.
j'ai deux feuilles, avec les mêmes titres de colonnes. Sur la
troisième,
j'ai les mêmes titres de colonne, mais je suis à la recherche d'une
macro
qui
fera en sorte d'aller chercher les données de la feuille 1 et les
ajouter
à
la feuille 3 et même chose pour la feuille 2. Par contre, si deux
semaines
après j'exécutes la macro, je veux qu'elle vérifier si sur la feuille 1
il
y
a des nouvelles donnée et qu'elle les ajoutes à la feuille 3, même
chose
pour
la feuille 2. Est-ce quelqu'un peut m'aider?

Merci de votre aide
Marc









Avatar
Daniel
J'ai modifié la macro test pour l'adapter à ton classeur :
http://cjoint.com/?bxxYi8haRu
Daniel
"Marc" a écrit dans le message de news:

Salut Daniel
je viens de tester ta macro nommé "test" sur le document que je t'ai
envoyé.
pourrais tu vérifier si cela fonctionne vraiment bien? si c'Est le cas, je
m'excuse de mon erreur et ta macro fonctionne super bien.

désolé et si tout est ok, un gros merci pour ton aide

marc


Regarde le classeur là :
http://cjoint.com/?bxs6ydHq6S
Daniel
"Marc" a écrit dans le message de news:

Bonjour
Les noms de la feuille1 ne se retrouvent nulle part ailleurs. Par
contre,
je
continuerai d'ajouter les données dans la feuille 1. Donc lors que la
macro
s'exécutera, je veux qu'elle vérifie si les noms ont déjà été collés
avant

exemple
feuille 1
fred
julie
feuille 2
marc
sylvie
feuille3
macro qui combinent
fred
julie
marc
sylvie
par contre, vu que les noms existent déjà dans la feuille 3, si je
réexécute, je ne veux pas que la macro recolle encore les noms déjà
existants.
en espérant avoir été plus claire

merci de votre aide
marc

Bonjour.
Y a-t-il une colonne de données uniques sur laquelle on puisse
vérifier
si
une ligne a déjà été recopiée ?
Par exemple : si Feuil1!A10 = Feuil3!An alors on ne recopie pas la
ligne
Feuil1!A10
Cordialement.
Daniel
"Marc" a écrit dans le message de
news:

Bonjour
je ne suis pas programmeur, alors je ne sais pas par quel bout
commencé.
j'ai deux feuilles, avec les mêmes titres de colonnes. Sur la
troisième,
j'ai les mêmes titres de colonne, mais je suis à la recherche d'une
macro
qui
fera en sorte d'aller chercher les données de la feuille 1 et les
ajouter
à
la feuille 3 et même chose pour la feuille 2. Par contre, si deux
semaines
après j'exécutes la macro, je veux qu'elle vérifier si sur la
feuille 1
il
y
a des nouvelles donnée et qu'elle les ajoutes à la feuille 3, même
chose
pour
la feuille 2. Est-ce quelqu'un peut m'aider?

Merci de votre aide
Marc
















Avatar
Daniel
Bonjour.
Il faut supprimer la ligne sur la feuille "Feuil3" et repasser la macro.
La ligne se retrouvera en fin des données sur Feuil3.
Cordialement.
Daniel
"Marc" a écrit dans le message de news:

Un gros merci daniel, j'apprécie énormément.
J'ai une dernière petite question. Un coup fusionné dans la feuille 3, si
je
modifie, exemple après avoir fusionné les données, je me rends compte que
j'ai fait une erreur dans un nom, la macro ne met pas à jour les données
déjà
inscrits dans la feuille 3 avec la macro. C'est quoi le petit bout de code
qui manque pour qu'elle puisse faire cela

encore une fois, merci


J'ai modifié la macro test pour l'adapter à ton classeur :
http://cjoint.com/?bxxYi8haRu
Daniel
"Marc" a écrit dans le message de news:

Salut Daniel
je viens de tester ta macro nommé "test" sur le document que je t'ai
envoyé.
pourrais tu vérifier si cela fonctionne vraiment bien? si c'Est le cas,
je
m'excuse de mon erreur et ta macro fonctionne super bien.

désolé et si tout est ok, un gros merci pour ton aide

marc


Regarde le classeur là :
http://cjoint.com/?bxs6ydHq6S
Daniel
"Marc" a écrit dans le message de
news:

Bonjour
Les noms de la feuille1 ne se retrouvent nulle part ailleurs. Par
contre,
je
continuerai d'ajouter les données dans la feuille 1. Donc lors que
la
macro
s'exécutera, je veux qu'elle vérifie si les noms ont déjà été collés
avant

exemple
feuille 1
fred
julie
feuille 2
marc
sylvie
feuille3
macro qui combinent
fred
julie
marc
sylvie
par contre, vu que les noms existent déjà dans la feuille 3, si je
réexécute, je ne veux pas que la macro recolle encore les noms déjà
existants.
en espérant avoir été plus claire

merci de votre aide
marc

Bonjour.
Y a-t-il une colonne de données uniques sur laquelle on puisse
vérifier
si
une ligne a déjà été recopiée ?
Par exemple : si Feuil1!A10 = Feuil3!An alors on ne recopie pas la
ligne
Feuil1!A10
Cordialement.
Daniel
"Marc" a écrit dans le message de
news:

Bonjour
je ne suis pas programmeur, alors je ne sais pas par quel bout
commencé.
j'ai deux feuilles, avec les mêmes titres de colonnes. Sur la
troisième,
j'ai les mêmes titres de colonne, mais je suis à la recherche
d'une
macro
qui
fera en sorte d'aller chercher les données de la feuille 1 et les
ajouter
à
la feuille 3 et même chose pour la feuille 2. Par contre, si deux
semaines
après j'exécutes la macro, je veux qu'elle vérifier si sur la
feuille 1
il
y
a des nouvelles donnée et qu'elle les ajoutes à la feuille 3,
même
chose
pour
la feuille 2. Est-ce quelqu'un peut m'aider?

Merci de votre aide
Marc























Avatar
Marc
Salut Daniel
j,ai beau essayé de faire l'effacement de la ligne de code, mais je n'y
arrive pas

voici le code

merci de m'aider encore une fois. tout ce que je veux, c'est que le fichier
se mette à jour quand je change une info sur les feuilles montréal ou région

merci

Sub fusion()

Dim c As Range, PlageRecap As Range, Plage As Range
Dim Ligne As Long
Sheets("tous").Select
Set PlageRecap = Range("A1", Range("A65536").End(xlUp))
Ligne = PlageRecap.Rows.Count + 1
Sheets("region").Select
Set Plage = Range("A2", Range("A65536").End(xlUp))
For Each c In Plage
If Not IsNumeric(Application.Match(c, PlageRecap, 0)) Then
c.EntireRow.Copy Sheets("tous").Cells(Ligne, 1)
Ligne = Ligne + 1
End If
Next c
Sheets("montreal").Select
Set Plage = Range("A2", Range("A65536").End(xlUp))
For Each c In Plage
If Not IsNumeric(Application.Match(c, PlageRecap, 0)) Then
c.EntireRow.Copy Sheets("tous").Cells(Ligne, 1)
Ligne = Ligne + 1
End If
Next c
End Sub


Bonjour.
Il faut supprimer la ligne sur la feuille "Feuil3" et repasser la macro.
La ligne se retrouvera en fin des données sur Feuil3.
Cordialement.
Daniel
"Marc" a écrit dans le message de news:

Un gros merci daniel, j'apprécie énormément.
J'ai une dernière petite question. Un coup fusionné dans la feuille 3, si
je
modifie, exemple après avoir fusionné les données, je me rends compte que
j'ai fait une erreur dans un nom, la macro ne met pas à jour les données
déjà
inscrits dans la feuille 3 avec la macro. C'est quoi le petit bout de code
qui manque pour qu'elle puisse faire cela

encore une fois, merci


J'ai modifié la macro test pour l'adapter à ton classeur :
http://cjoint.com/?bxxYi8haRu
Daniel
"Marc" a écrit dans le message de news:

Salut Daniel
je viens de tester ta macro nommé "test" sur le document que je t'ai
envoyé.
pourrais tu vérifier si cela fonctionne vraiment bien? si c'Est le cas,
je
m'excuse de mon erreur et ta macro fonctionne super bien.

désolé et si tout est ok, un gros merci pour ton aide

marc


Regarde le classeur là :
http://cjoint.com/?bxs6ydHq6S
Daniel
"Marc" a écrit dans le message de
news:

Bonjour
Les noms de la feuille1 ne se retrouvent nulle part ailleurs. Par
contre,
je
continuerai d'ajouter les données dans la feuille 1. Donc lors que
la
macro
s'exécutera, je veux qu'elle vérifie si les noms ont déjà été collés
avant

exemple
feuille 1
fred
julie
feuille 2
marc
sylvie
feuille3
macro qui combinent
fred
julie
marc
sylvie
par contre, vu que les noms existent déjà dans la feuille 3, si je
réexécute, je ne veux pas que la macro recolle encore les noms déjà
existants.
en espérant avoir été plus claire

merci de votre aide
marc

Bonjour.
Y a-t-il une colonne de données uniques sur laquelle on puisse
vérifier
si
une ligne a déjà été recopiée ?
Par exemple : si Feuil1!A10 = Feuil3!An alors on ne recopie pas la
ligne
Feuil1!A10
Cordialement.
Daniel
"Marc" a écrit dans le message de
news:

Bonjour
je ne suis pas programmeur, alors je ne sais pas par quel bout
commencé.
j'ai deux feuilles, avec les mêmes titres de colonnes. Sur la
troisième,
j'ai les mêmes titres de colonne, mais je suis à la recherche
d'une
macro
qui
fera en sorte d'aller chercher les données de la feuille 1 et les
ajouter
à
la feuille 3 et même chose pour la feuille 2. Par contre, si deux
semaines
après j'exécutes la macro, je veux qu'elle vérifier si sur la
feuille 1
il
y
a des nouvelles donnée et qu'elle les ajoutes à la feuille 3,
même
chose
pour
la feuille 2. Est-ce quelqu'un peut m'aider?

Merci de votre aide
Marc




























Avatar
Daniel
Bonjour.
Pas évident, comme ça. D'après ta macro, il semblerait que tes noms soient
en colonne A alors qu'ils étaient en colonne C dans le classeur que tu as
mis sur www.cjoint.com. Qu'en est-il au juste ?
Cordialement.
Daniel
"Marc" a écrit dans le message de news:

Salut Daniel
j,ai beau essayé de faire l'effacement de la ligne de code, mais je n'y
arrive pas

voici le code

merci de m'aider encore une fois. tout ce que je veux, c'est que le
fichier
se mette à jour quand je change une info sur les feuilles montréal ou
région

merci

Sub fusion()

Dim c As Range, PlageRecap As Range, Plage As Range
Dim Ligne As Long
Sheets("tous").Select
Set PlageRecap = Range("A1", Range("A65536").End(xlUp))
Ligne = PlageRecap.Rows.Count + 1
Sheets("region").Select
Set Plage = Range("A2", Range("A65536").End(xlUp))
For Each c In Plage
If Not IsNumeric(Application.Match(c, PlageRecap, 0)) Then
c.EntireRow.Copy Sheets("tous").Cells(Ligne, 1)
Ligne = Ligne + 1
End If
Next c
Sheets("montreal").Select
Set Plage = Range("A2", Range("A65536").End(xlUp))
For Each c In Plage
If Not IsNumeric(Application.Match(c, PlageRecap, 0)) Then
c.EntireRow.Copy Sheets("tous").Cells(Ligne, 1)
Ligne = Ligne + 1
End If
Next c
End Sub


Bonjour.
Il faut supprimer la ligne sur la feuille "Feuil3" et repasser la macro.
La ligne se retrouvera en fin des données sur Feuil3.
Cordialement.
Daniel
"Marc" a écrit dans le message de news:

Un gros merci daniel, j'apprécie énormément.
J'ai une dernière petite question. Un coup fusionné dans la feuille 3,
si
je
modifie, exemple après avoir fusionné les données, je me rends compte
que
j'ai fait une erreur dans un nom, la macro ne met pas à jour les
données
déjà
inscrits dans la feuille 3 avec la macro. C'est quoi le petit bout de
code
qui manque pour qu'elle puisse faire cela

encore une fois, merci


J'ai modifié la macro test pour l'adapter à ton classeur :
http://cjoint.com/?bxxYi8haRu
Daniel
"Marc" a écrit dans le message de
news:

Salut Daniel
je viens de tester ta macro nommé "test" sur le document que je t'ai
envoyé.
pourrais tu vérifier si cela fonctionne vraiment bien? si c'Est le
cas,
je
m'excuse de mon erreur et ta macro fonctionne super bien.

désolé et si tout est ok, un gros merci pour ton aide

marc


Regarde le classeur là :
http://cjoint.com/?bxs6ydHq6S
Daniel
"Marc" a écrit dans le message de
news:

Bonjour
Les noms de la feuille1 ne se retrouvent nulle part ailleurs. Par
contre,
je
continuerai d'ajouter les données dans la feuille 1. Donc lors
que
la
macro
s'exécutera, je veux qu'elle vérifie si les noms ont déjà été
collés
avant

exemple
feuille 1
fred
julie
feuille 2
marc
sylvie
feuille3
macro qui combinent
fred
julie
marc
sylvie
par contre, vu que les noms existent déjà dans la feuille 3, si
je
réexécute, je ne veux pas que la macro recolle encore les noms
déjà
existants.
en espérant avoir été plus claire

merci de votre aide
marc

Bonjour.
Y a-t-il une colonne de données uniques sur laquelle on puisse
vérifier
si
une ligne a déjà été recopiée ?
Par exemple : si Feuil1!A10 = Feuil3!An alors on ne recopie pas
la
ligne
Feuil1!A10
Cordialement.
Daniel
"Marc" a écrit dans le message
de
news:

Bonjour
je ne suis pas programmeur, alors je ne sais pas par quel bout
commencé.
j'ai deux feuilles, avec les mêmes titres de colonnes. Sur la
troisième,
j'ai les mêmes titres de colonne, mais je suis à la recherche
d'une
macro
qui
fera en sorte d'aller chercher les données de la feuille 1 et
les
ajouter
à
la feuille 3 et même chose pour la feuille 2. Par contre, si
deux
semaines
après j'exécutes la macro, je veux qu'elle vérifier si sur la
feuille 1
il
y
a des nouvelles donnée et qu'elle les ajoutes à la feuille 3,
même
chose
pour
la feuille 2. Est-ce quelqu'un peut m'aider?

Merci de votre aide
Marc






























Avatar
Marc
Bonjour
le documen que j'ai posé sur cjoint, n'était qu'un exemple. Mon vrai
fichier, c'est des tableaux de la cellule A3 jusqu'à R800. Ça c'est ma plage.
J'ai cela pour la feuille Region et Montreal. Pour l'instant, j'ai peut être
des informations jusqu'à la ligne 75, mais par les années passés, dans une
année, je vais me rendre à peu près à 800. Donc ce que je veux que la macro
fasse, c'est de prendre les données de la feuille région, les colles dans la
feuille qui se nomme tous. Faire la même chose pour Montreal, et les colles
dans la feuille tous. Mais je veux qu'elle colles toute l'informations
relative à une ligne.Exemple, sur une ligne, J'ai de a3 jusqu'à R3, le nom,
prénom, adresse....... etc. Jusque là, la macro que tu as fait fait très bien
son travail. Par contre, je tente de changer exemple, l'adresse de quelqu'un,
la macro ne remet pas à jour l'information sur l'employé puisqu'il est déjà
rendu dans la feuille tous avec la macro. Voici le code que tu m'as envoyé,
tout ce que j'ai changé, c'est le nom des feuilles et le nom de la macro.

merci de prendre ce temps pour me sortir du pétrin.

voici le code

Sub fusion()

Dim c As Range, PlageRecap As Range, Plage As Range
Dim Ligne As Long
Sheets("tous").Select
Set PlageRecap = Range("A1", Range("A65536").End(xlUp))
Ligne = PlageRecap.Rows.Count + 1
Sheets("region").Select
Set Plage = Range("A2", Range("A65536").End(xlUp))
For Each c In Plage
If Not IsNumeric(Application.Match(c, PlageRecap, 0)) Then
c.EntireRow.Copy Sheets("tous").Cells(Ligne, 1)
Ligne = Ligne + 1
End If
Next c
Sheets("montreal").Select
Set Plage = Range("A2", Range("A65536").End(xlUp))
For Each c In Plage
If Not IsNumeric(Application.Match(c, PlageRecap, 0)) Then
c.EntireRow.Copy Sheets("tous").Cells(Ligne, 1)
Ligne = Ligne + 1
End If
Next c
End Sub



Bonjour.
Pas évident, comme ça. D'après ta macro, il semblerait que tes noms soient
en colonne A alors qu'ils étaient en colonne C dans le classeur que tu as
mis sur www.cjoint.com. Qu'en est-il au juste ?
Cordialement.
Daniel
"Marc" a écrit dans le message de news:

Salut Daniel
j,ai beau essayé de faire l'effacement de la ligne de code, mais je n'y
arrive pas

voici le code

merci de m'aider encore une fois. tout ce que je veux, c'est que le
fichier
se mette à jour quand je change une info sur les feuilles montréal ou
région

merci

Sub fusion()

Dim c As Range, PlageRecap As Range, Plage As Range
Dim Ligne As Long
Sheets("tous").Select
Set PlageRecap = Range("A1", Range("A65536").End(xlUp))
Ligne = PlageRecap.Rows.Count + 1
Sheets("region").Select
Set Plage = Range("A2", Range("A65536").End(xlUp))
For Each c In Plage
If Not IsNumeric(Application.Match(c, PlageRecap, 0)) Then
c.EntireRow.Copy Sheets("tous").Cells(Ligne, 1)
Ligne = Ligne + 1
End If
Next c
Sheets("montreal").Select
Set Plage = Range("A2", Range("A65536").End(xlUp))
For Each c In Plage
If Not IsNumeric(Application.Match(c, PlageRecap, 0)) Then
c.EntireRow.Copy Sheets("tous").Cells(Ligne, 1)
Ligne = Ligne + 1
End If
Next c
End Sub


Bonjour.
Il faut supprimer la ligne sur la feuille "Feuil3" et repasser la macro.
La ligne se retrouvera en fin des données sur Feuil3.
Cordialement.
Daniel
"Marc" a écrit dans le message de news:

Un gros merci daniel, j'apprécie énormément.
J'ai une dernière petite question. Un coup fusionné dans la feuille 3,
si
je
modifie, exemple après avoir fusionné les données, je me rends compte
que
j'ai fait une erreur dans un nom, la macro ne met pas à jour les
données
déjà
inscrits dans la feuille 3 avec la macro. C'est quoi le petit bout de
code
qui manque pour qu'elle puisse faire cela

encore une fois, merci


J'ai modifié la macro test pour l'adapter à ton classeur :
http://cjoint.com/?bxxYi8haRu
Daniel
"Marc" a écrit dans le message de
news:

Salut Daniel
je viens de tester ta macro nommé "test" sur le document que je t'ai
envoyé.
pourrais tu vérifier si cela fonctionne vraiment bien? si c'Est le
cas,
je
m'excuse de mon erreur et ta macro fonctionne super bien.

désolé et si tout est ok, un gros merci pour ton aide

marc


Regarde le classeur là :
http://cjoint.com/?bxs6ydHq6S
Daniel
"Marc" a écrit dans le message de
news:

Bonjour
Les noms de la feuille1 ne se retrouvent nulle part ailleurs. Par
contre,
je
continuerai d'ajouter les données dans la feuille 1. Donc lors
que
la
macro
s'exécutera, je veux qu'elle vérifie si les noms ont déjà été
collés
avant

exemple
feuille 1
fred
julie
feuille 2
marc
sylvie
feuille3
macro qui combinent
fred
julie
marc
sylvie
par contre, vu que les noms existent déjà dans la feuille 3, si
je
réexécute, je ne veux pas que la macro recolle encore les noms
déjà
existants.
en espérant avoir été plus claire

merci de votre aide
marc

Bonjour.
Y a-t-il une colonne de données uniques sur laquelle on puisse
vérifier
si
une ligne a déjà été recopiée ?
Par exemple : si Feuil1!A10 = Feuil3!An alors on ne recopie pas
la
ligne
Feuil1!A10
Cordialement.
Daniel
"Marc" a écrit dans le message
de
news:

Bonjour
je ne suis pas programmeur, alors je ne sais pas par quel bout
commencé.
j'ai deux feuilles, avec les mêmes titres de colonnes. Sur la
troisième,
j'ai les mêmes titres de colonne, mais je suis à la recherche
d'une
macro
qui
fera en sorte d'aller chercher les données de la feuille 1 et
les
ajouter
à
la feuille 3 et même chose pour la feuille 2. Par contre, si
deux
semaines
après j'exécutes la macro, je veux qu'elle vérifier si sur la
feuille 1
il
y
a des nouvelles donnée et qu'elle les ajoutes à la feuille 3,
même
chose
pour
la feuille 2. Est-ce quelqu'un peut m'aider?

Merci de votre aide
Marc



































Avatar
Daniel
Au temps pour moi :
Avec cette macro une ligne modifiée dans "region" ou "montreal" et supprimée
dans "tous" est recopiée au lancement des 2 premières feuilles.

Sub fusion()

Dim c As Range, PlageRecap As Range, Plage As Range
Dim Ligne As Long
Sheets("tous").Select
Set PlageRecap = Range("A1", Range("A65536").End(xlUp))
Ligne = PlageRecap.Rows.Count + 1
Sheets("region").Select
Set Plage = Range("A2", Range("A65536").End(xlUp))
For Each c In Plage
If Not IsNumeric(Application.Match(c, PlageRecap, 0)) Then
c.EntireRow.Copy Sheets("tous").Cells(Ligne, 1)
Ligne = Ligne + 1
Set PlageRecap = PlageRecap.Resize(PlageRecap.Rows.Count + 1, _
PlageRecap.Columns.Count)
End If
Next c
Sheets("montreal").Select
Set Plage = Range("A2", Range("A65536").End(xlUp))
For Each c In Plage
If Not IsNumeric(Application.Match(c, PlageRecap, 0)) Then
c.EntireRow.Copy Sheets("tous").Cells(Ligne, 1)
Ligne = Ligne + 1
Set PlageRecap = PlageRecap.Resize(PlageRecap.Rows.Count + 1, _
PlageRecap.Columns.Count)
End If
Next c
End Sub

Daniel
"Marc" a écrit dans le message de news:

Bonjour
le documen que j'ai posé sur cjoint, n'était qu'un exemple. Mon vrai
fichier, c'est des tableaux de la cellule A3 jusqu'à R800. Ça c'est ma
plage.
J'ai cela pour la feuille Region et Montreal. Pour l'instant, j'ai peut
être
des informations jusqu'à la ligne 75, mais par les années passés, dans une
année, je vais me rendre à peu près à 800. Donc ce que je veux que la
macro
fasse, c'est de prendre les données de la feuille région, les colles dans
la
feuille qui se nomme tous. Faire la même chose pour Montreal, et les
colles
dans la feuille tous. Mais je veux qu'elle colles toute l'informations
relative à une ligne.Exemple, sur une ligne, J'ai de a3 jusqu'à R3, le
nom,
prénom, adresse....... etc. Jusque là, la macro que tu as fait fait très
bien
son travail. Par contre, je tente de changer exemple, l'adresse de
quelqu'un,
la macro ne remet pas à jour l'information sur l'employé puisqu'il est
déjà
rendu dans la feuille tous avec la macro. Voici le code que tu m'as
envoyé,
tout ce que j'ai changé, c'est le nom des feuilles et le nom de la macro.

merci de prendre ce temps pour me sortir du pétrin.

voici le code

Sub fusion()

Dim c As Range, PlageRecap As Range, Plage As Range
Dim Ligne As Long
Sheets("tous").Select
Set PlageRecap = Range("A1", Range("A65536").End(xlUp))
Ligne = PlageRecap.Rows.Count + 1
Sheets("region").Select
Set Plage = Range("A2", Range("A65536").End(xlUp))
For Each c In Plage
If Not IsNumeric(Application.Match(c, PlageRecap, 0)) Then
c.EntireRow.Copy Sheets("tous").Cells(Ligne, 1)
Ligne = Ligne + 1
End If
Next c
Sheets("montreal").Select
Set Plage = Range("A2", Range("A65536").End(xlUp))
For Each c In Plage
If Not IsNumeric(Application.Match(c, PlageRecap, 0)) Then
c.EntireRow.Copy Sheets("tous").Cells(Ligne, 1)
Ligne = Ligne + 1
End If
Next c
End Sub



Bonjour.
Pas évident, comme ça. D'après ta macro, il semblerait que tes noms
soient
en colonne A alors qu'ils étaient en colonne C dans le classeur que tu as
mis sur www.cjoint.com. Qu'en est-il au juste ?
Cordialement.
Daniel
"Marc" a écrit dans le message de news:

Salut Daniel
j,ai beau essayé de faire l'effacement de la ligne de code, mais je n'y
arrive pas

voici le code

merci de m'aider encore une fois. tout ce que je veux, c'est que le
fichier
se mette à jour quand je change une info sur les feuilles montréal ou
région

merci

Sub fusion()

Dim c As Range, PlageRecap As Range, Plage As Range
Dim Ligne As Long
Sheets("tous").Select
Set PlageRecap = Range("A1", Range("A65536").End(xlUp))
Ligne = PlageRecap.Rows.Count + 1
Sheets("region").Select
Set Plage = Range("A2", Range("A65536").End(xlUp))
For Each c In Plage
If Not IsNumeric(Application.Match(c, PlageRecap, 0)) Then
c.EntireRow.Copy Sheets("tous").Cells(Ligne, 1)
Ligne = Ligne + 1
End If
Next c
Sheets("montreal").Select
Set Plage = Range("A2", Range("A65536").End(xlUp))
For Each c In Plage
If Not IsNumeric(Application.Match(c, PlageRecap, 0)) Then
c.EntireRow.Copy Sheets("tous").Cells(Ligne, 1)
Ligne = Ligne + 1
End If
Next c
End Sub


Bonjour.
Il faut supprimer la ligne sur la feuille "Feuil3" et repasser la
macro.
La ligne se retrouvera en fin des données sur Feuil3.
Cordialement.
Daniel
"Marc" a écrit dans le message de
news:

Un gros merci daniel, j'apprécie énormément.
J'ai une dernière petite question. Un coup fusionné dans la feuille
3,
si
je
modifie, exemple après avoir fusionné les données, je me rends
compte
que
j'ai fait une erreur dans un nom, la macro ne met pas à jour les
données
déjà
inscrits dans la feuille 3 avec la macro. C'est quoi le petit bout
de
code
qui manque pour qu'elle puisse faire cela

encore une fois, merci


J'ai modifié la macro test pour l'adapter à ton classeur :
http://cjoint.com/?bxxYi8haRu
Daniel
"Marc" a écrit dans le message de
news:

Salut Daniel
je viens de tester ta macro nommé "test" sur le document que je
t'ai
envoyé.
pourrais tu vérifier si cela fonctionne vraiment bien? si c'Est
le
cas,
je
m'excuse de mon erreur et ta macro fonctionne super bien.

désolé et si tout est ok, un gros merci pour ton aide

marc


Regarde le classeur là :
http://cjoint.com/?bxs6ydHq6S
Daniel
"Marc" a écrit dans le message
de
news:

Bonjour
Les noms de la feuille1 ne se retrouvent nulle part ailleurs.
Par
contre,
je
continuerai d'ajouter les données dans la feuille 1. Donc lors
que
la
macro
s'exécutera, je veux qu'elle vérifie si les noms ont déjà été
collés
avant

exemple
feuille 1
fred
julie
feuille 2
marc
sylvie
feuille3
macro qui combinent
fred
julie
marc
sylvie
par contre, vu que les noms existent déjà dans la feuille 3,
si
je
réexécute, je ne veux pas que la macro recolle encore les noms
déjà
existants.
en espérant avoir été plus claire

merci de votre aide
marc

Bonjour.
Y a-t-il une colonne de données uniques sur laquelle on
puisse
vérifier
si
une ligne a déjà été recopiée ?
Par exemple : si Feuil1!A10 = Feuil3!An alors on ne recopie
pas
la
ligne
Feuil1!A10
Cordialement.
Daniel
"Marc" a écrit dans le
message
de
news:

Bonjour
je ne suis pas programmeur, alors je ne sais pas par quel
bout
commencé.
j'ai deux feuilles, avec les mêmes titres de colonnes. Sur
la
troisième,
j'ai les mêmes titres de colonne, mais je suis à la
recherche
d'une
macro
qui
fera en sorte d'aller chercher les données de la feuille 1
et
les
ajouter
à
la feuille 3 et même chose pour la feuille 2. Par contre,
si
deux
semaines
après j'exécutes la macro, je veux qu'elle vérifier si sur
la
feuille 1
il
y
a des nouvelles donnée et qu'elle les ajoutes à la feuille
3,
même
chose
pour
la feuille 2. Est-ce quelqu'un peut m'aider?

Merci de votre aide
Marc





































Avatar
Marc
Un gros merci daniel
j'apprécie vraiment l,aide que vous m'avez apportez
merc


Au temps pour moi :
Avec cette macro une ligne modifiée dans "region" ou "montreal" et supprimée
dans "tous" est recopiée au lancement des 2 premières feuilles.

Sub fusion()

Dim c As Range, PlageRecap As Range, Plage As Range
Dim Ligne As Long
Sheets("tous").Select
Set PlageRecap = Range("A1", Range("A65536").End(xlUp))
Ligne = PlageRecap.Rows.Count + 1
Sheets("region").Select
Set Plage = Range("A2", Range("A65536").End(xlUp))
For Each c In Plage
If Not IsNumeric(Application.Match(c, PlageRecap, 0)) Then
c.EntireRow.Copy Sheets("tous").Cells(Ligne, 1)
Ligne = Ligne + 1
Set PlageRecap = PlageRecap.Resize(PlageRecap.Rows.Count + 1, _
PlageRecap.Columns.Count)
End If
Next c
Sheets("montreal").Select
Set Plage = Range("A2", Range("A65536").End(xlUp))
For Each c In Plage
If Not IsNumeric(Application.Match(c, PlageRecap, 0)) Then
c.EntireRow.Copy Sheets("tous").Cells(Ligne, 1)
Ligne = Ligne + 1
Set PlageRecap = PlageRecap.Resize(PlageRecap.Rows.Count + 1, _
PlageRecap.Columns.Count)
End If
Next c
End Sub

Daniel
"Marc" a écrit dans le message de news:

Bonjour
le documen que j'ai posé sur cjoint, n'était qu'un exemple. Mon vrai
fichier, c'est des tableaux de la cellule A3 jusqu'à R800. Ça c'est ma
plage.
J'ai cela pour la feuille Region et Montreal. Pour l'instant, j'ai peut
être
des informations jusqu'à la ligne 75, mais par les années passés, dans une
année, je vais me rendre à peu près à 800. Donc ce que je veux que la
macro
fasse, c'est de prendre les données de la feuille région, les colles dans
la
feuille qui se nomme tous. Faire la même chose pour Montreal, et les
colles
dans la feuille tous. Mais je veux qu'elle colles toute l'informations
relative à une ligne.Exemple, sur une ligne, J'ai de a3 jusqu'à R3, le
nom,
prénom, adresse....... etc. Jusque là, la macro que tu as fait fait très
bien
son travail. Par contre, je tente de changer exemple, l'adresse de
quelqu'un,
la macro ne remet pas à jour l'information sur l'employé puisqu'il est
déjà
rendu dans la feuille tous avec la macro. Voici le code que tu m'as
envoyé,
tout ce que j'ai changé, c'est le nom des feuilles et le nom de la macro.

merci de prendre ce temps pour me sortir du pétrin.

voici le code

Sub fusion()

Dim c As Range, PlageRecap As Range, Plage As Range
Dim Ligne As Long
Sheets("tous").Select
Set PlageRecap = Range("A1", Range("A65536").End(xlUp))
Ligne = PlageRecap.Rows.Count + 1
Sheets("region").Select
Set Plage = Range("A2", Range("A65536").End(xlUp))
For Each c In Plage
If Not IsNumeric(Application.Match(c, PlageRecap, 0)) Then
c.EntireRow.Copy Sheets("tous").Cells(Ligne, 1)
Ligne = Ligne + 1
End If
Next c
Sheets("montreal").Select
Set Plage = Range("A2", Range("A65536").End(xlUp))
For Each c In Plage
If Not IsNumeric(Application.Match(c, PlageRecap, 0)) Then
c.EntireRow.Copy Sheets("tous").Cells(Ligne, 1)
Ligne = Ligne + 1
End If
Next c
End Sub



Bonjour.
Pas évident, comme ça. D'après ta macro, il semblerait que tes noms
soient
en colonne A alors qu'ils étaient en colonne C dans le classeur que tu as
mis sur www.cjoint.com. Qu'en est-il au juste ?
Cordialement.
Daniel
"Marc" a écrit dans le message de news:

Salut Daniel
j,ai beau essayé de faire l'effacement de la ligne de code, mais je n'y
arrive pas

voici le code

merci de m'aider encore une fois. tout ce que je veux, c'est que le
fichier
se mette à jour quand je change une info sur les feuilles montréal ou
région

merci

Sub fusion()

Dim c As Range, PlageRecap As Range, Plage As Range
Dim Ligne As Long
Sheets("tous").Select
Set PlageRecap = Range("A1", Range("A65536").End(xlUp))
Ligne = PlageRecap.Rows.Count + 1
Sheets("region").Select
Set Plage = Range("A2", Range("A65536").End(xlUp))
For Each c In Plage
If Not IsNumeric(Application.Match(c, PlageRecap, 0)) Then
c.EntireRow.Copy Sheets("tous").Cells(Ligne, 1)
Ligne = Ligne + 1
End If
Next c
Sheets("montreal").Select
Set Plage = Range("A2", Range("A65536").End(xlUp))
For Each c In Plage
If Not IsNumeric(Application.Match(c, PlageRecap, 0)) Then
c.EntireRow.Copy Sheets("tous").Cells(Ligne, 1)
Ligne = Ligne + 1
End If
Next c
End Sub


Bonjour.
Il faut supprimer la ligne sur la feuille "Feuil3" et repasser la
macro.
La ligne se retrouvera en fin des données sur Feuil3.
Cordialement.
Daniel
"Marc" a écrit dans le message de
news:

Un gros merci daniel, j'apprécie énormément.
J'ai une dernière petite question. Un coup fusionné dans la feuille
3,
si
je
modifie, exemple après avoir fusionné les données, je me rends
compte
que
j'ai fait une erreur dans un nom, la macro ne met pas à jour les
données
déjà
inscrits dans la feuille 3 avec la macro. C'est quoi le petit bout
de
code
qui manque pour qu'elle puisse faire cela

encore une fois, merci


J'ai modifié la macro test pour l'adapter à ton classeur :
http://cjoint.com/?bxxYi8haRu
Daniel
"Marc" a écrit dans le message de
news:

Salut Daniel
je viens de tester ta macro nommé "test" sur le document que je
t'ai
envoyé.
pourrais tu vérifier si cela fonctionne vraiment bien? si c'Est
le
cas,
je
m'excuse de mon erreur et ta macro fonctionne super bien.

désolé et si tout est ok, un gros merci pour ton aide

marc


Regarde le classeur là :
http://cjoint.com/?bxs6ydHq6S
Daniel
"Marc" a écrit dans le message
de
news:

Bonjour
Les noms de la feuille1 ne se retrouvent nulle part ailleurs.
Par
contre,
je
continuerai d'ajouter les données dans la feuille 1. Donc lors
que
la
macro
s'exécutera, je veux qu'elle vérifie si les noms ont déjà été
collés
avant

exemple
feuille 1
fred
julie
feuille 2
marc
sylvie
feuille3
macro qui combinent
fred
julie
marc
sylvie
par contre, vu que les noms existent déjà dans la feuille 3,
si
je
réexécute, je ne veux pas que la macro recolle encore les noms
déjà
existants.
en espérant avoir été plus claire

merci de votre aide
marc

Bonjour.
Y a-t-il une colonne de données uniques sur laquelle on
puisse
vérifier
si
une ligne a déjà été recopiée ?
Par exemple : si Feuil1!A10 = Feuil3!An alors on ne recopie
pas
la
ligne
Feuil1!A10
Cordialement.
Daniel
"Marc" a écrit dans le
message
de
news:

Bonjour
je ne suis pas programmeur, alors je ne sais pas par quel
bout
commencé.
j'ai deux feuilles, avec les mêmes titres de colonnes. Sur
la
troisième,
j'ai les mêmes titres de colonne, mais je suis à la
recherche
d'une
macro
qui
fera en sorte d'aller chercher les données de la feuille 1
et
les
ajouter
à
la feuille 3 et même chose pour la feuille 2. Par contre,
si
deux
semaines
après j'exécutes la macro, je veux qu'elle vérifier si sur
la
feuille 1
il
y
a des nouvelles donnée et qu'elle les ajoutes à la feuille
3,
même
chose
pour
la feuille 2. Est-ce quelqu'un peut m'aider?

Merci de votre aide
Marc