XL 2019 connaitre la totalité de chaque réf.

Kenzo1968

XLDnaute Nouveau
Bonjour a tous

avec une Marco
je souhait créer un fichier qui permet de connaitre la totalité de chaque réf. repris entre A1 & J20

exp:
Réf.Total
CART09716 776
CART1488 640
FPOL107534 312
ETUI08266 520

j'ai joint mon fichier pour y voir plus clair


merci a vous
 

Pièces jointes

  • Besion cart.xlsm
    12.6 KB · Affichages: 6
  • Besion cart.xlsm
    12.6 KB · Affichages: 1
Solution
Bonjour,

Voici, voici... Vous avez des quantités sans Référence pour une quantité totale de 1 250 170,20
Il serait peut-être judicieux de mettre de l'ordre dans vos données avant traitement.
Pour adapter le nom Datas, il suffit d'ouvrir le gestionnaire de nom et de modifier le nom 'Datas'.
Onglet "Forumules" Bouton "Gestionnaire de noms"

1642177126552.png



Cordialement

Hasco

XLDnaute Barbatruc
Re,

sa serais bien da voire un bonbon pour activer la macro
Il s'agit d'une requête Power Query*, pas d'une macro.
Et en plus ça ne sort pas de la confiserie où vous trouverez des bonbons :)
Mais pour vous faire une macro qui lance la requête, il faudrait nous donner un exemple qui corresponde à votre situation dans la réalité.
Est-ce que ce sont des données importées ? Si oui d'où ?
Qui change la plage de données ? Par quelle méthode ?

* Sélectionnez une cellule du tableau du résultat puis dans le ruban, dans l'onglet 'Requête' cliquez sur le bouton 'Modifier'. Vous verrez à quoi ressemble une requête power query.

cordialement
 

cp4

XLDnaute Accro
Bonsoir @Kenzo1968:) , @Hasco ;),

En VBA, en utilisant un dictionnaire.
VB:
Option Explicit

Sub Somme_Ref()
    Dim Lig As Integer, Col As Integer
    Dim Rng As Range, c As Range, d As Object
    Set d = CreateObject("Scripting.Dictionary")

    With Sheets("besoin")
        .Range("L1").CurrentRegion.Offset(1).ClearContents
        Set Rng = .Range("A1").CurrentRegion
        For Each c In Rng
            If c <> "" Then
                If Not IsNumeric(c.Value) Then
                    d(Trim(c)) = d(Trim(c)) + c.Offset(, 1).Value    '
                End If
            End If
        Next c
        .Range("L2").Resize(d.Count, 1) = Application.Transpose(d.Keys)
        .Range("L2").Offset(, 1).Resize(d.Count, 1) = Application.Transpose(d.Items)
        .Range("L2").Offset(, 1).Resize(d.Count, 1).NumberFormat = "#,##0.00"
    End With
End Sub

Bonne soirée.
 

Pièces jointes

  • Besion cart.xlsm
    21.2 KB · Affichages: 11

Kenzo1968

XLDnaute Nouveau
je ne parviens pas a modifier pouvez vous m aider

B1:R101 = 18 colonnes.
Pour modifier, dans le gestionnaire de noms, modifiez le noms Datas pour qu'il étende la plage de cellules.

j'ai joint mon fichier pour y voir plus clair
Cordialement
 

Pièces jointes

  • Besion cart vin1&2.xlsm
    29.6 KB · Affichages: 3

cp4

XLDnaute Accro
Bonsoir,

à tester
VB:
Option Explicit

Sub Somme_Ref()
    Dim Lig As Integer, Col As Integer
    Dim Rng As Range, c As Range, d As Object
    Set d = CreateObject("Scripting.Dictionary")

    With Sheets("besoin")
        .Range("E109").CurrentRegion.Offset(1).Clear
        Set Rng = .Range("A2:R" & .Range("A" & Rows.Count).End(xlUp).Row)
        For Each c In Rng
            If c <> "" Then
                If Not IsNumeric(c.Value) Then
                    d(Trim(c)) = d(Trim(c)) + c.Offset(, 1).Value    '
                End If
            End If
        Next c
        .Range("E109").Resize(d.Count, 1) = Application.Transpose(d.Keys)
        .Range("E109").Offset(, 1).Resize(d.Count, 1) = Application.Transpose(d.Items)
        .Range("E109").Offset(, 1).Resize(d.Count, 1).NumberFormat = "#,##0.00"
        .Range("E109").CurrentRegion.Borders.LineStyle = xlContinuous
    End With
End Sub
 

Hasco

XLDnaute Barbatruc
Bonjour,

Voici, voici... Vous avez des quantités sans Référence pour une quantité totale de 1 250 170,20
Il serait peut-être judicieux de mettre de l'ordre dans vos données avant traitement.
Pour adapter le nom Datas, il suffit d'ouvrir le gestionnaire de nom et de modifier le nom 'Datas'.
Onglet "Forumules" Bouton "Gestionnaire de noms"

1642177126552.png



Cordialement
 

Pièces jointes

  • Besion cart vin1&2.xlsm
    39.3 KB · Affichages: 2

Discussions similaires