IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Excel Discussion :

Suppression des doublons de signes différents.


Sujet :

Excel

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Ingénieur commercial
    Inscrit en
    Juin 2016
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Algérie

    Informations professionnelles :
    Activité : Ingénieur commercial

    Informations forums :
    Inscription : Juin 2016
    Messages : 7
    Points : 7
    Points
    7
    Par défaut Suppression des doublons de signes différents.
    Bonjour,
    sur une colonne excel de 1000 lignes environ des valeurs positifs et autres négatifs.
    Mon objectif consiste à supprimer les valeurs identiques mais de signes différents, ex 500 et -500. Merci par avance pour votre aide

  2. #2
    Expert éminent sénior Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    Juin 2007
    Messages
    16 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Points : 32 866
    Points
    32 866
    Par défaut
    En supposant que tes valeur sont en A1:A1000, tu mets en B1 la formule :
    Tu copies B1 en B1:B1000
    Tu sélectionnes A1:B1000 > Ruban Données > Icone Supprimer les doublons > Tu ne coches que la colonne B > Ok
    Tu supprimes la colonne B.

    Moins de 2 min montre en main.
    Merci de cliquer sur pour chaque message ayant aidé puis sur pour clore cette discussion.

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Ingénieur commercial
    Inscrit en
    Juin 2016
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Algérie

    Informations professionnelles :
    Activité : Ingénieur commercial

    Informations forums :
    Inscription : Juin 2016
    Messages : 7
    Points : 7
    Points
    7
    Par défaut Suppression valeurs dont la somme est zéro
    Merci pour ta réponse menhir

    Si j'applique cette méthode je risque de supprimer les doublons dont le signe est le même.

    Je voudrais supprimer les cellules dont la somme est égale à zéro.
    1. 5
    2. 10
    3. -5
    4. 5

    Si j'utilise la méthode de ABS je risque de supprimer deux valeurs de même signe. C'est-à-dire la ligne 1,3 et 4. Cependant je veux supprimer la valeur 5 et -5 qui nous donne une somme égale à zéro.

    Je vous remercie.

  4. #4
    Membre émérite Avatar de Zekraoui_Jakani
    Homme Profil pro
    Inscrit en
    Novembre 2013
    Messages
    1 670
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2013
    Messages : 1 670
    Points : 2 489
    Points
    2 489
    Par défaut Suppression des doublons de signes différents.
    Même solution que celle de Menhir, mais au lieu de tu mets en B1

  5. #5
    Membre expert

    Homme Profil pro
    Retraité
    Inscrit en
    Juin 2012
    Messages
    1 564
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Enseignement

    Informations forums :
    Inscription : Juin 2012
    Messages : 1 564
    Points : 3 554
    Points
    3 554
    Billets dans le blog
    1
    Par défaut
    Bonjour à tous,
    Zekraoui_Jakani s'est contenté en quelque sorte de donner une définition de la valeur absolue; autant utiliser alors la fonction ABS mais Chalabifaresalger s'est aperçu que cela poserait
    problème.
    Une proposition dans le classeur joint. Je l'ai testée sur 1000 lignes mais illustrée dans l'image ci-dessous avec beaucoup moins de données.
    Nom : valeurs opposées bis.JPG
Affichages : 1098
Taille : 76,3 Ko
    On définit donc les noms :
    plagebrute par :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =DECALER(Feuil1!$A$2;;;NB(Feuil1!$A:$A))
    intermediaire par :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =SI(NB.SI(DECALER(Feuil1!$A$2;;;LIGNE(plagebrute));plagebrute)>NB.SI(plagebrute;-(plagebrute));LIGNE(plagebrute);"")
    Ce nom crée en mémoire interne une matrice unicolonne d'autant de cellules que plagebrute, chaque cellule contenant le numéro de ligne lorsque la cellule correspondante de plagebrute ne peut plus être "éliminée" par une valeur opposée se trouvant dans plagebrute et non encore "utilisée". (J'ai peur de ne pas être très clair).
    Ecrire alors en B2 la formule :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =SI(LIGNE()-1<=NB(intermediaire);INDEX($A:$A;PETITE.VALEUR(intermediaire;LIGNE()-1));"")
    et la recopier vers le bas.
    Je dois reconnaître que la formule matricielle utilisée pour définir intermediaire risque d'initier l'utilisateur à la patience.Il vaut peut être mieux enlever le Calcul automatique
    et demander Calculer maintenant à la fin.
    Si l'on trouve le temps trop long, je peux renvoyer un classeur où cette plage intermédiaire sera écrite dans une colonne que l'on peut masquer ou non.
    Cordialement
    Claude
    Fichiers attachés Fichiers attachés

  6. #6
    Futur Membre du Club
    Homme Profil pro
    Ingénieur commercial
    Inscrit en
    Juin 2016
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Algérie

    Informations professionnelles :
    Activité : Ingénieur commercial

    Informations forums :
    Inscription : Juin 2016
    Messages : 7
    Points : 7
    Points
    7
    Par défaut
    Merci papouclo sur votre intervention,

    j'ai suivi toutes la méthode que vous m'avez proposé, et je pense j'ai fait une erreur quelque part dans les formules.

    merci de me corriger,

    Voici les résultats trouvés:

    sur la case "plagebrute" = la valeur de la case correspondant (plagebrute= la valeur A2)

    dans la case "intermédiaire" il me renvoie le numéro de la ligne.

    et quand je tape la formule générale, il me donne une cellule vide.

    Merci encore une fois.
    Fichiers attachés Fichiers attachés

  7. #7
    Membre expert

    Homme Profil pro
    Retraité
    Inscrit en
    Juin 2012
    Messages
    1 564
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Enseignement

    Informations forums :
    Inscription : Juin 2012
    Messages : 1 564
    Points : 3 554
    Points
    3 554
    Billets dans le blog
    1
    Par défaut
    Bonjour,
    L’erreur vient du fait que les noms plagebrute et intermediaire ne sont pas définis de façon correcte.
    De plus, dans la mesure où l'on a défini un tableau avec une colonne nommée Intermédiaire(qui peut éventuellement se masquer), ces deux noms sont devenus inutiles et il n'est plus besoin d'utiliser de formule matricielle.
    Nom : valeurs opposées ter.JPG
Affichages : 1069
Taille : 40,8 Ko
    Ecrire en B2 la formule :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =SI(NB.SI($A$2:$A2;[@VALEURS])>NB.SI([VALEURS];-[@VALEURS]);LIGNE();"")
    et en C2 la formule :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =SI(LIGNE()-1<=NB([Intermédiaire]);INDEX(Tableau1[[#Tout];[VALEURS]];PETITE.VALEUR([Intermédiaire];LIGNE()-1));"")
    Cordialement
    Claude
    Fichiers attachés Fichiers attachés

  8. #8
    Membre habitué Avatar de Klin89
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    119
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2008
    Messages : 119
    Points : 178
    Points
    178
    Par défaut
    Bonsoir à tous,

    Vois ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    Option Explicit
    Sub test()
    Dim a, i As Long, x As Range, e
        With Sheets("Feuil1").Cells(1).CurrentRegion
            .EntireRow.Interior.ColorIndex = xlNone
            a = .Value
            With CreateObject("Scripting.Dictionary")
                For i = 2 To UBound(a, 1)
                    If a(i, 1) > 0 Then
                        .Item(i) = a(i, 1)
                    End If
                Next
                For i = 2 To UBound(a, 1)
                    If a(i, 1) < 0 Then
                        For Each e In .keys
                            If a(i, 1) + .Item(e) = 0 Then
                                If x Is Nothing Then
                                    Set x = Union(Rows(i), Rows(e))
                                Else
                                    Set x = Union(x, Rows(e), Rows(i))
                                End If
                                .Remove e: Exit For
                            End If
                        Next
                    End If
                Next
            End With
            'supprime
            'If Not x Is Nothing Then x.EntireRow.Delete
            'surligne
            If Not x Is Nothing Then x.Interior.ColorIndex = 44
        End With
    End Sub
    klin89

  9. #9
    Expert éminent sénior
    Avatar de Marc-L
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2013
    Messages
    9 468
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2013
    Messages : 9 468
    Points : 18 677
    Points
    18 677
    Par défaut



    Bonjour Klin89,

    pour rappel ici c'est le forum des formules de feuille de calculs et non celui dédié au VBA, merci …



    _________________________________________________________________________________________________________
    Je suis Paris, Charlie, Bruxelles, …
    C'est parce que la vitesse de la lumière est plus rapide que celle du son que tant de gens paressent brillants avant d'avoir l'air con ! (Thomas Boishardy)

Discussions similaires

  1. Réponses: 3
    Dernier message: 26/07/2009, 10h06
  2. suppression des doublons
    Par sucreMan dans le forum Requêtes et SQL.
    Réponses: 1
    Dernier message: 03/10/2007, 12h12
  3. [SQL] Suppression des doublons d'un champs SQL
    Par fabien14 dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 21/05/2007, 14h28
  4. problème avec la suppression des doublons dans arraylsit
    Par ulysse031 dans le forum Langage
    Réponses: 13
    Dernier message: 04/03/2007, 12h52
  5. suppression des doublons
    Par LuckySoft dans le forum Requêtes
    Réponses: 9
    Dernier message: 04/08/2006, 12h29

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo