[Excel][VBA] Variabiliser une formule COUNTIF
Résolu
netman44
Messages postés
65
Statut
Membre
-
netman44 Messages postés 65 Statut Membre -
netman44 Messages postés 65 Statut Membre -
Bonjour,
J'ai la formule suivante dans une macro VBA sous Excel.
Range("F11:F" & iMax).FormulaR1C1 = _
"=COUNTIF('[Fichier source.xls]Onglet1'!R11C7:R560C7,RC[1])"
Je souhaiterais appliquer cette formule plusieurs fois avec plusieurs fichiers sources différents, en d'autres termes variabiliser la partie '[Fichier source.xls]Onglet1'!R11C7:R560C7. Est-ce possible ou faut-il que j'utilise une autre formule ?
Merci.
Netman
J'ai la formule suivante dans une macro VBA sous Excel.
Range("F11:F" & iMax).FormulaR1C1 = _
"=COUNTIF('[Fichier source.xls]Onglet1'!R11C7:R560C7,RC[1])"
Je souhaiterais appliquer cette formule plusieurs fois avec plusieurs fichiers sources différents, en d'autres termes variabiliser la partie '[Fichier source.xls]Onglet1'!R11C7:R560C7. Est-ce possible ou faut-il que j'utilise une autre formule ?
Merci.
Netman
A voir également:
- [Excel][VBA] Variabiliser une formule COUNTIF
- Formule excel si et - Guide
- Formule moyenne excel plusieurs colonnes - Guide
- Liste déroulante excel - Guide
- Excel mise en forme conditionnelle formule - Guide
- Formule somme excel colonne - Guide
2 réponses
Bonjour,
Exemple :
Cdt
Info
Exemple :
Option Explicit
Sub CreationParametres()
Dim NomFichier As String
Dim NomOnglet As String
Dim Cible As Range
Dim iMax As Long
Dim Reponse As Boolean
iMax = 14
Set Cible = Range("F11:F" & iMax)
NomFichier = "Fichier source.xls"
NomOnglet = "Onglet1"
Reponse = InsereFormule(NomFichier, NomOnglet, Cible)
If (Reponse) Then
MsgBox "Insertion de formule réussie."
End If
End Sub
'
Function InsereFormule(ByVal Fichier As String, _
ByVal Onglet As String, _
ByRef Target As Range) As Boolean
Dim Formule As String
' Range("F11:F" & iMax).FormulaR1C1 = _
' "=COUNTIF('[Fichier source.xls]Onglet1'!R11C7:R560C7,RC[1])"
' $G$11:$G$560;G11
Formule = "=COUNTIF('[" & Fichier & "]" & Onglet & "'!R11C7:R560C7,RC[1])"
' Ou
Formule = "=COUNTIF('[" & Fichier & "]" & Onglet & "'!$G$11:$G$560,G11)"
' Cette partie peut aussi être variabiliser : [ $G$11:$G$560;G11 ]
' qui correspond à [ R11C7:R560C7,RC[1] ]
Target.Value = Formule
MsgBox Target.Address
End Function
'
Cdt
Info