Filtrer une plage et copier les valeurs dans une autre feuille...
4 réponses
13Hubert
Bonjour à tous.
Je sais, j'ai déjà posé la question, mais je n'ai rien trouvé par moi-même
et personne ne m'ayant répondu, je réitère mon appel en le reformulant :
Dans un classeur XL97, je saisie dans un tableau, des informations au fur et
à mesure que l'on me les communique. Ces informations représentent les RDV
pris par les vendeurs. Chaque vendeur est différenciés des autres par un n°.
J'ai besoin de filtrer et recopier à chaque saisie de ligne, les
informations de chaque vendeur dans SA feuille.
J'aimerais faire que cette action soit automatique. Ce que je ne sais pas
faire, c'est d'incrémenter les nouvelles informations dans la feuille du
vendeur considéré automatiquement. Ainsi, si je saisie une ligne pour le
vendeur n°2, ces informations devraient être recopiées dans la feuille n°2 à
la suite des informations déjà écrites...
Ca, chépa faire !
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
anonymousA
Bonjour,
je n'ai jusqu'ici pas répondu à ta question, non pas parce qu'elle est particulièrement difficile mais parce qu'elle manque de précision. En effet, les informations de la feuille SAISIE restent t-elles dans celle-ci auquel cas, il faudrait procéder à la MAJ totale des feuilles des vendeurs? qules noms portent les feuilles vendeurs ? cherches-tu une solution par formule ou par macro ? etc...
A+
Bonjour,
je n'ai jusqu'ici pas répondu à ta question, non pas parce qu'elle
est particulièrement difficile mais parce qu'elle manque de
précision. En effet, les informations de la feuille SAISIE restent
t-elles dans celle-ci auquel cas, il faudrait procéder à la MAJ
totale des feuilles des vendeurs? qules noms portent les feuilles
vendeurs ? cherches-tu une solution par formule ou par macro ? etc...
je n'ai jusqu'ici pas répondu à ta question, non pas parce qu'elle est particulièrement difficile mais parce qu'elle manque de précision. En effet, les informations de la feuille SAISIE restent t-elles dans celle-ci auquel cas, il faudrait procéder à la MAJ totale des feuilles des vendeurs? qules noms portent les feuilles vendeurs ? cherches-tu une solution par formule ou par macro ? etc...
A+
13Hubert
AnonymousA bonjour et merci de te pencher sur mon soucis.
Je vais tenter d'être le plus clair possible :
Excel 97;
Ma feuille de saisie se nomme "Saisie". Elle comporte une plage de 500 lignes vides au début et renseignées au fur et à mesure de l'arrivée des informations. Plusieurs colonnes sont nommées comme suit : N° vendeur, date, nom client, adresse, etc...;
Mes vendeurs sont donc repérés par numéro et chacune des autres feuilles est nommée en fonction du n° du vendeur qui lui correspond (01 - 02 - 03 - etc...) dans laquelle on trouve toutes les infos du vendeur. Ces feuilles reprenent toutes les colonnes de la feuille "SAISIE. J'ai créé une macro simpe d'impression de la feuille sur pression d'un bouton car tout au long de la journée, je dois fournir des renseignements de suivi d'activité sous la forme d'un tableau par vendeur;
J'aimerais automatiser le tri et l'exportation des données de chaque vendeur depuis la feuille "SAISIE" vers la feuille du vendeur concerné par les infos, que m'importe si ces actions sont faites par le clic sur un bouton ou à la volée...;
Les informations de la feuille "SAISIE" restent là où elles sont. Nul besoin de les effacer. D'ailleurs, si elles restent là, c'est pas plus mal car il m'arrive d'effectuer sur l'ensemble des informations, des filtres selon la demande, et avec des critères à chaque fois différents. Ca, je le fais à la main... C'est pas important. Mon problème majeur est que la demande est très forte et très répétitive pour ce qui concerne le fameux suivi par vendeur.
Voilà. Je pense avoir été le plus clair possible... Maintenant, quant à savoir si je veux ça par formule ou par macro..., franchement je n'en sais rien. J'aimerais beaucoup avoir suffisamment de connaissance pour pouvoir choisir mais là, je prendrai volontier ce que l'on me proposera. De toute manière j'apprendrai toujours quelle que sera la fonction proposée. Et si quelqu'un a la gentillese de m'aider il ne faudrait pas qu'en plus je sois exigeant... Non ? :-))
En tous cas, meri d'avance pour l'aide proposée et apportée.
Hubert -- ...from Marseille !
Bonjour,
je n'ai jusqu'ici pas répondu à ta question, non pas parce qu'elle est particulièrement difficile mais parce qu'elle manque de précision. En effet, les informations de la feuille SAISIE restent t-elles dans celle-ci auquel cas, il faudrait procéder à la MAJ totale des feuilles des vendeurs? qules noms portent les feuilles vendeurs ? cherches-tu une solution par formule ou par macro ? etc...
A+
AnonymousA bonjour et merci de te pencher sur mon soucis.
Je vais tenter d'être le plus clair possible :
Excel 97;
Ma feuille de saisie se nomme "Saisie". Elle comporte une plage de 500
lignes vides au début et renseignées au fur et à mesure de l'arrivée des
informations. Plusieurs colonnes sont nommées comme suit : N° vendeur, date,
nom client, adresse, etc...;
Mes vendeurs sont donc repérés par numéro et chacune des autres feuilles est
nommée en fonction du n° du vendeur qui lui correspond (01 - 02 - 03 -
etc...) dans laquelle on trouve toutes les infos du vendeur.
Ces feuilles reprenent toutes les colonnes de la feuille "SAISIE. J'ai créé
une macro simpe d'impression de la feuille sur pression d'un bouton car tout
au long de la journée, je dois fournir des renseignements de suivi d'activité
sous la forme d'un tableau par vendeur;
J'aimerais automatiser le tri et l'exportation des données de chaque vendeur
depuis la feuille "SAISIE" vers la feuille du vendeur concerné par les infos,
que m'importe si ces actions sont faites par le clic sur un bouton ou à la
volée...;
Les informations de la feuille "SAISIE" restent là où elles sont. Nul besoin
de les effacer. D'ailleurs, si elles restent là, c'est pas plus mal car il
m'arrive d'effectuer sur l'ensemble des informations, des filtres selon la
demande, et avec des critères à chaque fois différents. Ca, je le fais à la
main... C'est pas important. Mon problème majeur est que la demande est très
forte et très répétitive pour ce qui concerne le fameux suivi par vendeur.
Voilà. Je pense avoir été le plus clair possible...
Maintenant, quant à savoir si je veux ça par formule ou par macro...,
franchement je n'en sais rien. J'aimerais beaucoup avoir suffisamment de
connaissance pour pouvoir choisir mais là, je prendrai volontier ce que l'on
me proposera. De toute manière j'apprendrai toujours quelle que sera la
fonction proposée. Et si quelqu'un a la gentillese de m'aider il ne faudrait
pas qu'en plus je sois exigeant... Non ? :-))
En tous cas, meri d'avance pour l'aide proposée et apportée.
Hubert
--
...from Marseille !
Bonjour,
je n'ai jusqu'ici pas répondu à ta question, non pas parce qu'elle
est particulièrement difficile mais parce qu'elle manque de
précision. En effet, les informations de la feuille SAISIE restent
t-elles dans celle-ci auquel cas, il faudrait procéder à la MAJ
totale des feuilles des vendeurs? qules noms portent les feuilles
vendeurs ? cherches-tu une solution par formule ou par macro ? etc...
AnonymousA bonjour et merci de te pencher sur mon soucis.
Je vais tenter d'être le plus clair possible :
Excel 97;
Ma feuille de saisie se nomme "Saisie". Elle comporte une plage de 500 lignes vides au début et renseignées au fur et à mesure de l'arrivée des informations. Plusieurs colonnes sont nommées comme suit : N° vendeur, date, nom client, adresse, etc...;
Mes vendeurs sont donc repérés par numéro et chacune des autres feuilles est nommée en fonction du n° du vendeur qui lui correspond (01 - 02 - 03 - etc...) dans laquelle on trouve toutes les infos du vendeur. Ces feuilles reprenent toutes les colonnes de la feuille "SAISIE. J'ai créé une macro simpe d'impression de la feuille sur pression d'un bouton car tout au long de la journée, je dois fournir des renseignements de suivi d'activité sous la forme d'un tableau par vendeur;
J'aimerais automatiser le tri et l'exportation des données de chaque vendeur depuis la feuille "SAISIE" vers la feuille du vendeur concerné par les infos, que m'importe si ces actions sont faites par le clic sur un bouton ou à la volée...;
Les informations de la feuille "SAISIE" restent là où elles sont. Nul besoin de les effacer. D'ailleurs, si elles restent là, c'est pas plus mal car il m'arrive d'effectuer sur l'ensemble des informations, des filtres selon la demande, et avec des critères à chaque fois différents. Ca, je le fais à la main... C'est pas important. Mon problème majeur est que la demande est très forte et très répétitive pour ce qui concerne le fameux suivi par vendeur.
Voilà. Je pense avoir été le plus clair possible... Maintenant, quant à savoir si je veux ça par formule ou par macro..., franchement je n'en sais rien. J'aimerais beaucoup avoir suffisamment de connaissance pour pouvoir choisir mais là, je prendrai volontier ce que l'on me proposera. De toute manière j'apprendrai toujours quelle que sera la fonction proposée. Et si quelqu'un a la gentillese de m'aider il ne faudrait pas qu'en plus je sois exigeant... Non ? :-))
En tous cas, meri d'avance pour l'aide proposée et apportée.
Hubert -- ...from Marseille !
Bonjour,
je n'ai jusqu'ici pas répondu à ta question, non pas parce qu'elle est particulièrement difficile mais parce qu'elle manque de précision. En effet, les informations de la feuille SAISIE restent t-elles dans celle-ci auquel cas, il faudrait procéder à la MAJ totale des feuilles des vendeurs? qules noms portent les feuilles vendeurs ? cherches-tu une solution par formule ou par macro ? etc...
A+
Youky
Salut Hubert, comme le mentionne anoymousA, il est bon d'avoir plus de précisions. Sans être certain de bien répondre voici déja un début. Je pense, aprés avoir fait tes copier tu effaces les données de la page de saisie Bref , avec ma macro il faut effacer les données de la saisie(sinon on recopie les jours avant) Youky Sub macopie() tablo = "Feuil3" 'nom page de la saisie For lig = 2 To Sheets(tablo).[A65000].End(xlUp).Row 'nom des vendeurs en col A, les pages auront les mm noms onglet = Sheets(tablo).Cells(lig, 1) derlig = Sheets(onglet).[A65000].End(xlUp).Row + 1 For col = 2 To 6 'ici 6 est le nbre de col à recopier Sheets(onglet).Cells(derlig, col - 1) = Sheets(tablo).Cells(lig, col) Next col Next lig End Sub
"13Hubert" a écrit dans le message de news:
Bonjour à tous.
Je sais, j'ai déjà posé la question, mais je n'ai rien trouvé par moi-même et personne ne m'ayant répondu, je réitère mon appel en le reformulant :
Dans un classeur XL97, je saisie dans un tableau, des informations au fur et à mesure que l'on me les communique. Ces informations représentent les RDV pris par les vendeurs. Chaque vendeur est différenciés des autres par un n°. J'ai besoin de filtrer et recopier à chaque saisie de ligne, les informations de chaque vendeur dans SA feuille. J'aimerais faire que cette action soit automatique. Ce que je ne sais pas faire, c'est d'incrémenter les nouvelles informations dans la feuille du vendeur considéré automatiquement. Ainsi, si je saisie une ligne pour le vendeur n°2, ces informations devraient être recopiées dans la feuille n°2 à la suite des informations déjà écrites... Ca, chépa faire !
Merci de m'aider.
Hubert -- ...from Marseille !
Salut Hubert,
comme le mentionne anoymousA, il est bon d'avoir plus de précisions.
Sans être certain de bien répondre voici déja un début.
Je pense, aprés avoir fait tes copier tu effaces les données de la page de
saisie
Bref , avec ma macro il faut effacer les données de la saisie(sinon on
recopie les jours avant)
Youky
Sub macopie()
tablo = "Feuil3" 'nom page de la saisie
For lig = 2 To Sheets(tablo).[A65000].End(xlUp).Row
'nom des vendeurs en col A, les pages auront les mm noms
onglet = Sheets(tablo).Cells(lig, 1)
derlig = Sheets(onglet).[A65000].End(xlUp).Row + 1
For col = 2 To 6 'ici 6 est le nbre de col à recopier
Sheets(onglet).Cells(derlig, col - 1) = Sheets(tablo).Cells(lig, col)
Next col
Next lig
End Sub
"13Hubert" <13hubert@discussions.microsoft.com> a écrit dans le message de
news: 1520EA5E-0E35-42BC-A2A1-18F0C277441E@microsoft.com...
Bonjour à tous.
Je sais, j'ai déjà posé la question, mais je n'ai rien trouvé par moi-même
et personne ne m'ayant répondu, je réitère mon appel en le reformulant :
Dans un classeur XL97, je saisie dans un tableau, des informations au fur
et
à mesure que l'on me les communique. Ces informations représentent les RDV
pris par les vendeurs. Chaque vendeur est différenciés des autres par un
n°.
J'ai besoin de filtrer et recopier à chaque saisie de ligne, les
informations de chaque vendeur dans SA feuille.
J'aimerais faire que cette action soit automatique. Ce que je ne sais pas
faire, c'est d'incrémenter les nouvelles informations dans la feuille du
vendeur considéré automatiquement. Ainsi, si je saisie une ligne pour le
vendeur n°2, ces informations devraient être recopiées dans la feuille n°2
à
la suite des informations déjà écrites...
Ca, chépa faire !
Salut Hubert, comme le mentionne anoymousA, il est bon d'avoir plus de précisions. Sans être certain de bien répondre voici déja un début. Je pense, aprés avoir fait tes copier tu effaces les données de la page de saisie Bref , avec ma macro il faut effacer les données de la saisie(sinon on recopie les jours avant) Youky Sub macopie() tablo = "Feuil3" 'nom page de la saisie For lig = 2 To Sheets(tablo).[A65000].End(xlUp).Row 'nom des vendeurs en col A, les pages auront les mm noms onglet = Sheets(tablo).Cells(lig, 1) derlig = Sheets(onglet).[A65000].End(xlUp).Row + 1 For col = 2 To 6 'ici 6 est le nbre de col à recopier Sheets(onglet).Cells(derlig, col - 1) = Sheets(tablo).Cells(lig, col) Next col Next lig End Sub
"13Hubert" a écrit dans le message de news:
Bonjour à tous.
Je sais, j'ai déjà posé la question, mais je n'ai rien trouvé par moi-même et personne ne m'ayant répondu, je réitère mon appel en le reformulant :
Dans un classeur XL97, je saisie dans un tableau, des informations au fur et à mesure que l'on me les communique. Ces informations représentent les RDV pris par les vendeurs. Chaque vendeur est différenciés des autres par un n°. J'ai besoin de filtrer et recopier à chaque saisie de ligne, les informations de chaque vendeur dans SA feuille. J'aimerais faire que cette action soit automatique. Ce que je ne sais pas faire, c'est d'incrémenter les nouvelles informations dans la feuille du vendeur considéré automatiquement. Ainsi, si je saisie une ligne pour le vendeur n°2, ces informations devraient être recopiées dans la feuille n°2 à la suite des informations déjà écrites... Ca, chépa faire !
Merci de m'aider.
Hubert -- ...from Marseille !
michdenis
Bonjour 13Hubert,
voici la procédure :
Si tu nommes tes feuilles avec seulement un chiffre, attention, si le chiffre retenu est 1 ou 2, dans la procédure, lorsque viendra le temps de copier les données du filtre vers la feuille de destination, Excel interprétera Sheets(1)... comme étant la première feuille (position dans ton classeur) et ce n'est pas nécessairement vrai. Ce ne sera pas évident de faire comprendre à excel que 1 ce n'est pas sa propriété "Index" mais le nom de la feuille.
Tu dois adapter le nom de la feuil1 (Propriété Name de l'objet) pour le nom de ta feuille de ton application. Il en va de même pour la plage de cellules où se retrouve ton tableau.
'----------------------------- Sub Report_Infor_Vendeurs()
Dim Rg As Range, Rg1 As Range Dim Arr As Variant
'Tu liste tes numéros de vendeurs 'si leur nom n'est pas numérique, tu les places entre guillements. Arr = Array(2, 3)
With Feuil1 Set Rg = .Range("A1:G" & .Range("A65536").End(xlUp).Row) End With
Application.ScreenUpdating = False
With Rg For Each elt In Arr .AutoFilter Field:=1, Criteria1:=elt Set Rg1 = .SpecialCells(xlCellTypeVisible) Rg1.Copy Sheets(elt).Range("A1") Next .AutoFilter End With
Set Rg = Nothing: Set Rg1 = Nothing End Sub '-----------------------------
Salutations!
"13Hubert" a écrit dans le message de news:
Bonjour à tous.
Je sais, j'ai déjà posé la question, mais je n'ai rien trouvé par moi-même et personne ne m'ayant répondu, je réitère mon appel en le reformulant :
Dans un classeur XL97, je saisie dans un tableau, des informations au fur et à mesure que l'on me les communique. Ces informations représentent les RDV pris par les vendeurs. Chaque vendeur est différenciés des autres par un n°. J'ai besoin de filtrer et recopier à chaque saisie de ligne, les informations de chaque vendeur dans SA feuille. J'aimerais faire que cette action soit automatique. Ce que je ne sais pas faire, c'est d'incrémenter les nouvelles informations dans la feuille du vendeur considéré automatiquement. Ainsi, si je saisie une ligne pour le vendeur n°2, ces informations devraient être recopiées dans la feuille n°2 à la suite des informations déjà écrites... Ca, chépa faire !
Merci de m'aider.
Hubert -- ...from Marseille !
Bonjour 13Hubert,
voici la procédure :
Si tu nommes tes feuilles avec seulement un chiffre, attention,
si le chiffre retenu est 1 ou 2, dans la procédure, lorsque viendra
le temps de copier les données du filtre vers la feuille de destination,
Excel interprétera Sheets(1)... comme étant la première feuille
(position dans ton classeur) et ce n'est pas nécessairement vrai.
Ce ne sera pas évident de faire comprendre à excel que 1 ce n'est
pas sa propriété "Index" mais le nom de la feuille.
Tu dois adapter le nom de la feuil1 (Propriété Name de l'objet)
pour le nom de ta feuille de ton application. Il en va de même
pour la plage de cellules où se retrouve ton tableau.
'-----------------------------
Sub Report_Infor_Vendeurs()
Dim Rg As Range, Rg1 As Range
Dim Arr As Variant
'Tu liste tes numéros de vendeurs
'si leur nom n'est pas numérique, tu les places entre guillements.
Arr = Array(2, 3)
With Feuil1
Set Rg = .Range("A1:G" & .Range("A65536").End(xlUp).Row)
End With
Application.ScreenUpdating = False
With Rg
For Each elt In Arr
.AutoFilter Field:=1, Criteria1:=elt
Set Rg1 = .SpecialCells(xlCellTypeVisible)
Rg1.Copy Sheets(elt).Range("A1")
Next
.AutoFilter
End With
Set Rg = Nothing: Set Rg1 = Nothing
End Sub
'-----------------------------
Salutations!
"13Hubert" <13hubert@discussions.microsoft.com> a écrit dans le message de news:
1520EA5E-0E35-42BC-A2A1-18F0C277441E@microsoft.com...
Bonjour à tous.
Je sais, j'ai déjà posé la question, mais je n'ai rien trouvé par moi-même
et personne ne m'ayant répondu, je réitère mon appel en le reformulant :
Dans un classeur XL97, je saisie dans un tableau, des informations au fur et
à mesure que l'on me les communique. Ces informations représentent les RDV
pris par les vendeurs. Chaque vendeur est différenciés des autres par un n°.
J'ai besoin de filtrer et recopier à chaque saisie de ligne, les
informations de chaque vendeur dans SA feuille.
J'aimerais faire que cette action soit automatique. Ce que je ne sais pas
faire, c'est d'incrémenter les nouvelles informations dans la feuille du
vendeur considéré automatiquement. Ainsi, si je saisie une ligne pour le
vendeur n°2, ces informations devraient être recopiées dans la feuille n°2 à
la suite des informations déjà écrites...
Ca, chépa faire !
Si tu nommes tes feuilles avec seulement un chiffre, attention, si le chiffre retenu est 1 ou 2, dans la procédure, lorsque viendra le temps de copier les données du filtre vers la feuille de destination, Excel interprétera Sheets(1)... comme étant la première feuille (position dans ton classeur) et ce n'est pas nécessairement vrai. Ce ne sera pas évident de faire comprendre à excel que 1 ce n'est pas sa propriété "Index" mais le nom de la feuille.
Tu dois adapter le nom de la feuil1 (Propriété Name de l'objet) pour le nom de ta feuille de ton application. Il en va de même pour la plage de cellules où se retrouve ton tableau.
'----------------------------- Sub Report_Infor_Vendeurs()
Dim Rg As Range, Rg1 As Range Dim Arr As Variant
'Tu liste tes numéros de vendeurs 'si leur nom n'est pas numérique, tu les places entre guillements. Arr = Array(2, 3)
With Feuil1 Set Rg = .Range("A1:G" & .Range("A65536").End(xlUp).Row) End With
Application.ScreenUpdating = False
With Rg For Each elt In Arr .AutoFilter Field:=1, Criteria1:=elt Set Rg1 = .SpecialCells(xlCellTypeVisible) Rg1.Copy Sheets(elt).Range("A1") Next .AutoFilter End With
Set Rg = Nothing: Set Rg1 = Nothing End Sub '-----------------------------
Salutations!
"13Hubert" a écrit dans le message de news:
Bonjour à tous.
Je sais, j'ai déjà posé la question, mais je n'ai rien trouvé par moi-même et personne ne m'ayant répondu, je réitère mon appel en le reformulant :
Dans un classeur XL97, je saisie dans un tableau, des informations au fur et à mesure que l'on me les communique. Ces informations représentent les RDV pris par les vendeurs. Chaque vendeur est différenciés des autres par un n°. J'ai besoin de filtrer et recopier à chaque saisie de ligne, les informations de chaque vendeur dans SA feuille. J'aimerais faire que cette action soit automatique. Ce que je ne sais pas faire, c'est d'incrémenter les nouvelles informations dans la feuille du vendeur considéré automatiquement. Ainsi, si je saisie une ligne pour le vendeur n°2, ces informations devraient être recopiées dans la feuille n°2 à la suite des informations déjà écrites... Ca, chépa faire !