Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Convertir formule en VBA


Sujet :

Macros et VBA Excel

  1. #1
    Membre régulier
    Convertir formule en VBA
    Bonjour,

    Afin de mieux protéger mes tables car multiples utilisateurs, je souhaiterai utiliser le VBA pour mes formules de calcul.
    Ma demande est peut être basique, je suis un bon novice en VBA

    J'ai un tableau structuré nommé "Population" avec 4 colonnes nommées
    Colonne A=

    Exemple 1:
    Tableau structuré nommé "Population" avec 2 colonnes nommées
    Colonne A : Nb_Femme
    Colonne B = Nb_Homme
    Colonne C = Total

    Question: comment utiliser VBA pour remplir automatiquement le résultat de la somme colonne A + colonne B dans la colonne C c'est à dire Total= [Nb_Femme] + [Nb_Homme]

    Exemple 2:
    Tableau structuré nommé "Sexe" avec 2 colonnes nommées
    Colonne A : Genre
    Colonne B = Sexe

    Question: comment utiliser VBA pour remplir automatiquement la colonne B
    Sexe = Si([Genre]="";"";Si([Genre]="Homme", [Sexe]="M";"F")

    Merci

  2. #2
    Expert éminent sénior
    Eric KERGRESSE
    https://sites.google.com/site/erickergresseeirl/
    Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter

  3. #3
    Membre régulier
    Je viens de regarder le tuto et j'ai trouvé comment récupéré la formule via la fenêtre d'exécution.
    Cependant, je n'arrive pas le traduire en vba afin qu'il s'exécute seule comme c'est le cas dans une feuille Excel i.e sans avoir besoin à appuyer sur un bouton.

    Mon code suivant ne marche pas..

    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Sub calcul()
    ThisWorkbook.Worksheets ("Feuil1")
    [@Total] = [@Nb_Femme] + [@Nb_Homme]
    End Sub

  4. #4
    Expert éminent sénior
    Citation Envoyé par Jupaysan Voir le message

    Testez :
    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
     
    Sub calcul1()
     
       With Sheets("Feuil1").Range("Population[Total]")
            .Formula = "=[@[Nb_Femmes]]+[@[Nb_Hommes]]"
       End With
     
    End Sub
     
     
    Sub calcul2()
     
       With Sheets("Feuil1").Range("Sexe[Sexe]")
            .Formula = "=IF([@Genre]="""","""",IF([@Genre]=""Homme"", ""M"",""F""))"
       End With
     
    End Sub
    Eric KERGRESSE
    https://sites.google.com/site/erickergresseeirl/
    Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter

  5. #5
    Membre régulier
    Citation Envoyé par Eric KERGRESSE Voir le message
    Ca marche bien!

    Grand merci++

###raw>template_hook.ano_emploi###