IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
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 :

Problème arguments fonction slope (VBA)


Sujet :

Macros et VBA Excel

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2014
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Avril 2014
    Messages : 2
    Points : 1
    Points
    1
    Par défaut Problème arguments fonction slope (VBA)
    Bonjour,

    Dans le cadre d'un projet universitaire, je dois réaliser un petit formulaire sous VBA.
    J'ai besoin d'utiliser la fonction "slope" d'excel, et pour cela j'utilise le programme suivant :
    Application.WorksheetFunction.Slope(selectionaction, selectioncac)

    Les arguments de le fonction (selectionaction et selectioncac) sont des plages de données obtenues grâce à la fonction :
    selectioncac = Selection.Address (la plage de données est dynamique et change après chaque actualisation de données)

    Cela me donne un résultat du type selectionaction = $A$2:$A$12, cependant la fonction slope n'arrive pas à reconnaître les arguments, bien qu'elle soit du type : slope(matrice;matrice)

    Pouvez vous m'aider à résoudre ce problème ?

  2. #2
    Membre émérite
    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Novembre 2011
    Messages
    1 503
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Irlande

    Informations professionnelles :
    Activité : Chef de projet en SSII

    Informations forums :
    Inscription : Novembre 2011
    Messages : 1 503
    Points : 2 657
    Points
    2 657
    Par défaut
    Bonjour Tortapoya,

    Ton problème vient du fait que tu passes en argument une adresse au lieu d'une range.

    Pour corriger ton problème, je pense qu'il faut que tu changes ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    '...
    Ma_range_avant_selectionaction.Select
    '...
    Application.WorksheetFunction.Slope(selectionaction, Selection)
    ... si selectionaction est une range.

    Tiens moi au courant !

    Cordialement,
    Kimy

  3. #3
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2014
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Avril 2014
    Messages : 2
    Points : 1
    Points
    1
    Par défaut
    Bonjour Kimy_Ire,

    Merci pour ton aide, cependant j'utilise déjà le .select. Voici l'extrait de mon code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    While Not IsEmpty(Sheets("cac40valbeta").Cells(1, j))
            Cells(2, 3).Activate
            Range(Selection, Selection.End(xlDown)).Select
            selectioncac = Selection.Address
            Cells(2, j).Activate
            Range(Selection, Selection.End(xlDown)).Select
            selectionaction = Selection.Address
     
            Cells(6, j) = Application.WorksheetFunction.Slope(selectionaction, selectioncac)
     
            j = j + 1
     Wend
    Aurais-tu une autre idée du problème ?
    En te remerciant

  4. #4
    Membre émérite
    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Novembre 2011
    Messages
    1 503
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Irlande

    Informations professionnelles :
    Activité : Chef de projet en SSII

    Informations forums :
    Inscription : Novembre 2011
    Messages : 1 503
    Points : 2 657
    Points
    2 657
    Par défaut Tortapoya
    Bonjour Tortapoya,

    Tu n'as pas bien lu ce que j'ai écris :
    Ton problème vient du fait que tu passes en argument une adresse au lieu d'une range.
    Donc :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    Dim range1 As Range
    Dim range2 As Range
     
     While Not IsEmpty(Sheets("cac40valbeta").Cells(1, j))
            Cells(2, 3).Activate
            Set range1 = Range(Selection, Selection.End(xlDown))
     
            Cells(2, j).Activate
            Set range2 = Range(Selection, Selection.End(xlDown))
     
            Cells(6, j) = Application.WorksheetFunction.Slope(range2, range1)
     
            j = j + 1
     Wend
    Cordialement,
    Kimy

Discussions similaires

  1. [XL-2007] Problème de fonctions dans VBA excel & Access via ADO
    Par Djohn92 dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 16/06/2015, 18h35
  2. Argument fonction Win32 VBA
    Par dagbass dans le forum VBA Access
    Réponses: 1
    Dernier message: 01/07/2014, 13h48
  3. [XL-2010] Problème argument Date fonction perso VBA
    Par dams53 dans le forum Macros et VBA Excel
    Réponses: 14
    Dernier message: 07/05/2013, 21h54
  4. [XL-2007] Problème avec fonction VBA
    Par BarryLyndon57 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 28/01/2012, 17h23
  5. Probléme argument pour une fonction d'un SLOT
    Par guillaume40 dans le forum Qt
    Réponses: 3
    Dernier message: 03/03/2008, 13h55

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo