Utiliser INDIRECT.EXT dans une fonction VBA

Bonjour

Cela fait pas mal de temps que je cherche à savoir si on peut oui ou non utiliser INDIRECT.EXT dans une fonction VBA.

j'ai essayé ceci:

Function test() As String

test = indirect.ext("'C:\[CR 2017]Janvier'!$AW$5")

End Function

il y a un #VALEUR dans la cellule où j'ai utilisé cette fonction et je ne sait pas si c'est un problème de formule ou indirect.EXT qui ne fonctionne pas.

Merci!!

Bonjour,

indirect.ext est une fonction de MoreFunc créer par Laurent Longre.

Ces fonctions sont compatibles avec Excel 95 à 2007. Elles ne sont pas portables sur d'autres plate-formes que Windows, ni sur d'autres tableurs.

une alternative avec ExecuteExcel4Macro

Sub test1()
Dim a, b, c, d, e
a = "C:\"
b = "CR 2017.xlsx"
c = "Janvier"
d = Range("$AW$5").Row
e = Range("$AW$5").Column

Range("B1") = Data_in_closed_workbook(a, b, c, d, e)
End Sub

Function Data_in_closed_workbook(sRep As String, sFile As String, sSh As String, rw As Integer, cn As Integer) As Variant
x = ExecuteExcel4Macro _
      ("'" & sRep & "\[" & sFile & "]" & sSh & "'!R" & rw & "C" & cn & "")
Data_in_closed_workbook = x
End Function

Merci beaucoup!!!!!!!!!!!

cela ma vraiment aider, grâce a toi tout fonctionne ,j'ai pas pensé à regarder à une autre méthode que indirect.ext .

Mais sais tu si cette fonction est utilisable sur des versions antérieurs ??

Et maintenant Le problème c'est que je veut une fonction qui retourne une variant ,sauf que la valeur que je récupère dans l'autre classeur est un double ,donc Data_in_closed_workbook renvoie un Variant/double(vue grâce au debug) et cela pose problème donc je voulais savoir si on pouvais contourner sa ?

Function test1() As Variant

Dim a As String, b As String, c As String, d As Integer, e As Integer

a = "C:\"
b = "CR 2017.xlsm"
c = "Janvier 2017"
d = Range("$AW$5").Row
e = Range("$AW$5").Column

test1 = Data_in_closed_workbook(a, b, c, d, e)

End Function

j'ai crée un double post désolé

Bonjour,

pouvez vous montrer un exemple des données récupérées,

et montrer sous quel forme vous aimeriez quel soient.

Rechercher des sujets similaires à "utiliser indirect ext fonction vba"