Avant de poster...........
Voudrais-tu tenir compte de ma maxime :evilred:
Version imprimable
Salut cb_60,
Inutile d'envoyer par MP, les discutions se passes sur le forum.
Quand à ce que je veux dire, charge et essaye les solutions de Ouskel'n'or ou la mienne, teste... Et essaye la tienne pour voir ce qu'elle fait ????? :?
A+
Edit:
Ce que j'ai voulu dire c'est
Citation:
N'oubliez pas d'examiner la question avant de fournir la réponse.
Re
Je ne comprend toujours pas , mais ce n'est pas grave.
J'ai lu un peu ce qui se passé sur ce fil et il me semble que vous avez bien travaillés et je ne veux pas de polémique sur quelque chose que je peu ne pas avoir compris!!
He bien, dites donc que de tension pour une petite macro!!::aie:
Atendez au moins que je vous dises si ca fonctionne en réel a l ouverture du marché vers 23h30 avant d epiloguer.
Ca ce trouve aucune solution va marché :(
En tout cas je testerais toute les solutions avec atentions.
Encore merci a ouskel'n'or et a Leforestier :love2: pour l attention qu ils me donnent.:merci:
OK, mais tu aurais pu préciser qu'il fallait ajouter
Celà aurais évité la 'polémique'Code:=DECALER(Feuil1!L3C1;;;NBVAL(Feuil1!C1)-1;)
Et je doit dire que ta solution est élégante. :P
A+
Autant pour moi, tu l'avais signalé mais je n'en ai pas tenu compte, toutes mes excuses.
Merci cb_60 de ta contribution je viens de tester manuellement ton code, le principe est exact et identique au autre code par contre dans la cellule A1 je ne peut pas coller mon lien DDE qui me donne mes données, il est automatiquement effacé et par concequence rend le code non fonctionnel.
merci a tous
re
tu peux enlever cette ligne
Sheets("Feuil1").Range("A1") = ""
en fin de macro, je l'avais mis car des que la valeur était copié, je pensais que tu en avais plus besoin
ok, ca a l air de fonctionner maintenant, puis je suprimer
valeur =DECALER(Feuil1!L3C1;;;NBVAL(Feuil1!C1)-1; ) dans la feuille excel?
Re
si c'est ce qui est inscrit sur la feuille Oui tu peu, surtout n'enleve pas dans insertion, nom, definir
ok, bon be voila je me retrouve avec 3 test.
merci
tiens, une petite question, dans les codes Target = ma valeur si je comprends bien?
si je fait ca :
Cells(Derlig + 1, 1) = Target-range(A2)
toutes les valeurs seront soustraite avec la valeur de la cellule A2 ?
re
Ou comme cela:
Code:
1
2 Cells(Derlig + 1, 1) = Target - Cells(2, 1)
Bon voila, le marché viens d ouvrir, resultat, rien.....
Aucune solution fonctionne, il doit y avoir un probleme de donnes ou de reconnaissance de modification des données.
Dans A1 j ai bien mon prix qui varie , peut etre ,un probleme de format de données! c est curieux
:cry: tout ça pour ça :cry:
Il serait peut-être intéressant que tu nous indiques la méthode renseignant la cellule A1...
A+
Bonne nuit
Bonjour
tu peux peut être essayer cela, si c'est du texte:
Code:
1
2
3
4
5
6
7
8
9
10
11 Private Sub Worksheet_Change(ByVal Target As Range) Dim Derlig As Long Derlig = Sheets("Feuil1").Cells(Columns(1).Cells.Count, 1).End(xlUp).Row If Target.Address = "$A$1" Then Target.TextToColumns Destination:=Cells(1, 1) Cells(Derlig + 1, 1) = Target Exit Sub End If End Sub
Bonjour,
meci cb-60 mais ca n a rien changé.
La methode de renseignement de la cellule est la suivante:
j ecris cette formule dans la cellule =MT4|BID!GBPUSD
ce qui me donne un chiffre a virgule du style 2.0025
MT4 est le nom du programme dans lequel execl va chercher la donnée, BID c est le prix de la monnaie et GBPUSD c est le nom de la monnaie.
Ca s appelle un lien DDE.
Re
il me semble que la valeur que tu récupere est du texte, il vas falloir que tu convertisse le point en virgule, avec une nombre derriere la virgule
non , je ne pense pas que ca soit le probleme.
Le probleme c est que dans A1 il y a une formule qui ne change pas mais qui affiche que le resultat et c est la la grosse difference
J ai trouvé la solution a ce probleme sur le net. ( et oui je cherche moi aussi, j atend pas que ca tombe tout seul)
Ca marche Nikel avec ma formule en A1 a chaque changement de valeur le message box s ouvre.Code:
1
2
3
4
5
6
7
8
9
10 Private Sub Worksheet_Activate() valeur = Range("A1") End Sub Private Sub Worksheet_Calculate() If Range("A1") <> valeur Then MsgBox ("A1 a été modifiée.") valeur = Range("A1") End If End Sub
Maintenand comment intergrer ca a vos codes??
merci