Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

faire une somme pour tous les numéro de réservation identiques

oz2007

XLDnaute Junior
Bonjour,

Je souhaite rédiger une formule qui me permet d'additionner les montants de la colonne C si les numéros de vente de la colonne A sont identiques;
Ci-joint le fichier excel car c'est beaucoup plus clair avec un exemple concret...

Merci d'avance à tous....
 

Pièces jointes

  • formules excel.xlsx
    8.6 KB · Affichages: 37

CISCO

XLDnaute Barbatruc
Re : faire une somme pour tous les numéro de réservation identiques

Re

Une autre manière de faire, demandant d'écrire une formule longuette (en F2), mais donnant le bon résultat.

@ plus
 

Pièces jointes

  • formules excel suite.xlsx
    9.8 KB · Affichages: 22

ERIC S

XLDnaute Barbatruc
Re : faire une somme pour tous les numéro de réservation identiques

Re

une erreur dans ton rechercheV

=C2 & SI(NB.SI(H3:$H$200;H2)=0;""; "-" & RECHERCHEV(H2;H3:$O$200;7;0))

le tableau va de H à O et on compte les colonnes à partir du début du tableau et non pas de la colonne A donc 7 et non pas 14
 

CISCO

XLDnaute Barbatruc
Re : faire une somme pour tous les numéro de réservation identiques

Bonsoir

Je ne comprend pas trop tes propositions, Eric, tu concatenes des données de la colonne C avec d'autres de la colonne N. Est-ce bien ce qui était demandé ? Et que se passe t'il si il y a plus de deux fournisseurs ?

@ plus
 

CISCO

XLDnaute Barbatruc
Re : faire une somme pour tous les numéro de réservation identiques

Bonsoir

Presque comme ma première méthode, mais sans colonne intermédiaire.

@ plus
 

Pièces jointes

  • formules excel terter.xlsx
    9.7 KB · Affichages: 31

klin89

XLDnaute Accro
Re : faire une somme pour tous les numéro de réservation identiques

Bonsoir ERIC S, CISCO, oz2007, le forum

Suite à la demande du post #6
Résultat en Feuil1 à côté du tableau original :
VB:
Option Explicit
Sub concatenate()
Dim a, i As Long, j As Long, n As Long
    Application.ScreenUpdating = False
    With Range("A1").CurrentRegion
    'With Range("A1").CurrentRegion.Resize(, 2)
        a = .Value
        With CreateObject("Scripting.Dictionary")
            .CompareMOde = 1
            For i = 1 To UBound(a, 1)
                If Not .exists(a(i, 1)) Then
                    n = n + 1: .Item(a(i, 1)) = n
                    For j = 1 To 2
                        a(n, j) = a(i, j)
                    Next
                Else
                    a(.Item(a(i, 1)), 2) = a(.Item(a(i, 1)), 2) & ", " & a(i, 2)
                End If
            Next
        End With
        With .Offset(, .Columns.Count + 2)
            .CurrentRegion.Clear
            .Resize(n).Value = a
            With .CurrentRegion
                .Font.Name = "calibri"
                .VerticalAlignment = xlCenter
                .Borders(xlInsideVertical).Weight = xlThin
                .BorderAround Weight:=xlThin
                .Columns(2).HorizontalAlignment = xlLeft
                With .Rows(1)
                    .Font.Bold = True
                    .Interior.ColorIndex = 45
                    .BorderAround Weight:=xlThin
                End With
            End With
            .Columns.AutoFit
        End With
    End With
    Application.ScreenUpdating = True
End Sub
klin89
 
Dernière édition:

ERIC S

XLDnaute Barbatruc
Re : faire une somme pour tous les numéro de réservation identiques

Bonjour à tous, bonjour CISCO

réponse à ton #18, à partir de l'exemple du #4 :
la concaténation se fait en C et la formule utilise les colonnes A et C
si tu regardes la ligne 5 j'ai 3 termes (donc plus de 2)
en fait je rajoute à chaque ligne le nouveau A, à la première concaténation (C) que je rencontre dans les lignes suivantes

Tordu, peut-être y-a-t-il une limite (ou une erreur), mais pour l'exemple cela a l'air de tourner
 

oz2007

XLDnaute Junior
Re : faire une somme pour tous les numéro de réservation identiques

merci à vous tous!! je suis partie sur la méthode d'eric finalement et ça fonctionne très bien. Je n'ai pas mis de condition d'affichage mais ensuite je vais copier coller l'ensemble de donner dans un autre fichier et supprimer les doublons (ce qui va me permettre de conserver uniquement la 1ère ligne).
En tout cas vous êtes au top merci pour votre rapidité
 

CISCO

XLDnaute Barbatruc
Re : faire une somme pour tous les numéro de réservation identiques

Re

en fait je rajoute à chaque ligne le nouveau A, à la première concaténation (C) que je rencontre dans les lignes suivantes

OK, ce qui veut dire que tu n'obtiens pas le bon résultat sur toutes les lignes, et le bon seulement une fois la formule tirée assez vers le bas. C'est même une bonne astuce, puisqu'il faut n'en afficher qu'un.

@ plus

P.S : Ceci dit, oz2007, en me disant que ces nombres ne comportaient que deux chiffres, n'avait peut être pas pris le bon exemple.
 
Dernière édition:

oz2007

XLDnaute Junior
Re : faire une somme pour tous les numéro de réservation identiques

arfff ça ne marche plus :-((((((((((((((( Je ne comprends pas pourquoi!! je ne suis trop nazeeeeeee grrrr(voir fichier en PJ)
 

Pièces jointes

  • analyse test.xlsx
    173.4 KB · Affichages: 22

CISCO

XLDnaute Barbatruc
Re : faire une somme pour tous les numéro de réservation identiques

Bonjour

Arrrfff, ça remarche : Met un 6 à la place du 7 dans le RECHERCHEV... Faut essayer de comprendre les fonctions utilisées. Ici, il faut un 6 car tu veux le contenu de la colonne 6, c-à-d la M, dans la plage H3:$O$200.

@ plus
 

ERIC S

XLDnaute Barbatruc
Re : faire une somme pour tous les numéro de réservation identiques

Re pour CISCO

désolé c'était le 5 (le mien)
Mon ponçage d'escalier m'a mis de la poussière dans les yeux et je ne parle pas des oreilles......

Oui cela ne marche pas si les formules ne vont pas jusqu'en bas mais oui aussi je pense que cela peut servir, c'est un
for ... step -1 sans macro
 

oz2007

XLDnaute Junior
Re : faire une somme pour tous les numéro de réservation identiques

Bon j'ai un autre type de problème et j'aimerais avoir votre avis.
J'ai une base de donnée de + de 52 000 lignes avec de nombreuses formules (des recherchv, concatener, les formules que nous avons vu ensemble...)
Donc forcément quand je tire mes formules, excel bug et impossible de faire quoi que soit...même en attendant le fichier ne se met pas à jour (dommage car toutes mes formules marchant nikel..)
Y a-t'il un moyen de contourner ce problème ou dois-je dire à mon boss que sa demande est impossible à réaliser et qu'il faut acheter un vrai outil de reporting??

Merci pour votre réponse!
 

CISCO

XLDnaute Barbatruc
Re : faire une somme pour tous les numéro de réservation identiques

Bonsoir

Tu peux dire à ton patron que...

Je ne suis pas certain, mais bon :
* Il y a peut être du nettoyage à faire (Des colonnes entières mises dans les formules, alors qu'une partie de ces colonnes suffiraient par ex)
* Peut être qu'en mettant le calcul en mode manuel (Cf. options en bas de "Fichier"), en tirant ensuite les formules, puis en remettant en mode automatique ensuite...
* ou avec une macro...

@ plus
 
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…