VBA - RechercheV sur plusieurs feuilles

Bonjour le forum,

J'ai (encore !!!) besoin de vos lumières éclairées !!!!!!

j'ai plusieurs feuilles remplies par des salariés (dans mon exp feuil1 et feuil2).

Je voudrais que dans la feuille "total" :

  • il y ait une ligne par produit différent.
  • que les colonnes "fournisseur", "type de produit" et multiplicateur se remplissent automatiquement en fonction du produit.
  • que la colonne "volume" soit le total des volumes de chaque feuille (pour un produit).
40aide-vba.xlsx (10.46 Ko)

Merci d'avance pour toute l'aide que vous pourrez m'apporter.

à très vite j'espère.

Je modifie un peu ma demande

La feuille "total" est fixe, pour chaque produit j'ai seulement besoin de faire la somme de ce produit de toutes les feuilles.

J'ai fais un tout petit code pour 1 produit, mais comment faire des boucles sachant qu'il y a 150 produits et 50 feuilles ?

Sub test()
With Sheets("Total")
    .Range("E3").Value = WorksheetFunction.VLookup(.Range("D3").Value, Sheets("Feuil2").Range("D3:E6"), 2, False) + WorksheetFunction.VLookup(.Range("D3").Value, Sheets("Feuil1").Range("D3:E6"), 2, False)
End With
End Sub

merci encore pour votre aide.

36aide-vba.xlsm (17.29 Ko)

Bonjour

Peut-on savoir d'où sort le démultiplicateur ?

Est-il toujours le même pour un même produit ?

Peut-il y avoir un même produit avec 2 fournisseurs différents ?

Dans ce cas, que doit-on écrire en colonne B puisqu'il doit y avoir une seule ligne par produit ?

Bye !

Bonjour gmb,

Tu as raison je me suis un peu embrouillé dans mon 1er message, d'où le rectificatif dans le 2nd

La feuille total est bien fixe car le fournisseur, le type de produit et le multiplicateur sont uniques à chaque produit.

Du coup je pense qu'il faut faire une rechercheV sur le produit.

Je crois que je suis arrivé à faire la boucle sur les produits mais pas sur les feuilles.

Sub test()

With Sheets("Total")

For i = 3 To 7
   Range("E" & i).Value = WorksheetFunction.VLookup(.Range("D" & i).Value, Sheets("Feuil2").Range("D3:E7"), 2, False) + WorksheetFunction.VLookup(.Range("D" & i).Value, Sheets("Feuil1").Range("D3:E7"), 2, False)
Next i

End With

End Sub '

Merci pour l'intérêt que tu portes à ma demande.

Un essai à tester.

La mise à jour se fait à chaque activation de la feuille "Total".

Cela te convient-il ?

Bye !

70aide-vba-v1.xlsm (25.79 Ko)

Tu arrives au bon résultat, mais j'aurais souhaité que la feuille "Total" soit fixe, mise à part la colonne volume bien évidemment.

De plus si on pouvait éviter l'utilisation de dictionnaire, ça m'arrangerait car c'est vraiment le flou total pour moi 8)

On peut pas lui dire de faire une rechercheV sur toutes les feuilles et de les additionner ?

Merci gmb en tout cas.

Bixente a écrit :

si on pouvait éviter l'utilisation de dictionnaire, ça m'arrangerait car c'est vraiment le flou total pour moi

Si je pouvais t'éclaircir un peu les choses, j'aurais gagné ma journée car c'est un outil extrêmement utile. Je vais essayer.

Un dictionnaire n'est autre qu'une liste de noms uniques (clés) auxquels on peut associer une valeur (item).

Quand on envoie dans un dictionnaire une liste de noms qui se répètent, le dictionnaire ne l'ajoute à sa liste que s'il ne l'a pas.

S'il l'a déjà, il ne fait rien.

D'où l'intérêt, pour extraire d'une liste de feuille de calcul une liste sans doublon.

Quant à faire ce que tu me demandes, c'est sûrement possible mais cela reviendrait à remplacer une roue bien huilée par une roue carrée : je n'ai pas du tout envie de m'y lancer.

En revanche, si tu veux que je te détaille la macro que je t'ai faite, je reste à ta disposition.

Bye !

J'ai l'impression que j'ai intérêt à bien bosser les dicos. Tu es la 2ème personne sur 2 projets différents à me le conseiller !!!

Merci énormément pour ton aide.

Un dernier petit effort pour m'expliquer la macro ce serait vraiment super !!!

A bientôt.

Le même fichier avec macro commentée.

Bye !

258aide-vba-vb.xlsm (27.15 Ko)
gmb a écrit :

Le même fichier avec macro commentée.

Bye !

Merci encore, je commence à entrevoir les possibilités offertes par les dicos.

à bientôt surement pour de nouvelles aventures !!!!

Rechercher des sujets similaires à "vba recherchev feuilles"