j'utilise le code suivant pour afficher un message en cas=20
de modification dans une cellule
Private Sub Worksheet_Change(ByVal Target As Range)
If cells(1, 1).Value > 0 Then
MsgBox ("La valeur modifi=E9e est sup=E9rieure =E0 0")
End If
end sub
Ca marche quand je modifie manuellement le contenue de la=20
cellule mais le probleme c est que j'ai une requete bas=E9e=20
sur le web qui s'actualise toutes les 5 minutes et que=20
j'aimerais avoir un message quand des valeurs r=E9cup=E9r=E9es=20
par cette requete sont modifi=E9es
Et la, ca marche pas
Si quelqu un a une id=E9e merci
Je faisais référence à quelque chose dans le genre .... lorsque l'on doit contrôler ce qui se passe... mieux vaut gérer soi-même les activités Excel ... ;-)
'----------------------- Sub ActualiserRequête()
Application.Ontime Now + TimeValue("00:05:00"), "MiseAJourRequete"
End Sub '-----------------------
Sub MiseAJourRequete()
Dim ValeurMaCell As Double ValeurMaCell = Worksheets("Feuil1").Cells(1, 1).Value
With Worksheets("Feuil1") .QueryTables(1).Refresh False End With If ValeurMaCell <> "" Then MsgBox ("La valeur modifiée est supérieure à 0") End If ActualiserRequête
End Sub '-----------------------
Et si cela doit être lancer dès l'ouverture du fichier , on ajoute ceci dans le ThisWorkbook du projet VBA
'----------------------- Private Sub Workbook_Open() ActualiserRequête End Sub '-----------------------
Et au besoin, on pourrait même ajouter un bouton pour interrompre la boucle d'actualisation des données de la requête.
Salutations!
"Jp Pradier" a écrit dans le message de news: Bonjour Denis
Dans Excel 2002, il n'y a pas besoin de code pour actualiser la requète. Ca fait partie des propriétés de la requète. Dans les versions précédentes d'excel, j'avoue que je ne l'ai jamais utilisé.
j-p
Bonjour JP,
Je faisais référence à quelque chose dans le genre .... lorsque l'on doit contrôler ce qui se passe... mieux vaut gérer
soi-même les activités Excel ... ;-)
'-----------------------
Sub ActualiserRequête()
Application.Ontime Now + TimeValue("00:05:00"), "MiseAJourRequete"
End Sub
'-----------------------
Sub MiseAJourRequete()
Dim ValeurMaCell As Double
ValeurMaCell = Worksheets("Feuil1").Cells(1, 1).Value
With Worksheets("Feuil1")
.QueryTables(1).Refresh False
End With
If ValeurMaCell <> "" Then
MsgBox ("La valeur modifiée est supérieure à 0")
End If
ActualiserRequête
End Sub
'-----------------------
Et si cela doit être lancer dès l'ouverture du fichier , on ajoute ceci dans le ThisWorkbook du projet VBA
'-----------------------
Private Sub Workbook_Open()
ActualiserRequête
End Sub
'-----------------------
Et au besoin, on pourrait même ajouter un bouton pour interrompre la boucle d'actualisation des données de la requête.
Salutations!
"Jp Pradier" <jp.pradier@wanadoo.fr> a écrit dans le message de news:OXnF806cDHA.2932@tk2msftngp13.phx.gbl...
Bonjour Denis
Dans Excel 2002, il n'y a pas besoin de code pour actualiser la requète. Ca fait partie des propriétés de la requète.
Dans les versions précédentes d'excel, j'avoue que je ne l'ai jamais utilisé.
Je faisais référence à quelque chose dans le genre .... lorsque l'on doit contrôler ce qui se passe... mieux vaut gérer soi-même les activités Excel ... ;-)
'----------------------- Sub ActualiserRequête()
Application.Ontime Now + TimeValue("00:05:00"), "MiseAJourRequete"
End Sub '-----------------------
Sub MiseAJourRequete()
Dim ValeurMaCell As Double ValeurMaCell = Worksheets("Feuil1").Cells(1, 1).Value
With Worksheets("Feuil1") .QueryTables(1).Refresh False End With If ValeurMaCell <> "" Then MsgBox ("La valeur modifiée est supérieure à 0") End If ActualiserRequête
End Sub '-----------------------
Et si cela doit être lancer dès l'ouverture du fichier , on ajoute ceci dans le ThisWorkbook du projet VBA
'----------------------- Private Sub Workbook_Open() ActualiserRequête End Sub '-----------------------
Et au besoin, on pourrait même ajouter un bouton pour interrompre la boucle d'actualisation des données de la requête.
Salutations!
"Jp Pradier" a écrit dans le message de news: Bonjour Denis
Dans Excel 2002, il n'y a pas besoin de code pour actualiser la requète. Ca fait partie des propriétés de la requète. Dans les versions précédentes d'excel, j'avoue que je ne l'ai jamais utilisé.
j-p
coucou
ok merci
-----Message d'origine----- Tu peux ajouter : Application.WindowState = xlMaximized qui redonne le focus à Excel.
j-p
.
ok merci
-----Message d'origine-----
Tu peux ajouter : Application.WindowState = xlMaximized
qui redonne le focus à Excel.