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 :

Conversion plage de cellule en matrice


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Candidat au Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Novembre 2013
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2013
    Messages : 3
    Par défaut Conversion plage de cellule en matrice
    Bonjour,

    Je dois ecrire une fonction qui convertit une plage de cellules en une matrice a 2 dimensions. Je suis debutante en programmation, j'ai lu pas mal de post a ce sujet mais je ne suis pas sure de bien comprendre vu j'ai toujours une erreur qui me sors lors du debogage..

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Function conv(plage As Range) As Double()
     
    Dim matrice() As Variant
     
    matrice = Range(plage).Value
     
    conv = matrice
     
    End Function

  2. #2
    Expert éminent Avatar de mercatog
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    9 435
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations forums :
    Inscription : Juillet 2008
    Messages : 9 435
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Function conv(plage As Range)
    Dim matrice As Variant
     
    matrice = plage.Value
     
    conv = matrice
     
    End Function
    ou simplement
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Function conv(plage As Range)
     
    conv = plage.value
     
    End Function
    Le but?

  3. #3
    Candidat au Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Novembre 2013
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2013
    Messages : 3
    Par défaut
    Deja merci pour la reponse, je dois ecrire un code pour calculer le determinant, etc d'une matrice en donnant une plage de cellule. Les entetes sont donnes et il en faut une qui convertit la plage en matrice.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Function conv(plage As Range) As Double()
    Si je ne definit pas le "as double()" ce n'est pas du variant?

  4. #4
    Expert éminent Avatar de mercatog
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    9 435
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations forums :
    Inscription : Juillet 2008
    Messages : 9 435
    Par défaut
    Oui c'est un variant

    J'avais demandé quel est le but de ton exercice?

    Si c'est pour trouver le déterminant, tu as DETERMAT

    Sinon, si c'est un exercice pédagogique, la fonction donnée permet de travailler avec une variable tableau au lieu de la plage.

  5. #5
    Candidat au Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Novembre 2013
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2013
    Messages : 3
    Par défaut
    Manier diverse fonction de VB sans utiliser WorksheetFunction.

    La fonction calculant le determinant doit etre ecrite et recursive, c'est un exercice pedagogique.

    Avec le simple code que tu m'as passe, j'obtiens donc un tableau mais en variant.
    Donc pour l'obtenir en double, il faudrait je cree une boucle affectant chaque valeur(i,j) de mon tableau variant dans un tableau as double ou juste rajouter le as double() a la fin de l'entete de la fonction serait corect?

Discussions similaires

  1. [XL-2010] Conversion plage cellule à partir d'index
    Par elisemax dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 09/10/2012, 10h36
  2. Conversion du format d'une plage de cellules Excel
    Par tarbala dans le forum API, COM et SDKs
    Réponses: 0
    Dernier message: 12/06/2009, 23h47
  3. [Débutant] Problème conversion tableau de cellule en matrice
    Par niepoc dans le forum MATLAB
    Réponses: 2
    Dernier message: 22/05/2008, 23h25
  4. [VBA-E] Image d'une plage de cellule
    Par flogreg dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 15/07/2004, 12h30
  5. [VBA-E] [Excel] Protection d'une plage de cellules
    Par fikou dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 20/11/2002, 11h28

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