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 :

Comment réaliser une interpolation linéaire 1D et 2D via visual basic et sans données d'une feuille excel?


Sujet :

Macros et VBA Excel

  1. #1
    Membre à l'essai
    Femme Profil pro
    Étudiant
    Inscrit en
    Septembre 2011
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2011
    Messages : 6
    Points : 11
    Points
    11
    Par défaut Comment réaliser une interpolation linéaire 1D et 2D via visual basic et sans données d'une feuille excel?
    Bonjour à tous,

    J'ai un gros problème en ce qui concerne des macros sur les interpolations linéaires, ayant cherché pendant longtemps sur internet pour comprendre (cours de mathématique + programme sur les interpolations) je bloque sur deux problèmes :

    -un concernant les interpolations linéaires 1D c'est à dire que dans un premier temps je souhaiterais écrire en langage VBA un algorithme qui calcule l'interpolation linéaire 1D (yi) en un point (xi) à partir de deux valeurs de coordonnées (x1,y1) et (x2,y2) puis un autre programme qui fasse la même chose mais pour deux vecteurs x et y (où x et y sont monotones et croissant)

    J'ai commencé un programme avec 4 InputBox me demandant de rentrer les coordonnées x1, y1, x2, y2
    puis de faire

    m=(y2-y1)/(x2-x1)

    MsgBox "On obtient une fonction affine yi= " & m & " xi +p"

    Je pense que ce programme n'est pas complet (car nous ne pouvons pas trouver le "p"?) et je n'arrive vraiment pas à voir ce qu'il faut faire pour la suite, de plus les programmes que j'ai trouvé sur internet ne concernent que des macros utilisant des données de feuilles excel.

    -Un deuxième problème concernant un algorithme qui calcule l'interpolation linéaire 2D (zi) en un point (xi, yi) à partir de deux valeurs de coordonnées (x1,y1,z1) et (x2,y2,z2) puis un autre programme qui fasse la même chose mais pour deux vecteurs x et y et une matrice z (où la taille de la matrice z est définie par la taille de x et y sachant que x et y sont monotones et croissant)


    Merci d'avance à tous pour votre aide,
    je continue mes recherches,

  2. #2
    Futur Membre du Club
    Homme Profil pro
    Inscrit en
    Septembre 2011
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Septembre 2011
    Messages : 8
    Points : 9
    Points
    9
    Par défaut
    Salut,

    Pour déterminer une droite de régression y = a*x + b, le plus simple est certainement d'utiliser la fonction VBA Application.WorksheetFunction.LinEst qui correspond à la fonction matricielle DROITEREG d'Excel.

    Exemple : coefficients de régression linéaire pour les points (1,3) (2,5) et (3,7)
    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
    Sub Regression_Linéaire()
    Dim y_connus() As Double
    Dim x_connus() As Double
    Dim Ordonnée_Origine As Double
    Dim Pente As Double
     
    ReDim y_connus(1 To 3)
    ReDim x_connus(1 To 3)
     
    y_connus(1) = 3
    y_connus(2) = 5
    y_connus(3) = 7
     
    x_connus(1) = 1
    x_connus(2) = 2
    x_connus(3) = 3
     
    Pente = Application.WorksheetFunction.LinEst(y_connus, x_connus, True, False)(1) ' Pente = 2
    Ordonnée_Origine = Application.WorksheetFunction.LinEst(y_connus, x_connus, True, False)(2) ' Ordonnée_Origine  = 1
     
    End Sub
    Cdt,
    n.

Discussions similaires

  1. Réponses: 10
    Dernier message: 11/03/2013, 09h23
  2. [XL-2003] création d'une interpolation linéaire.
    Par Piccou dans le forum Excel
    Réponses: 5
    Dernier message: 30/07/2009, 09h51
  3. Réponses: 69
    Dernier message: 15/06/2006, 11h42
  4. [VB]Importer une vue SQL Server via Visual Basic
    Par NoViceDel dans le forum VB 6 et antérieur
    Réponses: 6
    Dernier message: 24/05/2006, 19h57
  5. Appeler une carte Arcview 8.x apartir de Visual basic 6
    Par mqsi dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 21/12/2005, 09h40

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