Macro pour ma base de donnée
Bonjour à tous
Je souhaite résoudre le problème suivant:
j'ai une base de donnée ayant un certain nombre de ligne et colonne
- la colonne L présente taille et la colonne M présente le prix
- Dans la colonne C (référence); j'ai certaines valeur qui ce répètent. je veux enlever les lignes ayant des doublons de valeur dans la colonne C et calculer à chaque fois la moyenne de prix et la somme de taille corresponds à ces lignes.
Sub Doub_Dir()
Dim X As Long
Dim Y As Long
Dim Flg_V As Boolean
For X = [A65536].End(xlUp).Row To 2 Step -1
For Y = X - 1 To 1 Step -1
If Range("C" & X) = Range("C" & Y) Then
Flg_V = True
Exit For
End If
Next Y
If Flg_V Then
Flg_V = False
Rows(X).Delete
End If
Next X
End Sub
Y'a t-il quelqu'un qui peut m'aider
j'en ai besoin, merci d'avance
Salut,
Merci de joindre ton fichier ou un fichier représentatif avec quelques lignes comme exemple.
Cordialement.
Je vous envoie un exemple de ma base de donnée et je vous ré explique mon problème:
j'ai une base de donnée ayant un certain nombre de ligne et de colonne
- Je rectifie la colonne F présente taille et la colonne G présente le prix de vente
- Dans la colonne C (nommée référence); Je remarque bien qu'il existe des valeurs qui se répètent par dans C2 et C3 on a la valeur 34200 également C6, C7,C8 et C9 sont égales à 34278. Je souhaite éliminer les lignes doubles (par exemple éliminer la ligne L3 et je garde la ligne L2 telque le nouveau F2=F2+F3 (je fais la somme des tailles) et le nouveau G2= (G2+G3)/2 (je fais la moyenne des prix) ainsi de suite lorsque il existe des doublons. ainsi par exemple pour la ligne 2, j'obtiens
J'ai la macro suivante seulement je veux introduire uniquement la fonction moyenne (prix) et la fonction somme(taille) afin de résoudre ce problème
Sub Doub()
Dim X As Long
Dim Y As Long
Dim Flg_V As Boolean
For X = [A65536].End(xlUp).Row To 2 Step -1
For Y = X - 1 To 1 Step -1
If Range("C" & X) = Range("C" & Y) Then
Flg_V = True
Exit For
End If
Next Y
If Flg_V Then
Flg_V = False
Rows(X).Delete
End If
Next X
End Sub
Merci d'avance
Bonjour
A vérifier
J'ai été obligé de remplacer le . (point) par une , (virgule) dans la colonne G, sinon Excel ne reconnaissait pas ces données en tant que nombre