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 :

Remplissage automatique tables [XL-2010]


Sujet :

Macros et VBA Excel

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Ingénieur développement matériel électronique
    Inscrit en
    Juillet 2013
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement matériel électronique
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2013
    Messages : 3
    Points : 1
    Points
    1
    Par défaut Remplissage automatique tables
    Bonjour,
    J'aurai besoin d'un petit coup de main pour automatiser le remplissage de tableaux.
    Un fichier d'exemple est fourni en piece jointe. Une petite explication s'impose:
    J'ai y=ax+b (je prends un exemple simple, la formule reelle dans mon fichier est plus complexe).
    Je cherche la valeur max de "b" pour attendre ymax=100 et ceci pour differentes valeurs de "a" indexant plusieurs tables et differentes valeurs de "x" dans chaque table. Les valeurs sont inserees dans les differentes cellules des tables correspondantes et je souhaiterai que ce remplissage soit automatique.
    Actuellement, je calcule "y" en incrementant manuellement la valeur et je rentre (toujours manuellement) la valeur trouvee pour b dans les tables.
    Est-ce quelqu'un aurait une idee de ce qu'il faudrait coder pour obtenir ce que je souhaite?
    Merci!
    Fichiers attachés Fichiers attachés

  2. #2
    Expert éminent sénior 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
    Points : 31 877
    Points
    31 877
    Par défaut
    La formule réelle est secrète?
    S'il n'y a pas de méthode directe (par rapport à la formule) je pense utiliser le solveur en boucle pour chaque valeur de a et x.


    EDIT: Exemple utilisant le solveur en boucle (Ton fichier)

    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
    Option Explicit
    '/!\ Active la référence Solver dans vba Editor et l'AddIn Solveur dans Excel
    '----------------------------------------------------------------------------
    Sub Test()
    Dim a As Integer, x As Integer
     
    With Feuil1
        For a = 1 To 5
            .Range("B4") = a
            .Cells(4 * a - 1, 6) = a
            For x = 1 To 10
                .Range("B5") = x
                .Cells(4 * a, 5 + x) = x
                SolverOk SetCell:="$B$6", MaxMinVal:=3, ValueOf:=100, ByChange:="$B$3", Engine:=1, EngineDesc:="GRG Nonlinear"
                SolverSolve True
                .Cells(4 * a + 1, 5 + x) = .Range("B3")
                SolverReset
            Next x
        Next a
    End With
    MsgBox "Remplissage terminé"
    End Sub

  3. #3
    Nouveau Candidat au Club
    Homme Profil pro
    Ingénieur développement matériel électronique
    Inscrit en
    Juillet 2013
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement matériel électronique
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2013
    Messages : 3
    Points : 1
    Points
    1
    Par défaut
    Merci pour ta reponse mercatog,
    Non la formule n'est pas secrete mais assez longue donc pour que ce soit plus clair, j'ai simplifie au maximum le fichier.
    j'ai ajoute la macro dans mon fichier mais l'execution s'arrete a "solverOK":
    compile error
    sub or function not defined

  4. #4
    Expert éminent sénior 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
    Points : 31 877
    Points
    31 877
    Par défaut
    As tu lu ceci (en commentaire)
    /!\ Active la référence Solver dans vba Editor et l'AddIn Solveur dans Excel

  5. #5
    Nouveau Candidat au Club
    Homme Profil pro
    Ingénieur développement matériel électronique
    Inscrit en
    Juillet 2013
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement matériel électronique
    Secteur : Industrie

    Informations forums :
    Inscription : Juillet 2013
    Messages : 3
    Points : 1
    Points
    1
    Par défaut
    super ca marche!
    Je n'avais pas active l'add-in solver dans les options excel et les references de VB.
    Merci!

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

Discussions similaires

  1. [AC-2010] Remplissage automatique d'une Table
    Par guyhoquet dans le forum VBA Access
    Réponses: 3
    Dernier message: 28/08/2014, 11h15
  2. [AC-2007] Importation et remplissage automatique des champs d'une table
    Par vincent1746 dans le forum VBA Access
    Réponses: 6
    Dernier message: 31/05/2010, 15h17
  3. [AC-2007] Lien entre tables et remplissage automatique de formulaire
    Par toniodelavega dans le forum IHM
    Réponses: 3
    Dernier message: 20/02/2010, 08h34
  4. Réponses: 15
    Dernier message: 19/05/2009, 12h09
  5. Remplissage automatique d'une table
    Par AzalTeeb dans le forum Requêtes et SQL.
    Réponses: 2
    Dernier message: 04/07/2008, 22h55

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