Macro qui ne se calcule pas automatiquement

R

Rémi

Guest
Bonjour le forum,

J'ai un problème avec un de mes fichiers excel. J'ai créé une macro de recherche pour aller chercher de l'information dans un autre fichier. Voici la macro:

Public Function Lookforcredit(Filename As String, Term As Range) As Variant
Dim c As Integer
Dim i As Integer
Dim j As Integer
Dim a As Excel.Application
Dim wbk As Workbook
Dim wsh As Worksheet
Dim m(3, 0) As Variant

On Error GoTo ErrLookforcredit
Set a = New Excel.Application
Set wbk = a.Workbooks.Open(Filename, False, True)
Set wsh = wbk.Worksheets("Page 3")
i = 1
Do Until UCase(wsh.Cells(i, 2)) = UCase("Quality Breakdown")
i = i + 1
Loop
For j = 1 To 4
c = 2
Do Until UCase(wsh.Cells(i, c)) = UCase(Term(j))
c = c + 1
Loop
m(j - 1, 0) = wsh.Cells(i + 1, c)
Next j
Lookforcredit = m
Set wsh = Nothing
wbk.Close
Set a = Nothing
Exit Function

ErrLookforcredit:
Lookforcredit = Null
End Function

La macro fonctionne bien mais le problème est que lorsque le fichier dans lequel la recherche est faite est mis à jour, la macro ne se calcule pas automatiquement. J'ai essayé en gardant le fichier source ouvert mais rien n'y fait. Lorsque je me place sur la cellule qui contient ma macro et que je l'actualise (F2 et Enter), alors la macro se calcule.
J'ai essayé d'ajouter au code Application.Volatile mais rien n'y fait. J'aurais besoin de l'aide d'un expert pour régler ce problème. Je ne sais pas si ca peut être le problème mais ma macro est implantée de façon matricielle ({=Lookforcredit(Sommaire!$A64;$A$114:$A$117)}).

Merci de toute aide que vous pouvez m'apporter.

Rémi
 

Discussions similaires

Réponses
9
Affichages
113

Statistiques des forums

Discussions
312 775
Messages
2 092 015
Membres
105 149
dernier inscrit
Joseri70