Numéro d'article: 153442 - Dernière mise à jour: mardi 10 octobre 2006 - Version: 2.2

À l'aide de Solver.Ok à partir de VBA requiert une référence de Style L1C1

Sommaire

Agrandir tout | Réduire tout

Résumé

Lorsque vous appelez la fonction de la macro Solver.Ok à partir d'un Visual Basic pour applications procédure ou une macro, vous devez utiliser la notation R1C1 lorsque vous faites référence à des plages de cellules dans une feuille de calcul. Si vous utilisez la notation A1 dans faisant référence à des plages de cellules, vous pouvez recevoir le message d'erreur suivantes :
   Run-Time Error 1004: Error in Formula
				

Plus d'informations

Microsoft fournit des exemples de programmation à des fins d'illustration uniquement, sans garantie expresse ou implicite. Cela inclut, mais n'est pas limité à, les garanties implicites de qualité, d'adéquation à un usage particulier. Cet article suppose que vous êtes familiarisé avec le langage de programmation présenté et les outils utilisés pour créer et déboguer des procédures. Les techniciens du support technique Microsoft peuvent vous aider à comprendre la fonctionnalité d'une procédure particulière, mais ils ne modifieront pas ces exemples pour fournir des fonctionnalités supplémentaires ou créer des procédures répondant à vos besoins spécifiques. La macro Solver.Ok est une macro de commande qui définit un modèle du Solveur élémentaire, équivaut à cliquer sur le Solveur dans le menu Outils, puis à spécifier les options dans la boîte de dialogue Paramètres du Solveur.

Avant de pouvoir utiliser cette fonction, vous devez charger le complément Solveur à l'aide du Gestionnaire de compléments. Pour charger le complément Solveur, procédez comme suit :
  1. Dans le Menu Outils, cliquez sur Macros complémentaires et activez la case à cocher du Solveur.
  2. Si le complément Solveur n'apparaît pas dans la zone Macros complémentaires disponibles, cliquez sur le bouton Parcourir, sélectionnez Solver.xla dans le dossier \Excel\Library\Solver et puis cliquez sur OK.
Remarque : Si vous ne trouvez pas Solver.xla, vous devrez peut-être installer la à l'aide du programme Microsoft Excel ou le programme d'installation de Microsoft Office du Solveur du Add-la dans.

Exemple de procédure Visual Basic

La macro suivante illustre comment appeler la macro Solver.Ok à l'aide de la notation R1C1 :
  1. Dans le nouveau classeur Microsoft Excel, dans le menu Insertion, pointez sur macro, cliquez sur module et tapez le code de macro suivant :
          Sub SolverOkDemo()
           Sheets("Sheet1").Select
           Range("C1").Select
           ActiveCell.Formula = "=a1+b1"
           ' Solver.Ok Parameters
           Set_Cell = Range("C1").Address(True, True, xlR1C1, True)
           Max_Min_Val = 3
           Value_Of = 21
           By_Changing = Range("a1:b1").Address(True, True, xlR1C1, True)
    
           Application.ExecuteExcel4Macro _
           String:="'[SOLVER.XLA]SOLVER'!SOLVER.OK(" _
              & Set_Cell & "," & Max_Min_Val & "," & Value_Of & "," & _
              By_Changing & ")"
           Application.ExecuteExcel4Macro _
           String:="'[SOLVER.XLA]SOLVER'!SOLVER.SOLVE()"
          End Sub
    					
  2. Dans le Menu Outils, cliquez sur macro, sélectionnez la Macro SolverOkDemo dans la liste, puis cliquez sur le bouton Exécuter pour exécuter la macro.
La macro va effectuer les opérations suivantes :
  1. Sélectionnez la feuille sheet1.
  2. Sélectionnez la cellule C1.
  3. Insérer la formule = A1 + B1 dans la cellule C1.
  4. Place la solution trouvée dans les cellules A1 et B1.
  5. Boîte de dialogue du solveur apparaît, indiquant qu'il a trouvé une solution.
  6. Cliquez sur OK.

Références

Pour plus d'informations sur l'utilisation de SolverOk dans Visual Basic pour Microsoft Excel 97, à partir de Visual Basic Editor, cliquez sur le Compagnon Office, tapez «SolverOk», cliquez sur Rechercher, puis cliquez sur pour afficher «SolverOK, fonction».

Remarque : Si le Compagnon est masqué, cliquez sur le bouton Compagnon Office dans la barre d'outils standard. Si le Compagnon n'est pas en mesure de répondre à votre requête, consultez l'article suivant dans la base de connaissances Microsoft :
176476  (http://support.microsoft.com/kb/176476/EN-US/ ) OFF : Le Compagnon Office ne répond pas aux questions sur Visual Basic
Pour plus d'informations sur SolverOk dans Microsoft Excel version 7.0, cliquez sur Aide intuitive dans le menu Aide et le type :
   SolverOk
				
pour plus d'informations sur Solver.OK dans Microsoft Excel version 5.0, choisissez contenu dans l'aide, cliquez sur les informations de référence, puis cliquez sur le bouton Rechercher et le type :
   Solver.ok
				
pour plus d'informations sur l'obtention d'aide avec Visual Basic pour applications, consultez l'article suivant dans la base de connaissances Microsoft :
163435  (http://support.microsoft.com/kb/163435/EN-US/ ) VBA : Ressources de programmation pour Visual Basic pour applications

Les informations contenues dans cet article s'appliquent au(x) produit(s) suivant(s):
  • Microsoft Excel 95a
  • Microsoft Excel 5.0c
  • Microsoft Excel 5.0a pour Macintosh
Mots-clés : 
kbmt kbdtacode kberrmsg kbhowto kbprogramming KB153442 KbMtfr
Traduction automatiqueTraduction automatique
IMPORTANT : Cet article est issu du système de traduction automatique mis au point par Microsoft (http://support.microsoft.com/gp/mtdetails). Un certain nombre d?articles obtenus par traduction automatique sont en effet mis à votre disposition en complément des articles traduits en langue française par des traducteurs professionnels. Cela vous permet d?avoir accès, dans votre propre langue, à l?ensemble des articles de la base de connaissances rédigés originellement en langue anglaise. Les articles traduits automatiquement ne sont pas toujours parfaits et peuvent comporter des erreurs de vocabulaire, de syntaxe ou de grammaire (probablement semblables aux erreurs que ferait une personne étrangère s?exprimant dans votre langue !). Néanmoins, mis à part ces imperfections, ces articles devraient suffire à vous orienter et à vous aider à résoudre votre problème. Microsoft s?efforce aussi continuellement de faire évoluer son système de traduction automatique.
La version anglaise de cet article est la suivante: 153442  (http://support.microsoft.com/kb/153442/en-us/ )
L'INFORMATION CONTENUE DANS CE DOCUMENT EST FOURNIE PAR MICROSOFT SANS GARANTIE D'AUCUNE SORTE, EXPLICITE OU IMPLICITE. L'UTILISATEUR ASSUME LE RISQUE DE L'UTILISATION DU CONTENU DE CE DOCUMENT. CE DOCUMENT NE PEUT ETRE REVENDU OU CEDE EN ECHANGE D'UN QUELCONQUE PROFIT.
Retired KB ArticleExclusion de responsabilité concernant les contenus obsolètes dans la Base de connaissances
Cet article concerne des produits pour lesquels Microsoft n'offre plus de support. Il est par conséquent fourni « en l'état » et ne sera plus mis à jour.
 

Traductions disponibles