OVH Cloud OVH Cloud

ExecuteExcel4Macro

1 réponse
Avatar
BJ
Bonjour,
il doit me manquer des """ ou autre bref, je sèche, en faite c'est la
recherchv qui m'interesse ...sans tomber sur le déguoqueur
Private Sub CommandButton2_Click()
prix =
Application.ExecuteExcel4Macro("'C:\Comptoir\[prix1.xls]Feuil1'!$A$1")
'prix =
Application.ExecuteExcel4Macro("RECHERCHEV(A5;'C:\Comptoir\[prix1.xls]Feuil1
'!$A$2:$B$23;2;FAUX)")
MsgBox prix
End Sub

Merci d'avance

1 réponse

Avatar
Patrick Bastard
Bonjour à toi aussi, *BJ*.
*Pour reprendre les termes de ton intervention* -voir en fin de message :

*Extrait de l'aide (Excel 2002)*
------------------------------------------------------------------------
ExecuteExcel4Macro, méthode

Cette méthode exécute une fonction macro Microsoft Excel 4.0, puis renvoie
le résultat de la fonction. Le type renvoyé dépend de la fonction.

expression.ExecuteExcel4Macro(String)

expression Facultative. Expression qui renvoie un objet Application.

String Argument de type String obligatoire. Fonction du langage macro
Microsoft Excel 4.0 sans le signe égal (=). Toutes les références doivent
être données sous forme de chaînes de caractères R1C1. Si l'argument String
contient des guillemets doubles incorporés, vous devez encore les doubler.
Par exemple, pour exécuter la fonction macro =MID("dutexte",1,4), String
doit être "MID(""dutexte"",1,4)".

Notes
La macro Microsoft Excel 4.0 n'est pas évaluée dans le contexte du classeur
actif ou de la feuille active. Cela signifie que toute référence doit être
externe et doit spécifier un nom de classeur explicite. Par exemple, pour
exécuter une macro Microsoft Excel 4.0 appelée "Ma_Macro" dans le classeur
Class1, vous devez utiliser "Class1!Ma_Macro()". Si vous ne spécifiez pas de
nom de classeur, cette méthode échoue.

Exemple
Cet exemple montre comment exécuter la fonction de macro GET.CELL(42) sur la
cellule C3 de la feuille Sheet1, puis afficher le résultat dans une boîte de
message. La fonction de macro GET.CELL(42) renvoie la distance horizontale
entre le bord gauche de la fenêtre active et le bord gauche de la cellule
active. Cette fonction de macro n'a aucun équivalent Visual Basic direct.

Worksheets("Sheet1").Activate
Range("C3").Select
MsgBox ExecuteExcel4Macro("GET.CELL(42)")
----------------------------------------------------------------------------
--------------------

Cela t'aide-t'il ?


--
Bien cordialement,
==================================== P. Bastard.
Pour me contacter, remplacez "Chez" par @ dans l'adresse

Une foule de conseils utiles sur le site de Misange :
http://www.excelabo.net


Bonjour,
il doit me manquer des """ ou autre bref, je sèche, en faite c'est la
recherchv qui m'interesse ...sans tomber sur le déguoqueur
Private Sub CommandButton2_Click()
prix > Application.ExecuteExcel4Macro("'C:Comptoir[prix1.xls]Feuil1'!$A$1")
'prix >
Application.ExecuteExcel4Macro("RECHERCHEV(A5;'C:Comptoir[prix1.xls]Feuil1

'!$A$2:$B$23;2;FAUX)")
MsgBox prix
End Sub

Merci d'avance