Formule contenant une fonction SI dans une cellule par macro
Résolu
MKCS
Messages postés
21
Date d'inscription
Statut
Membre
Dernière intervention
-
MKCS Messages postés 21 Date d'inscription Statut Membre Dernière intervention -
MKCS Messages postés 21 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
J'ai effectué une macro qui ajoute une ligne à un tableau et qui crée un onglet en le renommant en fonction d'une cellule de la ligne créée.
Je souhaiterais maintenant insérer une formule dans une des cellules de la ligne créée, qui va faire apparaître ou non les infos de l'onglet nouvellement créé, avec condition, c'est à dire une fonction SI.
Pour cela, voici mon code:
Dim Var As String
Dim formule As String
' Trouver la dernière ligne du tableau
DLig = Range("A" & Rows.Count).End(xlUp).Row
' Définition de la variable qui représente le nom de l'onglet créé présent en
dernière cellule de la colonne X
Var = Range("X" & DLig + 1).Value
' Formule à insérer dans la dernière cellule de la colonne V à partir de l'onglet créé
formule = "IF(" & Var & "!$L$50<>"";" & Var & "!$L$50;"")"
Range("V" & DLig + 1).Formula = formule
J'ai testé ce code avec une fonction SOMME pour la formule et cela fonctionne (c'est d'ailleurs sur ce site que l'on m'a donné la solution :-)) mais apparemment ce n'est pas la même chose avec une fonction SI car il ne fonctionne pas...
Merci par avance de votre aide.
Sarah
J'ai effectué une macro qui ajoute une ligne à un tableau et qui crée un onglet en le renommant en fonction d'une cellule de la ligne créée.
Je souhaiterais maintenant insérer une formule dans une des cellules de la ligne créée, qui va faire apparaître ou non les infos de l'onglet nouvellement créé, avec condition, c'est à dire une fonction SI.
Pour cela, voici mon code:
Dim Var As String
Dim formule As String
' Trouver la dernière ligne du tableau
DLig = Range("A" & Rows.Count).End(xlUp).Row
' Définition de la variable qui représente le nom de l'onglet créé présent en
dernière cellule de la colonne X
Var = Range("X" & DLig + 1).Value
' Formule à insérer dans la dernière cellule de la colonne V à partir de l'onglet créé
formule = "IF(" & Var & "!$L$50<>"";" & Var & "!$L$50;"")"
Range("V" & DLig + 1).Formula = formule
J'ai testé ce code avec une fonction SOMME pour la formule et cela fonctionne (c'est d'ailleurs sur ce site que l'on m'a donné la solution :-)) mais apparemment ce n'est pas la même chose avec une fonction SI car il ne fonctionne pas...
Merci par avance de votre aide.
Sarah
A voir également:
- Formule contenant une fonction SI dans une cellule par macro
- Fonction si et - Guide
- Verrouiller une cellule excel dans une formule - Guide
- Excel cellule couleur si condition texte - Guide
- Formule excel pour additionner plusieurs cellules - Guide
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
Merci encore pour ton aide.
Bonne continuation.
Sarah