Bonjour à tous,
j'ai toujours obtenu des réponses très satisfaisantes par ici, je me tourne donc une nouvelle fois vers vous.
Mon problème cette fois m'apparait un peu compliqué de par les conditions auxquelles il doit répondre, je m'explique:
je réalise par maccro un croisement entre des produits (lignes) impactés par des contraintes (colonnes). 1 à l'intersection implique la contrainte agit sur le produit.
ça ressemble à:
...................c1....c2....c3
p1....A...p1....1......0......0
p2....B...p1....1......1......0
p3....C...p1....1......0......0
p4....D...p1....0......0......0
p5....A...p5....1......0......0
p6....A...p6....0......0......0
p7....A...p7....0......0......1
p8....B...p7....0......0......0
p9....C...p7....0......0......0
p10...A..p10...1......1......1
etc
p les produits les lettres A, B etc correspondants à des stades. A étant le stade majeur, les autres sont des composés antérieurs apparentés au A précédent (d'où la 3e colonne qui marque le produit final)
Une contrainte portant sur un produit B impactera donc le produit p correspondant au stade A qui le précède (même si elle ne doit pas être renseignée par le tableau)
C'est pourquoi je voudrais indiqué par une somme en dessous de chaque colonne le nombre de produits A impactés par la contrainte de cette colonne.
Exemple: pour la c1 il y a 3 produits de stade A impactés, 2 pour la c2
J'espère que j'ai été assez clair...
voilà ce que j'ai écrit:
toutefois je vois bien qu'il y a un problème mais je ne parviens pas à réguler le compteur afin qu'il ne compte qu'une contrainte par groupe de filiation de produit...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 Debutextract = 5 Finextract = wsh.Range("A30000").End(xlUp).Row PremiereligneR = 5 Ligne = PremiereligneR Cpt = 0 For K = 5 To DerniereCol - 1 For I = Debutextract To Finextract If wsh.Cells(I, 2) = "A" Then Ref = wsh.Cells(I, "A").Value: If wsh.Cells(I, K) = "1" Then Cpt = Cpt + 1 _ Else: wsh.Cells(Ligne, "C").Value = Ref Feuilreçu.Cells(DerniereligneR + 3, K) = Cpt Next I Next K
merci bien d'avance pour votre aide
Partager