S'il y a trois colonnes, ne suffit-il pas de comparer la cellule de la colonne N° appelé avec celle de la colonne N° appelant ?
Dans une quatrieme colonne : ²Â > Si c'est identique, alors cela affiche vrai, sinon faux. Toutes les cellules avec vrai indique un numéro appelant et appelé identique
Ensuite avec un filtre ou un TCD, tu devrais trouver ton bonheur.
Cordialement,
F.
On 26 mar, 16:00, peneloppe wrote:
Bjr voilà mon problème
je dois faire le calcul annuel des appels telephoniques en interne
j'ai donc une colonne avec les villes , une autre avec les n° appelants et une autre avec les n° appelés
On retrouve bien evidemment dans la colonne appelés certains n° appelants (principa de l'appel interne )
Ma question est comment isoler, si possible sans macro, ces appels internes ??
si pas possible sans macro, tant pis je m'y mettrais
merci de vos conseils..
Bonjour,
S'il y a trois colonnes, ne suffit-il pas de comparer la cellule de la
colonne N° appelé avec celle de la colonne N° appelant ?
Dans une quatrieme colonne : =B2=C2 > Si c'est identique, alors
cela affiche vrai, sinon faux. Toutes les cellules avec vrai indique
un numéro appelant et appelé identique
Ensuite avec un filtre ou un TCD, tu devrais trouver ton bonheur.
Cordialement,
F.
On 26 mar, 16:00, peneloppe <p...@ujy.com> wrote:
Bjr
voilà mon problème
je dois faire le calcul annuel des appels telephoniques en interne
j'ai donc une colonne avec les villes , une autre avec les n°
appelants et une autre avec les n° appelés
On retrouve bien evidemment dans la colonne appelés certains n°
appelants (principa de l'appel interne )
Ma question est comment isoler, si possible sans macro, ces appels
internes ??
si pas possible sans macro, tant pis je m'y mettrais
S'il y a trois colonnes, ne suffit-il pas de comparer la cellule de la colonne N° appelé avec celle de la colonne N° appelant ?
Dans une quatrieme colonne : ²Â > Si c'est identique, alors cela affiche vrai, sinon faux. Toutes les cellules avec vrai indique un numéro appelant et appelé identique
Ensuite avec un filtre ou un TCD, tu devrais trouver ton bonheur.
Cordialement,
F.
On 26 mar, 16:00, peneloppe wrote:
Bjr voilà mon problème
je dois faire le calcul annuel des appels telephoniques en interne
j'ai donc une colonne avec les villes , une autre avec les n° appelants et une autre avec les n° appelés
On retrouve bien evidemment dans la colonne appelés certains n° appelants (principa de l'appel interne )
Ma question est comment isoler, si possible sans macro, ces appels internes ??
si pas possible sans macro, tant pis je m'y mettrais
merci de vos conseils..
Misange
Bjr voilà mon problème
je dois faire le calcul annuel des appels telephoniques en interne
j'ai donc une colonne avec les villes , une autre avec les n° appelants et une autre avec les n° appelés
On retrouve bien evidemment dans la colonne appelés certains n° appelants (principa de l'appel interne )
Ma question est comment isoler, si possible sans macro, ces appels internes ??
si pas possible sans macro, tant pis je m'y mettrais
merci de vos conseils..
Bonjour il faut que tu élimines de la colonne appelés les numéros se trouvant dans la colonne appelants donc si tu ne veux pas de macro, tu peux ajouter une colonne qui te dira si c'est un appel interne ou pas et ensuite trier ton tableau pour regrouper tous les appels internes et les supprimer tes appelants en colonne A, tes appelés en colonne B en C1 tu écris =SI(NB.SI($A:$A;B1)>=1;"interne";"OK") ensuite tu tries. Sinon par macros, plusieurs solutions regarde ici pour directement supprimer les doublons http://www.excelabo.net/excel/comparereliminer.php (à adapter car il faut que tu supprimes la ligne entière)
-- Misange migrateuse XlWiki : Participez à un travail collaboratif sur excel ! http://xlwiki.free.fr/wiki http://www.excelabo.net
Bjr
voilà mon problème
je dois faire le calcul annuel des appels telephoniques en interne
j'ai donc une colonne avec les villes , une autre avec les n°
appelants et une autre avec les n° appelés
On retrouve bien evidemment dans la colonne appelés certains n°
appelants (principa de l'appel interne )
Ma question est comment isoler, si possible sans macro, ces appels
internes ??
si pas possible sans macro, tant pis je m'y mettrais
merci de vos conseils..
Bonjour
il faut que tu élimines de la colonne appelés les numéros se trouvant
dans la colonne appelants donc si tu ne veux pas de macro, tu peux
ajouter une colonne qui te dira si c'est un appel interne ou pas et
ensuite trier ton tableau pour regrouper tous les appels internes et les
supprimer
tes appelants en colonne A, tes appelés en colonne B en C1 tu écris
=SI(NB.SI($A:$A;B1)>=1;"interne";"OK")
ensuite tu tries.
Sinon par macros, plusieurs solutions
regarde ici pour directement supprimer les doublons
http://www.excelabo.net/excel/comparereliminer.php (à adapter car il
faut que tu supprimes la ligne entière)
--
Misange migrateuse
XlWiki : Participez à un travail collaboratif sur excel !
http://xlwiki.free.fr/wiki
http://www.excelabo.net
je dois faire le calcul annuel des appels telephoniques en interne
j'ai donc une colonne avec les villes , une autre avec les n° appelants et une autre avec les n° appelés
On retrouve bien evidemment dans la colonne appelés certains n° appelants (principa de l'appel interne )
Ma question est comment isoler, si possible sans macro, ces appels internes ??
si pas possible sans macro, tant pis je m'y mettrais
merci de vos conseils..
Bonjour il faut que tu élimines de la colonne appelés les numéros se trouvant dans la colonne appelants donc si tu ne veux pas de macro, tu peux ajouter une colonne qui te dira si c'est un appel interne ou pas et ensuite trier ton tableau pour regrouper tous les appels internes et les supprimer tes appelants en colonne A, tes appelés en colonne B en C1 tu écris =SI(NB.SI($A:$A;B1)>=1;"interne";"OK") ensuite tu tries. Sinon par macros, plusieurs solutions regarde ici pour directement supprimer les doublons http://www.excelabo.net/excel/comparereliminer.php (à adapter car il faut que tu supprimes la ligne entière)
-- Misange migrateuse XlWiki : Participez à un travail collaboratif sur excel ! http://xlwiki.free.fr/wiki http://www.excelabo.net
Misange
Bonjour,
S'il y a trois colonnes, ne suffit-il pas de comparer la cellule de la colonne N° appelé avec celle de la colonne N° appelant ?
Dans une quatrieme colonne : ²Â > Si c'est identique, alors cela affiche vrai, sinon faux. Toutes les cellules avec vrai indique un numéro appelant et appelé identique
euh... Tu t'appelles souvent toi même au téléphone ? chez moi ça sonne occupé :-)
-- Misange migrateuse XlWiki : Participez à un travail collaboratif sur excel ! http://xlwiki.free.fr/wiki http://www.excelabo.net
Bonjour,
S'il y a trois colonnes, ne suffit-il pas de comparer la cellule de la
colonne N° appelé avec celle de la colonne N° appelant ?
Dans une quatrieme colonne : ²Â > Si c'est identique, alors
cela affiche vrai, sinon faux. Toutes les cellules avec vrai indique
un numéro appelant et appelé identique
euh... Tu t'appelles souvent toi même au téléphone ? chez moi ça sonne
occupé :-)
--
Misange migrateuse
XlWiki : Participez à un travail collaboratif sur excel !
http://xlwiki.free.fr/wiki
http://www.excelabo.net
S'il y a trois colonnes, ne suffit-il pas de comparer la cellule de la colonne N° appelé avec celle de la colonne N° appelant ?
Dans une quatrieme colonne : ²Â > Si c'est identique, alors cela affiche vrai, sinon faux. Toutes les cellules avec vrai indique un numéro appelant et appelé identique
euh... Tu t'appelles souvent toi même au téléphone ? chez moi ça sonne occupé :-)
-- Misange migrateuse XlWiki : Participez à un travail collaboratif sur excel ! http://xlwiki.free.fr/wiki http://www.excelabo.net
FdeCourt
Oulaaaah.... :) Merde et je ne suis même pas fatigué !!!!!
On 26 mar, 16:23, Misange wrote:
Bonjour,
S'il y a trois colonnes, ne suffit-il pas de comparer la cellule de la colonne N° appelé avec celle de la colonne N° appelant ?
Dans une quatrieme colonne : ²Â > Si c'est identique, alo rs cela affiche vrai, sinon faux. Toutes les cellules avec vrai indique un numéro appelant et appelé identique
euh... Tu t'appelles souvent toi même au téléphone ? chez moi ça s onne occupé :-)
-- Misange migrateuse XlWiki : Participez à un travail collaboratif sur excel !http://xlwiki.f ree.fr/wikihttp://www.excelabo.net
Oulaaaah.... :)
Merde et je ne suis même pas fatigué !!!!!
On 26 mar, 16:23, Misange <misa...@devinez-ou.net> wrote:
Bonjour,
S'il y a trois colonnes, ne suffit-il pas de comparer la cellule de la
colonne N° appelé avec celle de la colonne N° appelant ?
Dans une quatrieme colonne : =B2=C2 > Si c'est identique, alo rs
cela affiche vrai, sinon faux. Toutes les cellules avec vrai indique
un numéro appelant et appelé identique
euh... Tu t'appelles souvent toi même au téléphone ? chez moi ça s onne
occupé :-)
--
Misange migrateuse
XlWiki : Participez à un travail collaboratif sur excel !http://xlwiki.f ree.fr/wikihttp://www.excelabo.net
Oulaaaah.... :) Merde et je ne suis même pas fatigué !!!!!
On 26 mar, 16:23, Misange wrote:
Bonjour,
S'il y a trois colonnes, ne suffit-il pas de comparer la cellule de la colonne N° appelé avec celle de la colonne N° appelant ?
Dans une quatrieme colonne : ²Â > Si c'est identique, alo rs cela affiche vrai, sinon faux. Toutes les cellules avec vrai indique un numéro appelant et appelé identique
euh... Tu t'appelles souvent toi même au téléphone ? chez moi ça s onne occupé :-)
-- Misange migrateuse XlWiki : Participez à un travail collaboratif sur excel !http://xlwiki.f ree.fr/wikihttp://www.excelabo.net
peneloppe
il s'agit bien entendu d'appels telephoniqes en entreprise et multi sites......
il s'agit bien entendu d'appels telephoniqes en entreprise et multi
sites......
il s'agit bien entendu d'appels telephoniqes en entreprise et multi sites......
Michel Samoey
Bonjour, il faut prévoir le cas ou un numéro n'appelle jamais mais peut être appelé
Il faudrait aussi que Peneloppe précise si les numéros internes sont au même format que les numéros externes, ou bien s'il commencent tous par la même séquence, il y aurait peut être aussi un solution simple de ce coté là.
Cordialement Michel
"Misange" a écrit dans le message de news:
Bonjour il faut que tu élimines de la colonne appelés les numéros se trouvant dans la colonne appelants donc si tu ne veux pas de macro, tu peux ajouter une colonne qui te dira si c'est un appel interne ou pas et ensuite trier ton tableau pour regrouper tous les appels internes et les supprimer tes appelants en colonne A, tes appelés en colonne B en C1 tu écris =SI(NB.SI($A:$A;B1)>=1;"interne";"OK") ensuite tu tries. Sinon par macros, plusieurs solutions regarde ici pour directement supprimer les doublons http://www.excelabo.net/excel/comparereliminer.php (à adapter car il faut que tu supprimes la ligne entière)
-- Misange migrateuse XlWiki : Participez à un travail collaboratif sur excel ! http://xlwiki.free.fr/wiki http://www.excelabo.net
Bonjour,
il faut prévoir le cas ou un numéro n'appelle jamais mais peut être appelé
Il faudrait aussi que Peneloppe précise si les numéros internes sont au
même format que les numéros externes, ou bien s'il commencent tous par la
même séquence, il y aurait peut être aussi un solution simple de ce coté là.
Cordialement
Michel
"Misange" <misange@devinez-ou.net> a écrit dans le message de news:
uaAcmU1jIHA.5160@TK2MSFTNGP05.phx.gbl...
Bonjour
il faut que tu élimines de la colonne appelés les numéros se trouvant dans
la colonne appelants donc si tu ne veux pas de macro, tu peux ajouter une
colonne qui te dira si c'est un appel interne ou pas et ensuite trier ton
tableau pour regrouper tous les appels internes et les supprimer
tes appelants en colonne A, tes appelés en colonne B en C1 tu écris
=SI(NB.SI($A:$A;B1)>=1;"interne";"OK")
ensuite tu tries.
Sinon par macros, plusieurs solutions
regarde ici pour directement supprimer les doublons
http://www.excelabo.net/excel/comparereliminer.php (à adapter car il faut
que tu supprimes la ligne entière)
--
Misange migrateuse
XlWiki : Participez à un travail collaboratif sur excel !
http://xlwiki.free.fr/wiki
http://www.excelabo.net
Bonjour, il faut prévoir le cas ou un numéro n'appelle jamais mais peut être appelé
Il faudrait aussi que Peneloppe précise si les numéros internes sont au même format que les numéros externes, ou bien s'il commencent tous par la même séquence, il y aurait peut être aussi un solution simple de ce coté là.
Cordialement Michel
"Misange" a écrit dans le message de news:
Bonjour il faut que tu élimines de la colonne appelés les numéros se trouvant dans la colonne appelants donc si tu ne veux pas de macro, tu peux ajouter une colonne qui te dira si c'est un appel interne ou pas et ensuite trier ton tableau pour regrouper tous les appels internes et les supprimer tes appelants en colonne A, tes appelés en colonne B en C1 tu écris =SI(NB.SI($A:$A;B1)>=1;"interne";"OK") ensuite tu tries. Sinon par macros, plusieurs solutions regarde ici pour directement supprimer les doublons http://www.excelabo.net/excel/comparereliminer.php (à adapter car il faut que tu supprimes la ligne entière)
-- Misange migrateuse XlWiki : Participez à un travail collaboratif sur excel ! http://xlwiki.free.fr/wiki http://www.excelabo.net
Misange
il s'agit bien entendu d'appels telephoniqes en entreprise et multi sites...... oui c'est ce que j'ai compris. La solution que je t'ai proposée ne te
convient pas ? si c'est le cas explique mieux ce que tu veux
-- Misange migrateuse XlWiki : Participez à un travail collaboratif sur excel ! http://xlwiki.free.fr/wiki http://www.excelabo.net
il s'agit bien entendu d'appels telephoniqes en entreprise et multi
sites......
oui c'est ce que j'ai compris. La solution que je t'ai proposée ne te
convient pas ? si c'est le cas explique mieux ce que tu veux
--
Misange migrateuse
XlWiki : Participez à un travail collaboratif sur excel !
http://xlwiki.free.fr/wiki
http://www.excelabo.net
il s'agit bien entendu d'appels telephoniqes en entreprise et multi sites...... oui c'est ce que j'ai compris. La solution que je t'ai proposée ne te
convient pas ? si c'est le cas explique mieux ce que tu veux
-- Misange migrateuse XlWiki : Participez à un travail collaboratif sur excel ! http://xlwiki.free.fr/wiki http://www.excelabo.net
peneloppe
D'abord un grand merci pour votre aide
ce que je n'aie pas dit
la taille du fichier : 445 171 lignes et une quinzaine de colonnes je ne peux rien supprimer : a partir du moment ou je dois calculer le cout des appels ; si je supprime des doublons , je supprime également les données associées a cette suppression
c'est quoi un appel interne ?
c'est un numero de la colonne appelés que l'on va retrouver dans la colonne appelant
donc en fait il faut pour chaque cellule de la colonne appelés regarder si la valeur de la cellule se retrouve dans le colonne appelant Sans macro, je vois pas comment faire
pour que ce soit plus explicite , voilà ce que ca donne
A B C Appelant Appeles Interne 1 195 2 1 OK 3 77 OK 4 593 20 85 OK 17 24 65 43 OK 85 73 15 20 OK 36 4 OK 43 17 OK 77 861 62 674
D'abord un grand merci pour votre aide
ce que je n'aie pas dit
la taille du fichier : 445 171 lignes et une quinzaine de colonnes
je ne peux rien supprimer : a partir du moment ou je dois calculer le
cout des appels ; si je supprime des doublons , je supprime également
les données associées a cette suppression
c'est quoi un appel interne ?
c'est un numero de la colonne appelés que l'on va retrouver dans la
colonne appelant
donc en fait il faut pour chaque cellule de la colonne appelés
regarder si la valeur de la cellule se retrouve dans le colonne
appelant
Sans macro, je vois pas comment faire
pour que ce soit plus explicite , voilà ce que ca donne
A B C
Appelant Appeles Interne
1 195
2 1 OK
3 77 OK
4 593
20 85 OK
17 24
65 43 OK
85 73
15 20 OK
36 4 OK
43 17 OK
77 861
62 674
la taille du fichier : 445 171 lignes et une quinzaine de colonnes je ne peux rien supprimer : a partir du moment ou je dois calculer le cout des appels ; si je supprime des doublons , je supprime également les données associées a cette suppression
c'est quoi un appel interne ?
c'est un numero de la colonne appelés que l'on va retrouver dans la colonne appelant
donc en fait il faut pour chaque cellule de la colonne appelés regarder si la valeur de la cellule se retrouve dans le colonne appelant Sans macro, je vois pas comment faire
pour que ce soit plus explicite , voilà ce que ca donne
A B C Appelant Appeles Interne 1 195 2 1 OK 3 77 OK 4 593 20 85 OK 17 24 65 43 OK 85 73 15 20 OK 36 4 OK 43 17 OK 77 861 62 674
Misange
D'abord un grand merci pour votre aide
ce que je n'aie pas dit
la taille du fichier : 445 171 lignes et une quinzaine de colonnes je ne peux rien supprimer : a partir du moment ou je dois calculer le cout des appels ; si je supprime des doublons , je supprime également les données associées a cette suppression Alors ce que je te propose au plus simple et sans macro:
Une fois que tu as ajouté ta colonne C, tu fais ton calcul à l'aide de sommeprod (voir sur xlwiki dans la rubrique fonction des explications détaillées sur cette fonction magique et documentée sur un pouillème de ses capacités seulement dans l'aide d'excel.) Tu peux ainsi combiner de multiples critères de sélection de tes données.
Autre solution : tu récupères dans ta colonne C des "OK" ou "interne", tu fais un filtre sur ce terme et tu copies tes données sur une autre feuille sur laquelle tu fais tes calculs. De cette façon ta feuille initiale (après suppression du filtre) n'est pas modifiée, sauf la colonne C que tu peux toujours effacer ensuite.
Sinon encore tu fais ton calcul par macro, en testant pour chaque ligne si elle répond ou non au critère.
Y'a du choix !
-- Misange migrateuse XlWiki : Participez à un travail collaboratif sur excel ! http://xlwiki.free.fr/wiki http://www.excelabo.net
D'abord un grand merci pour votre aide
ce que je n'aie pas dit
la taille du fichier : 445 171 lignes et une quinzaine de colonnes
je ne peux rien supprimer : a partir du moment ou je dois calculer le
cout des appels ; si je supprime des doublons , je supprime également
les données associées a cette suppression
Alors ce que je te propose au plus simple et sans macro:
Une fois que tu as ajouté ta colonne C, tu fais ton calcul à l'aide de
sommeprod (voir sur xlwiki dans la rubrique fonction des explications
détaillées sur cette fonction magique et documentée sur un pouillème de
ses capacités seulement dans l'aide d'excel.) Tu peux ainsi combiner de
multiples critères de sélection de tes données.
Autre solution : tu récupères dans ta colonne C des "OK" ou "interne",
tu fais un filtre sur ce terme et tu copies tes données sur une autre
feuille sur laquelle tu fais tes calculs.
De cette façon ta feuille initiale (après suppression du filtre) n'est
pas modifiée, sauf la colonne C que tu peux toujours effacer ensuite.
Sinon encore tu fais ton calcul par macro, en testant pour chaque ligne
si elle répond ou non au critère.
Y'a du choix !
--
Misange migrateuse
XlWiki : Participez à un travail collaboratif sur excel !
http://xlwiki.free.fr/wiki
http://www.excelabo.net
la taille du fichier : 445 171 lignes et une quinzaine de colonnes je ne peux rien supprimer : a partir du moment ou je dois calculer le cout des appels ; si je supprime des doublons , je supprime également les données associées a cette suppression Alors ce que je te propose au plus simple et sans macro:
Une fois que tu as ajouté ta colonne C, tu fais ton calcul à l'aide de sommeprod (voir sur xlwiki dans la rubrique fonction des explications détaillées sur cette fonction magique et documentée sur un pouillème de ses capacités seulement dans l'aide d'excel.) Tu peux ainsi combiner de multiples critères de sélection de tes données.
Autre solution : tu récupères dans ta colonne C des "OK" ou "interne", tu fais un filtre sur ce terme et tu copies tes données sur une autre feuille sur laquelle tu fais tes calculs. De cette façon ta feuille initiale (après suppression du filtre) n'est pas modifiée, sauf la colonne C que tu peux toujours effacer ensuite.
Sinon encore tu fais ton calcul par macro, en testant pour chaque ligne si elle répond ou non au critère.
Y'a du choix !
-- Misange migrateuse XlWiki : Participez à un travail collaboratif sur excel ! http://xlwiki.free.fr/wiki http://www.excelabo.net
FdeCourt
Salut,
Avec un un sommeprod, cela risque d'être extrement long a calculer, surtout sur les 445 171 lignes.....
Avec une macro, pour analyser 65535 lignes, dont environ 50% sont des numéros internes, cela m'a pris 1 minute 41 (attention, je me suis basé sur 3 colonne uniquement, la macro écrit dans la colonne C).
En faisant la même chose avec SOMMEPROD "=SOMMEPROD(N(B1=$A$1:$A $65535))", en 1 minute 41, excel a fait le calcul pour 3139 lignes seulement
Option Base 1
Sub test_doublon() Dim donnees Dim resultat() Dim MaCollection As New Collection Dim d As Long, i As Long, Lgn As Long
For i = 1 To Lgn On Error Resume Next MaCollection.Add Item:=donnees(i, 1), key:=donnees(i, 1) Next d = MaCollection.Count + 1 For i = 1 To Lgn On Error Resume Next MaCollection.Add Item:=donnees(i, 2), key:=donnees(i, 2) If Err <> 0 Then resultat(i) = "Interne" Else MaCollection.Remove (d) End If Next
peneloppe a écrit :> D'abord un grand merci pour votre aide
ce que je n'aie pas dit
la taille du fichier : 445 171 lignes et une quinzaine de colonnes je ne peux rien supprimer : a partir du moment ou je dois calculer le cout des appels ; si je supprime des doublons , je supprime également les données associées a cette suppression
Alors ce que je te propose au plus simple et sans macro: Une fois que tu as ajouté ta colonne C, tu fais ton calcul à l'aide de sommeprod (voir sur xlwiki dans la rubrique fonction des explications détaillées sur cette fonction magique et documentée sur un pouillè me de ses capacités seulement dans l'aide d'excel.) Tu peux ainsi combiner de multiples critères de sélection de tes données.
Autre solution : tu récupères dans ta colonne C des "OK" ou "interne", tu fais un filtre sur ce terme et tu copies tes données sur une autre feuille sur laquelle tu fais tes calculs. De cette façon ta feuille initiale (après suppression du filtre) n'est pas modifiée, sauf la colonne C que tu peux toujours effacer ensuite.
Sinon encore tu fais ton calcul par macro, en testant pour chaque ligne si elle répond ou non au critère.
Y'a du choix !
-- Misange migrateuse XlWiki : Participez à un travail collaboratif sur excel !http://xlwiki.f ree.fr/wikihttp://www.excelabo.net
Salut,
Avec un un sommeprod, cela risque d'être extrement long a calculer,
surtout sur les 445 171 lignes.....
Avec une macro, pour analyser 65535 lignes, dont environ 50% sont des
numéros internes, cela m'a pris 1 minute 41 (attention, je me suis
basé sur 3 colonne uniquement, la macro écrit dans la colonne C).
En faisant la même chose avec SOMMEPROD "=SOMMEPROD(N(B1=$A$1:$A
$65535))", en 1 minute 41, excel a fait le calcul pour 3139 lignes
seulement
Option Base 1
Sub test_doublon()
Dim donnees
Dim resultat()
Dim MaCollection As New Collection
Dim d As Long, i As Long, Lgn As Long
For i = 1 To Lgn
On Error Resume Next
MaCollection.Add Item:=donnees(i, 1), key:=donnees(i, 1)
Next
d = MaCollection.Count + 1
For i = 1 To Lgn
On Error Resume Next
MaCollection.Add Item:=donnees(i, 2), key:=donnees(i, 2)
If Err <> 0 Then
resultat(i) = "Interne"
Else
MaCollection.Remove (d)
End If
Next
On 27 mar, 09:55, Misange <misa...@devinez-ou.net> wrote:
peneloppe a écrit :> D'abord un grand merci pour votre aide
ce que je n'aie pas dit
la taille du fichier : 445 171 lignes et une quinzaine de colonnes
je ne peux rien supprimer : a partir du moment ou je dois calculer le
cout des appels ; si je supprime des doublons , je supprime également
les données associées a cette suppression
Alors ce que je te propose au plus simple et sans macro:
Une fois que tu as ajouté ta colonne C, tu fais ton calcul à l'aide de
sommeprod (voir sur xlwiki dans la rubrique fonction des explications
détaillées sur cette fonction magique et documentée sur un pouillè me de
ses capacités seulement dans l'aide d'excel.) Tu peux ainsi combiner de
multiples critères de sélection de tes données.
Autre solution : tu récupères dans ta colonne C des "OK" ou "interne",
tu fais un filtre sur ce terme et tu copies tes données sur une autre
feuille sur laquelle tu fais tes calculs.
De cette façon ta feuille initiale (après suppression du filtre) n'est
pas modifiée, sauf la colonne C que tu peux toujours effacer ensuite.
Sinon encore tu fais ton calcul par macro, en testant pour chaque ligne
si elle répond ou non au critère.
Y'a du choix !
--
Misange migrateuse
XlWiki : Participez à un travail collaboratif sur excel !http://xlwiki.f ree.fr/wikihttp://www.excelabo.net
Avec un un sommeprod, cela risque d'être extrement long a calculer, surtout sur les 445 171 lignes.....
Avec une macro, pour analyser 65535 lignes, dont environ 50% sont des numéros internes, cela m'a pris 1 minute 41 (attention, je me suis basé sur 3 colonne uniquement, la macro écrit dans la colonne C).
En faisant la même chose avec SOMMEPROD "=SOMMEPROD(N(B1=$A$1:$A $65535))", en 1 minute 41, excel a fait le calcul pour 3139 lignes seulement
Option Base 1
Sub test_doublon() Dim donnees Dim resultat() Dim MaCollection As New Collection Dim d As Long, i As Long, Lgn As Long
For i = 1 To Lgn On Error Resume Next MaCollection.Add Item:=donnees(i, 1), key:=donnees(i, 1) Next d = MaCollection.Count + 1 For i = 1 To Lgn On Error Resume Next MaCollection.Add Item:=donnees(i, 2), key:=donnees(i, 2) If Err <> 0 Then resultat(i) = "Interne" Else MaCollection.Remove (d) End If Next
peneloppe a écrit :> D'abord un grand merci pour votre aide
ce que je n'aie pas dit
la taille du fichier : 445 171 lignes et une quinzaine de colonnes je ne peux rien supprimer : a partir du moment ou je dois calculer le cout des appels ; si je supprime des doublons , je supprime également les données associées a cette suppression
Alors ce que je te propose au plus simple et sans macro: Une fois que tu as ajouté ta colonne C, tu fais ton calcul à l'aide de sommeprod (voir sur xlwiki dans la rubrique fonction des explications détaillées sur cette fonction magique et documentée sur un pouillè me de ses capacités seulement dans l'aide d'excel.) Tu peux ainsi combiner de multiples critères de sélection de tes données.
Autre solution : tu récupères dans ta colonne C des "OK" ou "interne", tu fais un filtre sur ce terme et tu copies tes données sur une autre feuille sur laquelle tu fais tes calculs. De cette façon ta feuille initiale (après suppression du filtre) n'est pas modifiée, sauf la colonne C que tu peux toujours effacer ensuite.
Sinon encore tu fais ton calcul par macro, en testant pour chaque ligne si elle répond ou non au critère.
Y'a du choix !
-- Misange migrateuse XlWiki : Participez à un travail collaboratif sur excel !http://xlwiki.f ree.fr/wikihttp://www.excelabo.net