[RESOLU]Récupérer des valeurs provenant d'une autre feuille - VB

Ternoise

XLDnaute Occasionnel
Bonsoir le Forum

Comment récupérer dans une feuille la somme de 2 cellules placées dans une autre feuille suivant 2 critères. Uniquement en VB.

Afin de mieux me faire comprendre, un fichier exemple

Merci beaucoup
David
 

Pièces jointes

  • Report.xls
    37.5 KB · Affichages: 58
Dernière édition:

job75

XLDnaute Barbatruc
Re : Récupérer des valeurs provenant d'une autre feuille - VB

Re,

Nouveau problème, alors joignez votre nouveau fichier si vous voulez de l'aide :rolleyes:

Quand un filtre est appliqué, il faut savoir que .End(xlUp) renvoie la dernière cellule visible.

A+
 

job75

XLDnaute Barbatruc
Re : Récupérer des valeurs provenant d'une autre feuille - VB

Re,

Votre fichier en retour.

Il n'y avait pas grand-chose à modifier, j'ai ajouté quelques explications.

A+
 

Pièces jointes

  • Report(2).xls
    150 KB · Affichages: 41

Ternoise

XLDnaute Occasionnel
Re : Récupérer des valeurs provenant d'une autre feuille - VB

Re,

Merci pour les explications...c'est impeccable

Pour les deux tableaux du haut de la feuille "RECUP", il faut que je me base sur la même chose je suppose ?
Mais la c'est des totaux !
 

Ternoise

XLDnaute Occasionnel
Re : Récupérer des valeurs provenant d'une autre feuille - VB

Re

Après essai de toute sorte et comme je m'y attendais, je n'y arrive pas avec les tableau du haut.

Après j'espère avoir fini !
 

Pièces jointes

  • Report.xls
    160.5 KB · Affichages: 25

job75

XLDnaute Barbatruc
Re : Récupérer des valeurs provenant d'une autre feuille - VB

Bonjour Ternoise, le forum,

Plutôt que d'entrer les formules par macro il vaut mieux les laisser en permanence dans les cellules.

Mais à une condition : qu'elles ne soient pas volatiles.

Donc ne pas utiliser les fonctions volatiles DECALER ou SOUS.TOTAL.

C'est le cas de toutes les formules de la feuille RECUP du fichier (3) joint.

Toujours pour éviter la fonction DECALER, le tableau T est redéfini dynamiquement à chaque activation de la feuille :

Code:
Private Sub Worksheet_Activate()
'End(xlUp) ne donne pas le bon résultat si le tableau est filtré
Sheets("DIRECTION").Range("C9:R" & Application.Match("zzz", Sheets("DIRECTION").[C:C])).Name = "T"
End Sub
Nota : en H7 et J7:O7 de la feuille DIRECTION vous utilisez la fonction volatile SOUS.TOTAL.

Les formules de ces 7 cellules sont donc recalculées à chaque modification du classeur.

Je ne pense pas que ce soit très gênant.

A+
 

Pièces jointes

  • Report(3).xls
    143.5 KB · Affichages: 26

Ternoise

XLDnaute Occasionnel
Re : Récupérer des valeurs provenant d'une autre feuille - VB

Bonjour Job75

C'est nickel pour la feuille "RECUP". Je pensais que les macros permettaient d'aller plus vite. Donc je me suis, une nouvelle fois borné à cela !

Concernant le calcul avec SOUS.TOTAL de la Feuille "DIRECTION". Cela fait ralentir tout le classeur.
En sachant que ces données proviennent d'un UserForm, à chaque fois qu'une validation est faite, le calcul s'effectue donc le traitement est super long.
Mais étant donné que ces totaux sont effectués dans la feuille "RECUP", je peux donc virer ces formules...L'affaire est clause !!!

Merci de votre aide depuis tout ce temps
Bonne journée
David
 

Ternoise

XLDnaute Occasionnel
Re : [RESOLU]Récupérer des valeurs provenant d'une autre feuille - VB

Re,

Un petit truc, dans le tableaux du bas de la Feuille "RECUP", à la place des cellules vides j'aimerais avoir "REPOS" avec cellule en jaune. Le format conditionnel avec ma version ne le permet pas.

Et pour rechercher la dernière date inscrite, je pensais faire comme ceci mais cela fonctionne pas.
=SOMMEPROD((INDEX(T;;2)>=$C$6)*(INDEX(T;;2)<=$E$6)*(INDEX(T;;1)=$B9);BDMAX(T;;2))

Merci de l'aide
David
 
Dernière édition:

job75

XLDnaute Barbatruc
Re : Récupérer des valeurs provenant d'une autre feuille - VB

Re,

Les cellules "vides" ne le sont pas, elles contiennent des zéros.

Pour inscrire "REPOS" il suffit de modifier la formule en testant la valeur zéro, mais cela alourdira les calculs.

Aucune difficulté pour créer une MFC en testant la valeur de la cellule.

A+
 

job75

XLDnaute Barbatruc
Re : Récupérer des valeurs provenant d'une autre feuille - VB

Re,

En fait pas besoin de modifier les formules, mettre le tableau au format 0,00;-0,00;"REPOS"

Ainsi les calculs ne devraient pas être alourdis.

Fichier (4).

A+
 

Pièces jointes

  • Report(4).xls
    134.5 KB · Affichages: 24

Discussions similaires

Membres actuellement en ligne

Statistiques des forums

Discussions
312 348
Messages
2 087 508
Membres
103 568
dernier inscrit
NoS