Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

XL 2019 Insérer une formule Excel via VBA avec boucle.

gilboss

XLDnaute Nouveau
Bonjour,
J'aimerai insérer une formule Excel via un code VBA sur 31 colonnes avec changement de lettre par formule.
Cette formule est à écrire dans les cellules C30 à AG30 avec l'incrément des lettres C dans la formule (C à AG)
=SOMME_SI_COULEUR(C$31:C$34;16777215) jusqu'à =SOMME_SI_COULEUR(AG$31:AG$34;16777215)

Je n'y parviens pas. (Je suis novice)
Si quelqu'un pouvait m'aider, je le remercie d'avance
Je pourrais écrire la formule directement dans les cellules, mais ce n'est pas mon souhait.
 

gilboss

XLDnaute Nouveau
Tout c'est bien remplie, mais désolé, en B12 j'ai #valeurs
J'ai mis la fontion dans Module1, la nouvelle macro dans module2 et private fonction dans le code VBA de la feuille. Si je change des valeurs impair en pair, effectivement la couleur devient jaune.
 

Staple1600

XLDnaute Barbatruc
Re

Essaies avec cette macro
VB:
Sub Macro_pour_créer_exemple_BIS()
Dim t, r As Range: Set r = Range("B3:B10")
t = Array(2, 3, 7, 6, 0, 1, 0, 5)
Range("A1").Interior.ColorIndex = 6
r.Value = Application.Transpose(t)
r.FormatConditions.Add Type:=xlExpression, Formula1:="=ET(EST.PAIR($B3);$B3>0)"
r.FormatConditions(r.FormatConditions.Count).SetFirstPriority
r.FormatConditions(1).Interior.ColorIndex = 6
Range("B12").Formula = "=SOMMECOULEURS(B3:B10,A1)"
Range("B12").Font.Bold = -1
End Sub
 

gilboss

XLDnaute Nouveau
J'ai un 0 qui apparait et aussitot #Valeur!
 

Staple1600

XLDnaute Barbatruc
Re

@gilboss
Tu as bien copié les deux fonctions dans un module standard?
Donc on doit trouver :
la fonction SOMMECOULEURS
et
la fonction DColorIndex

Puis dans un autre module (ou le même), la macro Macro_pour_créer_exemple_BIS

Test OK sur Excel 365 (sur Windows 10 64 bits)
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…