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 :

Bug avec matrice [XL-2010]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Mars 2013
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Mars 2013
    Messages : 12
    Par défaut Bug avec matrice
    Bonjour,

    Je rencontre un petit problème avec un code que j'ai créé.

    Le code marche mais j'aimerai modifier quelque chose voici le code.

    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
    Function VarCov(rng As Range) As Variant
     
        Dim i As Integer
        Dim j As Integer
        Dim colnum As Integer
        Dim matrix() As Double
     
        colnum = rng.Columns.Count
        ReDim matrix(colnum - 1, colnum - 1)
     
        For i = 1 To colnum
            For j = 1 To colnum
                matrix(i - 1, j - 1) = Application.WorksheetFunction.Covar(rng.Columns(i), rng.Columns(j))
            Next j
        Next i
     
        VarCov = matrix
     
    End Function
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Sub covariance()
     
     
     
    Range(Cells(18, 2), Cells(24, 8)) = VarCov(Range(Cells(5, 2), Cells(14, 8)))
     
     
    End Sub


    Le code marche parfaitement, mais j'aiemerais mettre ceci pour la deuxième partie:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Sub covariance()
     
    Dim n As Integer
    Dim m As Integer
     
    n = 6
    m = 6
     
     
     
    Range(Cells(18, 10), Cells(18 + n, m + 6)) = VarCov(Range(Cells(5, 2), Cells(9 + n, m + 6)))
    End Sub
    Normalement cela me permettra de redimensionner la matrice mais j'ai un message d'erreur "Erreur d'exécution 1004 - impossibilité de lire la propriété Covar de la classe WorksheetFunction"

    Est-ce que vous savez comment le débuggé ?

  2. #2
    Membre émérite Avatar de issoram
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2009
    Messages
    665
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Saône et Loire (Bourgogne)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2009
    Messages : 665
    Par défaut
    Bonjour,

    Il y' a déjà un problème de dimensions:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Range(Cells(18, 10), Cells(18 + n, m + 6)) = VarCov(Range(Cells(5, 2), Cells(9 + n, m + 6)))
    'la plage à valoriser est de taille n+1, m-3
    'la matrice de covariance m+5, m+5

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Bug avec le test de profondeur
    Par Tellmarch dans le forum OpenGL
    Réponses: 1
    Dernier message: 17/10/2004, 00h59
  2. Bug avec requete
    Par arsgunner dans le forum ASP
    Réponses: 8
    Dernier message: 14/06/2004, 16h25
  3. [C#] Bug (?) avec la propriété TransparencyKey de la Form
    Par FrigoAcide dans le forum Windows Forms
    Réponses: 5
    Dernier message: 21/05/2004, 14h14
  4. [CR9] Bug avec les champs à valeur vide ?
    Par Djob dans le forum SAP Crystal Reports
    Réponses: 3
    Dernier message: 15/07/2003, 21h21

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