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 :

mettre des tableaux en parametre d'une fonction


Sujet :

Macros et VBA Excel

  1. #1
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 2
    Points : 1
    Points
    1
    Par défaut mettre des tableaux en parametre d'une fonction
    Bonjour a tous tout d'Abord votre forum est impressionnant et je suis sur que je trouverai reponse ici.

    voila je suis en train de créer une fonction sur VBA pour excel, et je voudrais pouvoir mettre en parametre des tableau (un a 2 dimensions et un vecteur)

    Ensuite j'aimerai (en utilisant une boucle de selction) pouvoir sortir une ligne entiere du tableau de 2 dimension et le mettre dans une deuxieme fonction dont un des parametre sera jsutement un vecteur ligne....

    Je bloque fortement si vous voulez je vous met une ebauche de code : (PolynomeCube est la deuxieme fonction en question qui rpend un vecteur ligne en parametre et PrixParDiscount est la premiere fonction non terminée qui prend un tableau PArametreModel(4*12) et un vecteur TermeModel(13*1) en parametre, plus d'autre aprametres non problematiques

    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
    18
    19
    20
    21
    22
    23
    24
    Option Base 1
     
    Public Function PolynomeCube(TabParametre() As variant, Term As Double) As Double
    Dim TabParametre(1 To 4) As Double
     
    PolynomeCube = TabParametre(1) * Term ^ 3 + TabParametre(2) * Term ^ 2 + TabParametre(3) * Term + TabParametre(4)
     
    End Function
     
     
    Public Function PrixParDiscount(Term As Double, Coupon As Double, NbCouponParAn As Double, _
    TermeModele() As Double, ParametresModele() As Double, NbBondModele As Integer) As Double
     
    Dim CFfinal As Double
    Dim ParametresModele(1 To 12, 1 To 4) As Double
    Dim Parametres(1, 1 To 4) As Double
     
    For i = 1 To 13
    If (Term >= TermeModele(i)) & (Term < TermeModele(i + 1)) Then
    Parametres(1) = ParametresModele(i)
    'CFfinal = (100 + C / NbCouponParAn) * PolynomeCube(TabParametresModele(1,1 to 4),Term)
     
    PrixParDiscount = PrixParDiscount = CFfinal
    End Function
    Voila si vous avez des idées ...
    Merci

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour

    Je n'ai pas d'idée pour l'instant (vu l'heure), par contre je vais te donner un peu de lecture : http://silkyroad.developpez.com/vba/tableaux/, regardes le chapitre XIII plus particulièrement.

    Starec

  3. #3
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 2
    Points : 1
    Points
    1
    Par défaut
    Je te remercie, j'avais lu deja tout ca. J'ai resolu le probleme en enlevant les () dans la declarations des Variant... Mais bon la gestion des erreurs est nulle dans ce cas... On verra demain, je pense que j'ai aps finit de me casser la tete avec VBA !!! (c'Est qd meme bien plus simple de travailler avec des outils comme Matlab qd c'est un travail d'optimisation...)

Discussions similaires

  1. Réponses: 9
    Dernier message: 22/08/2007, 12h25
  2. Réponses: 9
    Dernier message: 22/08/2007, 12h25
  3. [C#] Passer des contrôles comme parametre dans une fonction
    Par sara21 dans le forum Windows Forms
    Réponses: 1
    Dernier message: 20/09/2006, 13h05
  4. oublier volontairement des parametres dans une fonction
    Par Joe Le Mort dans le forum Langage
    Réponses: 2
    Dernier message: 23/08/2006, 16h12
  5. Réponses: 7
    Dernier message: 20/03/2006, 12h19

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