Bonjour à tous,
J'ai un souci avec un fichier Excel créé depuis VB. Ce fichier contient des formules et je souhaite qu'à chaque fois qu'elles renvoient une donnée, un compteur soit incrémenté. Dès que toutes les données sont présentes, je dois retourner dans un programme VB et continuer des traitements.
J'ai essayé de faire une macro qui controle la récupération des données, mais le setLinkOnData n'a pas l'air de fonctionner...
Quelqu'un peut-il m'aider ?
Merci
Code d'appel de VB :
.
voici le code de la macro :
L'insertion du "ok" dans la cellule de la sheet 2 est sensée me servir pour dire à vb que les données sont toutes là.
Toute aide est la bienvenue.
Merci
J'ai un souci avec un fichier Excel créé depuis VB. Ce fichier contient des formules et je souhaite qu'à chaque fois qu'elles renvoient une donnée, un compteur soit incrémenté. Dès que toutes les données sont présentes, je dois retourner dans un programme VB et continuer des traitements.
J'ai essayé de faire une macro qui controle la récupération des données, mais le setLinkOnData n'a pas l'air de fonctionner...
Quelqu'un peut-il m'aider ?
Merci
Code d'appel de VB :
Code:
Do
mobjXls.Run "personal.xls!ctlXlsVal.allValOK"
If xlsSht2.Range("A2").Value = "ok" Then
mblnOK = True
Else
Sleep 1000
End If
Loop Until mblnOK
voici le code de la macro :
Code:
Private Const mstr_MODULENAME As String = "ctlXlsVal"
Private glngNmbRow As Long
Private glngCptUpdCel As Long
Public Sub cntLnk()
glngCptUpdCel = glngCptUpdCel + 1
If glngCptUpdCel = glngNmbRow Then
activeworkbook.worksheets(2).range("A2").Value = "ok"
End If
End Sub
Public Sub allValOk()
Dim aLinks As Variant
Dim counter As Long
glngNmbRow = 0
aLinks = activeworkbook.LinkSources(xlOLELinks)
If Not IsEmpty(aLinks) Then
glngNmbRow = UBound(aLinks)
glngCptUpdCel = 0
For counter = 1 To UBound(aLinks)
activeworkbook.SetLinkOnData aLinks(counter), "cntLnk"
Next counter
End If
End Sub
L'insertion du "ok" dans la cellule de la sheet 2 est sensée me servir pour dire à vb que les données sont toutes là.
Toute aide est la bienvenue.
Merci