VBA Appliquer une formule dans certaines cellules

jim7963

XLDnaute Junior
Bonjour à tous,

je fais appelle à vôtre savoir pour mettre la touche finale à ma macro de mise en forme d'un fichier exporté.
Il me manque une partie que je n'arrive pas à mettre en place.

Tout d'abord merci encore à Modeste pour le code qu'il m'a donné hier, je m'en suis largement inspiré pour celle-ci.

Je vous explique: dans ma feuille en colonne F j'ai des valeurs qui représentent le pourcentage de temps travaillé par une personne dans un service uniquement quand la cellule juste à côté en colonne G est vide.
Sinon la cellule indique une autre valeur qui ne nous intéresse pas pour le moment.
En colonne G est indiqué le coût total d'une personne.
Ce que je souhaite faire c'est que la cellule en colonne G à côté du pourcentage du temps travaillé soit valorisée de la façon suivante: coût total de la personne * % de temps travaillé par la personne dans le service.

Je comprends que mes explications ne sont pas très très claires, je vous joins donc un fichier avec un onglet avant et un onglet après application de la macro. Ce fichier contient également la macro que j'ai commencé à mettre en place mais qui ne fonctionne pas.

En vous remerciant par avance pour votre aide.
 

Pièces jointes

  • Application formule.xlsm
    20.2 KB · Affichages: 90

youky(BJ)

XLDnaute Barbatruc
Re : VBA Appliquer une formule dans certaines cellules

Bonsoir jim,
Peux tu essayer ceci.
Bruno

Code:
Sub Application_formule()
  With ActiveSheet
    For Each c In .Range("F6:F" & .Range("F" & Rows.Count).End(xlUp).Row)
     x = Cells(c.Row, 7).End(xlDown).Value
        If c <> "" And c.Offset(0, 1) = "" Then _
            c.Offset(0, 1).Value = (c.Value * x) / 100
    Next c
  End With
End Sub
 

sousou

XLDnaute Barbatruc
Re : VBA Appliquer une formule dans certaines cellules

Bonsoir Jim

De quoi inspirer ta réflexion.
Mais je suis un peu géné par le fait que tu insère des lignes vides entre tes matricules, j'ai donc mis un fin à la fin de tes données pour contrôler la fin de ces dernières.
On peu sans doute faire mieux!
 

Pièces jointes

  • Jim7963Copie de Application formule.xlsm
    21.9 KB · Affichages: 64

jim7963

XLDnaute Junior
Re : VBA Appliquer une formule dans certaines cellules

Merci beaucoup Youki, c'est parfait, exactement ce que je cherchais à faire.
Si tu peux juste m'expliquer à quoi sert le 7 dans la partie Cells(c.Row, 7).

Merci aussi du coup de main sousou. Les lignes vides ce n'est pas moi qui les insère, cela ressort comme ça lorsque je fais mon extraction Excel de mon logiciel.

Grâce à vous j'ai enfin pu mettre la touche finale à une macro qui devrait me faire faire un sacré gain de temps.
Encore merci à vous.
 

youky(BJ)

XLDnaute Barbatruc
Re : VBA Appliquer une formule dans certaines cellules

Content de t'avoir retiré une épine du pied,
Explications:
Cells(ligne,colonne)
7 représente la colonne soit "G"
c.row N° ligne
Cells(c.row,"G") marche aussi
Souvent je remplace (xlup) par (3) mais pas facile de tous les mémoriser.
Bruno

Ps: je passe toutes mes vacances depuis longtemps au Cap d'Agde
 

Discussions similaires

Statistiques des forums

Discussions
312 198
Messages
2 086 149
Membres
103 133
dernier inscrit
mtq