[VBA Excel] Automatisation macro

Bonjour à tous,
voici mon problème : j'ai un calcul de FFT à réaliser sous Excel 2003, dans la colonne A j'ai une liste de données et je veux afficher le résultat de la macro "Fourier Analysis" de la bibliothèque "Data Analysis" dans la colonne B. Jusque là pas de problème...mais je veux que cette macro soit executée automatiquement à chaque changement de valeur de la feuille...voici donc ma question : comment appeler "Fourier Analysis" dans ma macro ?

Pour info voici le contenu initial de ma macro...qu'est-ce que je dois mettre entre ces deux lignes ?

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

End Sub

Par avance, merci pour vos réponses.
Configuration: Windows XP
Firefox 2.0.0.12

4 réponses

  • Votes
  • Date
  • Date décroissante
  1. Contributeur
    bonjour

    Ton explication est un peu succincte, mais je pense qu'il te faut mettre
    Private Sub Worksheet_SelectionChange(ByVal Target As Range)
         call ta_macro
    End Sub 
    1. Et comment puis-je connaitre le nom de la macro Fourier Analysis et sa syntaxe ? :-s
  2. Contributeur
    bonjour

    Tu n'as pas de documentation sur cette bibliothèque ?

    Ce sont des fonctions bien spécifiques et il te faut demander la documentation à "Data Analysis"
    1. Bah non je ne l'ai pas... c'est une bibliothèque fournie par Microsoft avec Excel (un peu comme Microsoft Equation dans Word pour ceux qui connaissent : à l'installation de Word on peut spécifier si oui ou non on veut que ce composant soit installé)...
  3. Bonjour,

    J'aimerais créer une macro permettant d'activer ou desactiver des cellules suivant la valeur d'une autre cellule.
    J'explique, dans la cellule A1 on doit ecrire "cw" ou "pulsé".
    Après contrôle de ce qui es ecrit dans A1 on poursuit.
    Si c'est "cw", les cellules A2 à A5 doivent etre grisés (ou inactive) et on ecrit dans A6
    Si c'est "pulsé", les cellules A2 à A5 doivent etre actives et c'est la cellule A6 qui doit etre grisé et inactive.

    Si quelqu'un pouvait m'aider ca serai tres sympa
    Merci pour vos réponses
    1. Contributeur
      bonjour

      Tu peux faire cela avec une mise en forme conditionnelle :

      1
      - Sélectionnes les cellules A2 à A5
      - menu format / mise en forme conditionnelle
      - condition 1 choisis "la formule est" et à droite : =$A$1<>"cw"
      - ajouter
      - condition 2 choisis "la formule est" et à droite : =$A$1="cw"
      - format : tu choisis ton grisé et tu valides "OK" "OK"

      2
      - tu fais de même avec A6 et "pulsé"
      1. merci pour ton aide mais j'aimerais empecher l'ecriture dans la cellule et pour cela je pense qu'il n'y a que les macros qui peuvent le faire.

        J'ai ecrit ca mais ca sert a rien,

        Private Sub Worksheet_SelectionChange(ByVal Target As Range)
        If Cells("A1").Value = "bb" Then

        Range("A2", "A6").Locked = True

        Else
        Range("A2", "A6").Locked = False
        End If
        End Sub

        Merci pour ton aide;