Cumul dans une cellule (2 ) rajout d'une info oubliée!!!
4 réponses
gege
Bonjour,
J'ai un petit probl=E8me =E0 soumettre et avant de faire cela=20
j'ai test=E9 les diff=E9rentes solutions propos=E9es dans ce=20
forum (par Google!) mais cela reste flou encore pour moi.
J'aimerai faire un cumul de sortie de stock sur un tableau=20
de 1000 articles.
Donc j'aimerai le faire en formule ou en vba
J'ai donc essay=E9 :
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
If Not Intersect(Target, Range("A1")) Is Nothing Then
[A2] =3D [A2] + [A1]
End If
End Sub
cette solution ne fonctionne pas si la cellule A1 est mise=20
=E0 jour par une formule. Le worksheet_change n'est pas=20
appel=E9 ... c'est justement mon cas !!!!
Laurent Longre propose la solution en 1998 !!!
| Une solution ind=E9pendante de la version d'Excel utilis=E9e=20
consisterait =E0
| passer par une fonction macro XLM. Contrairement =E0 VBA,=20
les fonctions
| XLM peuvent en effet r=E9cup=E9rer le contenu de la cellule=20
appelante:
|=20
| =3DARGUMENT("Cellule_cumul";1)
| =3DRETOUR(CELLULE.APPELANTE()+Cellule_cumul)
??? kesalo les macros XLM? comment les utilis=E9es ??
Et la solution par it=E9rations ne semble pas convenir!!!
Au secours !!!
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Philippe.R
Bonjour Gérard, Peut être peux tu essayer d'utiliser le même code : If Not Intersect(Target, Range("A1")) Is Nothing Then [A2] = [A2] + [A1] End If avec l'évènement calculate de la feuille au lieu de change ? une macro xlm est une macro Excel 4, que tu peux insérer dans ton classeur par clic droit sur un onglet + insertion... -- Amicales Salutations
Retirer A_S_ pour répondre. XL97 / XL2002 "gege" a écrit dans le message de news:0af001c367d0$26371b30$ Bonjour, J'ai un petit problème à soumettre et avant de faire cela j'ai testé les différentes solutions proposées dans ce forum (par Google!) mais cela reste flou encore pour moi.
J'aimerai faire un cumul de sortie de stock sur un tableau de 1000 articles. Donc j'aimerai le faire en formule ou en vba
J'ai donc essayé : Private Sub Worksheet_Change(ByVal Target As Excel.Range) If Not Intersect(Target, Range("A1")) Is Nothing Then [A2] = [A2] + [A1] End If End Sub
cette solution ne fonctionne pas si la cellule A1 est mise à jour par une formule. Le worksheet_change n'est pas appelé ... c'est justement mon cas !!!!
Laurent Longre propose la solution en 1998 !!!
| Une solution indépendante de la version d'Excel utilisée consisterait à | passer par une fonction macro XLM. Contrairement à VBA, les fonctions | XLM peuvent en effet récupérer le contenu de la cellule appelante: | | =ARGUMENT("Cellule_cumul";1) | =RETOUR(CELLULE.APPELANTE()+Cellule_cumul)
??? kesalo les macros XLM? comment les utilisées ??
Et la solution par itérations ne semble pas convenir!!! Au secours !!!
Merci d'avance.
j'utilise Xl2000
Bonjour Gérard,
Peut être peux tu essayer d'utiliser le même code :
If Not Intersect(Target, Range("A1")) Is Nothing Then
[A2] = [A2] + [A1]
End If
avec l'évènement calculate de la feuille au lieu de change ?
une macro xlm est une macro Excel 4, que tu peux insérer dans ton classeur par clic droit sur un onglet
+ insertion...
--
Amicales Salutations
A_S_rauphil@wanadoo.fr
Retirer A_S_ pour répondre.
XL97 / XL2002
"gege" <gerard.louisjean@edf.spam> a écrit dans le message de
news:0af001c367d0$26371b30$a401280a@phx.gbl...
Bonjour,
J'ai un petit problème à soumettre et avant de faire cela
j'ai testé les différentes solutions proposées dans ce
forum (par Google!) mais cela reste flou encore pour moi.
J'aimerai faire un cumul de sortie de stock sur un tableau
de 1000 articles.
Donc j'aimerai le faire en formule ou en vba
J'ai donc essayé :
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
If Not Intersect(Target, Range("A1")) Is Nothing Then
[A2] = [A2] + [A1]
End If
End Sub
cette solution ne fonctionne pas si la cellule A1 est mise
à jour par une formule. Le worksheet_change n'est pas
appelé ... c'est justement mon cas !!!!
Laurent Longre propose la solution en 1998 !!!
| Une solution indépendante de la version d'Excel utilisée
consisterait à
| passer par une fonction macro XLM. Contrairement à VBA,
les fonctions
| XLM peuvent en effet récupérer le contenu de la cellule
appelante:
|
| =ARGUMENT("Cellule_cumul";1)
| =RETOUR(CELLULE.APPELANTE()+Cellule_cumul)
??? kesalo les macros XLM? comment les utilisées ??
Et la solution par itérations ne semble pas convenir!!!
Au secours !!!
Bonjour Gérard, Peut être peux tu essayer d'utiliser le même code : If Not Intersect(Target, Range("A1")) Is Nothing Then [A2] = [A2] + [A1] End If avec l'évènement calculate de la feuille au lieu de change ? une macro xlm est une macro Excel 4, que tu peux insérer dans ton classeur par clic droit sur un onglet + insertion... -- Amicales Salutations
Retirer A_S_ pour répondre. XL97 / XL2002 "gege" a écrit dans le message de news:0af001c367d0$26371b30$ Bonjour, J'ai un petit problème à soumettre et avant de faire cela j'ai testé les différentes solutions proposées dans ce forum (par Google!) mais cela reste flou encore pour moi.
J'aimerai faire un cumul de sortie de stock sur un tableau de 1000 articles. Donc j'aimerai le faire en formule ou en vba
J'ai donc essayé : Private Sub Worksheet_Change(ByVal Target As Excel.Range) If Not Intersect(Target, Range("A1")) Is Nothing Then [A2] = [A2] + [A1] End If End Sub
cette solution ne fonctionne pas si la cellule A1 est mise à jour par une formule. Le worksheet_change n'est pas appelé ... c'est justement mon cas !!!!
Laurent Longre propose la solution en 1998 !!!
| Une solution indépendante de la version d'Excel utilisée consisterait à | passer par une fonction macro XLM. Contrairement à VBA, les fonctions | XLM peuvent en effet récupérer le contenu de la cellule appelante: | | =ARGUMENT("Cellule_cumul";1) | =RETOUR(CELLULE.APPELANTE()+Cellule_cumul)
??? kesalo les macros XLM? comment les utilisées ??
Et la solution par itérations ne semble pas convenir!!! Au secours !!!
Merci d'avance.
j'utilise Xl2000
gege
Bonjour, Merci pour ta réponse mais dans cette événement il n'y a pas de ref à la cellule modifié (Target) donc je ne peux utiliser le range pour plusieurs lignes de stock. Dans l'exemple j'ai pris [A2] = [A2] + [A1] mais j'ai 1000 autre lignes à mettre à jour.
Merci
-----Message d'origine----- Bonjour Gérard, Peut être peux tu essayer d'utiliser le même code : If Not Intersect(Target, Range("A1")) Is Nothing Then [A2] = [A2] + [A1] End If avec l'évènement calculate de la feuille au lieu de change ?
une macro xlm est une macro Excel 4, que tu peux insérer dans ton classeur par clic droit sur un onglet
+ insertion... -- Amicales Salutations
Retirer A_S_ pour répondre. XL97 / XL2002 "gege" a écrit dans le message de
news:0af001c367d0$26371b30$ Bonjour, J'ai un petit problème à soumettre et avant de faire cela j'ai testé les différentes solutions proposées dans ce forum (par Google!) mais cela reste flou encore pour moi.
J'aimerai faire un cumul de sortie de stock sur un tableau de 1000 articles. Donc j'aimerai le faire en formule ou en vba
J'ai donc essayé : Private Sub Worksheet_Change(ByVal Target As Excel.Range) If Not Intersect(Target, Range("A1")) Is Nothing Then [A2] = [A2] + [A1] End If End Sub
cette solution ne fonctionne pas si la cellule A1 est mise à jour par une formule. Le worksheet_change n'est pas appelé ... c'est justement mon cas !!!!
Laurent Longre propose la solution en 1998 !!!
| Une solution indépendante de la version d'Excel utilisée consisterait à | passer par une fonction macro XLM. Contrairement à VBA, les fonctions | XLM peuvent en effet récupérer le contenu de la cellule appelante: | | =ARGUMENT("Cellule_cumul";1) | =RETOUR(CELLULE.APPELANTE()+Cellule_cumul)
??? kesalo les macros XLM? comment les utilisées ??
Et la solution par itérations ne semble pas convenir!!! Au secours !!!
Merci d'avance.
j'utilise Xl2000
.
Bonjour,
Merci pour ta réponse mais dans cette événement il n'y a
pas de ref à la cellule modifié (Target) donc je ne peux
utiliser le range pour plusieurs lignes de stock.
Dans l'exemple j'ai pris [A2] = [A2] + [A1] mais j'ai 1000
autre lignes à mettre à jour.
Merci
-----Message d'origine-----
Bonjour Gérard,
Peut être peux tu essayer d'utiliser le même code :
If Not Intersect(Target, Range("A1")) Is Nothing Then
[A2] = [A2] + [A1]
End If
avec l'évènement calculate de la feuille au lieu de
change ?
une macro xlm est une macro Excel 4, que tu peux insérer
dans ton classeur par clic droit sur un onglet
+ insertion...
--
Amicales Salutations
A_S_rauphil@wanadoo.fr
Retirer A_S_ pour répondre.
XL97 / XL2002
"gege" <gerard.louisjean@edf.spam> a écrit dans le
message de
news:0af001c367d0$26371b30$a401280a@phx.gbl...
Bonjour,
J'ai un petit problème à soumettre et avant de faire cela
j'ai testé les différentes solutions proposées dans ce
forum (par Google!) mais cela reste flou encore pour moi.
J'aimerai faire un cumul de sortie de stock sur un tableau
de 1000 articles.
Donc j'aimerai le faire en formule ou en vba
J'ai donc essayé :
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
If Not Intersect(Target, Range("A1")) Is Nothing Then
[A2] = [A2] + [A1]
End If
End Sub
cette solution ne fonctionne pas si la cellule A1 est mise
à jour par une formule. Le worksheet_change n'est pas
appelé ... c'est justement mon cas !!!!
Laurent Longre propose la solution en 1998 !!!
| Une solution indépendante de la version d'Excel utilisée
consisterait à
| passer par une fonction macro XLM. Contrairement à VBA,
les fonctions
| XLM peuvent en effet récupérer le contenu de la cellule
appelante:
|
| =ARGUMENT("Cellule_cumul";1)
| =RETOUR(CELLULE.APPELANTE()+Cellule_cumul)
??? kesalo les macros XLM? comment les utilisées ??
Et la solution par itérations ne semble pas convenir!!!
Au secours !!!
Bonjour, Merci pour ta réponse mais dans cette événement il n'y a pas de ref à la cellule modifié (Target) donc je ne peux utiliser le range pour plusieurs lignes de stock. Dans l'exemple j'ai pris [A2] = [A2] + [A1] mais j'ai 1000 autre lignes à mettre à jour.
Merci
-----Message d'origine----- Bonjour Gérard, Peut être peux tu essayer d'utiliser le même code : If Not Intersect(Target, Range("A1")) Is Nothing Then [A2] = [A2] + [A1] End If avec l'évènement calculate de la feuille au lieu de change ?
une macro xlm est une macro Excel 4, que tu peux insérer dans ton classeur par clic droit sur un onglet
+ insertion... -- Amicales Salutations
Retirer A_S_ pour répondre. XL97 / XL2002 "gege" a écrit dans le message de
news:0af001c367d0$26371b30$ Bonjour, J'ai un petit problème à soumettre et avant de faire cela j'ai testé les différentes solutions proposées dans ce forum (par Google!) mais cela reste flou encore pour moi.
J'aimerai faire un cumul de sortie de stock sur un tableau de 1000 articles. Donc j'aimerai le faire en formule ou en vba
J'ai donc essayé : Private Sub Worksheet_Change(ByVal Target As Excel.Range) If Not Intersect(Target, Range("A1")) Is Nothing Then [A2] = [A2] + [A1] End If End Sub
cette solution ne fonctionne pas si la cellule A1 est mise à jour par une formule. Le worksheet_change n'est pas appelé ... c'est justement mon cas !!!!
Laurent Longre propose la solution en 1998 !!!
| Une solution indépendante de la version d'Excel utilisée consisterait à | passer par une fonction macro XLM. Contrairement à VBA, les fonctions | XLM peuvent en effet récupérer le contenu de la cellule appelante: | | =ARGUMENT("Cellule_cumul";1) | =RETOUR(CELLULE.APPELANTE()+Cellule_cumul)
??? kesalo les macros XLM? comment les utilisées ??
Et la solution par itérations ne semble pas convenir!!! Au secours !!!
Merci d'avance.
j'utilise Xl2000
.
Philippe.R
Bonsoir, Et avec ceci, à adapter ?
Private Sub Worksheet_Calculate() 'peut fonctionner en l'absence de fonction volatile en a1 For i = 2 To 100 Cells(i, 1).Value = Cells(i, 1).Value + Cells(1, 1).Value Next i End Sub -- Amicales Salutations
Retirer A_S_ pour répondre. XL97 / XL2002 "gege" a écrit dans le message de news:064501c367f0$f19d84b0$ Bonjour, Merci pour ta réponse mais dans cette événement il n'y a pas de ref à la cellule modifié (Target) donc je ne peux utiliser le range pour plusieurs lignes de stock. Dans l'exemple j'ai pris [A2] = [A2] + [A1] mais j'ai 1000 autre lignes à mettre à jour.
Merci
-----Message d'origine----- Bonjour Gérard, Peut être peux tu essayer d'utiliser le même code : If Not Intersect(Target, Range("A1")) Is Nothing Then [A2] = [A2] + [A1] End If avec l'évènement calculate de la feuille au lieu de change ?
une macro xlm est une macro Excel 4, que tu peux insérer dans ton classeur par clic droit sur un onglet
+ insertion... -- Amicales Salutations
Retirer A_S_ pour répondre. XL97 / XL2002 "gege" a écrit dans le message de
news:0af001c367d0$26371b30$ Bonjour, J'ai un petit problème à soumettre et avant de faire cela j'ai testé les différentes solutions proposées dans ce forum (par Google!) mais cela reste flou encore pour moi.
J'aimerai faire un cumul de sortie de stock sur un tableau de 1000 articles. Donc j'aimerai le faire en formule ou en vba
J'ai donc essayé : Private Sub Worksheet_Change(ByVal Target As Excel.Range) If Not Intersect(Target, Range("A1")) Is Nothing Then [A2] = [A2] + [A1] End If End Sub
cette solution ne fonctionne pas si la cellule A1 est mise à jour par une formule. Le worksheet_change n'est pas appelé ... c'est justement mon cas !!!!
Laurent Longre propose la solution en 1998 !!!
| Une solution indépendante de la version d'Excel utilisée consisterait à | passer par une fonction macro XLM. Contrairement à VBA, les fonctions | XLM peuvent en effet récupérer le contenu de la cellule appelante: | | =ARGUMENT("Cellule_cumul";1) | =RETOUR(CELLULE.APPELANTE()+Cellule_cumul)
??? kesalo les macros XLM? comment les utilisées ??
Et la solution par itérations ne semble pas convenir!!! Au secours !!!
Merci d'avance.
j'utilise Xl2000
.
Bonsoir,
Et avec ceci, à adapter ?
Private Sub Worksheet_Calculate()
'peut fonctionner en l'absence de fonction volatile en a1
For i = 2 To 100
Cells(i, 1).Value = Cells(i, 1).Value + Cells(1, 1).Value
Next i
End Sub
--
Amicales Salutations
A_S_rauphil@wanadoo.fr
Retirer A_S_ pour répondre.
XL97 / XL2002
"gege" <gerarrd.louisjean@edf.spam> a écrit dans le message de
news:064501c367f0$f19d84b0$a001280a@phx.gbl...
Bonjour,
Merci pour ta réponse mais dans cette événement il n'y a
pas de ref à la cellule modifié (Target) donc je ne peux
utiliser le range pour plusieurs lignes de stock.
Dans l'exemple j'ai pris [A2] = [A2] + [A1] mais j'ai 1000
autre lignes à mettre à jour.
Merci
-----Message d'origine-----
Bonjour Gérard,
Peut être peux tu essayer d'utiliser le même code :
If Not Intersect(Target, Range("A1")) Is Nothing Then
[A2] = [A2] + [A1]
End If
avec l'évènement calculate de la feuille au lieu de
change ?
une macro xlm est une macro Excel 4, que tu peux insérer
dans ton classeur par clic droit sur un onglet
+ insertion...
--
Amicales Salutations
A_S_rauphil@wanadoo.fr
Retirer A_S_ pour répondre.
XL97 / XL2002
"gege" <gerard.louisjean@edf.spam> a écrit dans le
message de
news:0af001c367d0$26371b30$a401280a@phx.gbl...
Bonjour,
J'ai un petit problème à soumettre et avant de faire cela
j'ai testé les différentes solutions proposées dans ce
forum (par Google!) mais cela reste flou encore pour moi.
J'aimerai faire un cumul de sortie de stock sur un tableau
de 1000 articles.
Donc j'aimerai le faire en formule ou en vba
J'ai donc essayé :
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
If Not Intersect(Target, Range("A1")) Is Nothing Then
[A2] = [A2] + [A1]
End If
End Sub
cette solution ne fonctionne pas si la cellule A1 est mise
à jour par une formule. Le worksheet_change n'est pas
appelé ... c'est justement mon cas !!!!
Laurent Longre propose la solution en 1998 !!!
| Une solution indépendante de la version d'Excel utilisée
consisterait à
| passer par une fonction macro XLM. Contrairement à VBA,
les fonctions
| XLM peuvent en effet récupérer le contenu de la cellule
appelante:
|
| =ARGUMENT("Cellule_cumul";1)
| =RETOUR(CELLULE.APPELANTE()+Cellule_cumul)
??? kesalo les macros XLM? comment les utilisées ??
Et la solution par itérations ne semble pas convenir!!!
Au secours !!!
Private Sub Worksheet_Calculate() 'peut fonctionner en l'absence de fonction volatile en a1 For i = 2 To 100 Cells(i, 1).Value = Cells(i, 1).Value + Cells(1, 1).Value Next i End Sub -- Amicales Salutations
Retirer A_S_ pour répondre. XL97 / XL2002 "gege" a écrit dans le message de news:064501c367f0$f19d84b0$ Bonjour, Merci pour ta réponse mais dans cette événement il n'y a pas de ref à la cellule modifié (Target) donc je ne peux utiliser le range pour plusieurs lignes de stock. Dans l'exemple j'ai pris [A2] = [A2] + [A1] mais j'ai 1000 autre lignes à mettre à jour.
Merci
-----Message d'origine----- Bonjour Gérard, Peut être peux tu essayer d'utiliser le même code : If Not Intersect(Target, Range("A1")) Is Nothing Then [A2] = [A2] + [A1] End If avec l'évènement calculate de la feuille au lieu de change ?
une macro xlm est une macro Excel 4, que tu peux insérer dans ton classeur par clic droit sur un onglet
+ insertion... -- Amicales Salutations
Retirer A_S_ pour répondre. XL97 / XL2002 "gege" a écrit dans le message de
news:0af001c367d0$26371b30$ Bonjour, J'ai un petit problème à soumettre et avant de faire cela j'ai testé les différentes solutions proposées dans ce forum (par Google!) mais cela reste flou encore pour moi.
J'aimerai faire un cumul de sortie de stock sur un tableau de 1000 articles. Donc j'aimerai le faire en formule ou en vba
J'ai donc essayé : Private Sub Worksheet_Change(ByVal Target As Excel.Range) If Not Intersect(Target, Range("A1")) Is Nothing Then [A2] = [A2] + [A1] End If End Sub
cette solution ne fonctionne pas si la cellule A1 est mise à jour par une formule. Le worksheet_change n'est pas appelé ... c'est justement mon cas !!!!
Laurent Longre propose la solution en 1998 !!!
| Une solution indépendante de la version d'Excel utilisée consisterait à | passer par une fonction macro XLM. Contrairement à VBA, les fonctions | XLM peuvent en effet récupérer le contenu de la cellule appelante: | | =ARGUMENT("Cellule_cumul";1) | =RETOUR(CELLULE.APPELANTE()+Cellule_cumul)
??? kesalo les macros XLM? comment les utilisées ??
Et la solution par itérations ne semble pas convenir!!! Au secours !!!
Merci d'avance.
j'utilise Xl2000
.
gege
Merci pour le conseil, je le teste et je vois.
-----Message d'origine----- Bonsoir, Et avec ceci, à adapter ?
Private Sub Worksheet_Calculate() 'peut fonctionner en l'absence de fonction volatile en a1 For i = 2 To 100 Cells(i, 1).Value = Cells(i, 1).Value + Cells(1, 1).Value Next i End Sub -- Amicales Salutations
Retirer A_S_ pour répondre. XL97 / XL2002 "gege" a écrit dans le message de
news:064501c367f0$f19d84b0$ Bonjour, Merci pour ta réponse mais dans cette événement il n'y a pas de ref à la cellule modifié (Target) donc je ne peux utiliser le range pour plusieurs lignes de stock. Dans l'exemple j'ai pris [A2] = [A2] + [A1] mais j'ai 1000 autre lignes à mettre à jour.
Merci
-----Message d'origine----- Bonjour Gérard, Peut être peux tu essayer d'utiliser le même code : If Not Intersect(Target, Range("A1")) Is Nothing Then [A2] = [A2] + [A1] End If avec l'évènement calculate de la feuille au lieu de change ?
une macro xlm est une macro Excel 4, que tu peux insérer dans ton classeur par clic droit sur un onglet
+ insertion... -- Amicales Salutations
Retirer A_S_ pour répondre. XL97 / XL2002 "gege" a écrit dans le message de
news:0af001c367d0$26371b30$ Bonjour, J'ai un petit problème à soumettre et avant de faire cela j'ai testé les différentes solutions proposées dans ce forum (par Google!) mais cela reste flou encore pour moi.
J'aimerai faire un cumul de sortie de stock sur un tableau
de 1000 articles. Donc j'aimerai le faire en formule ou en vba
J'ai donc essayé : Private Sub Worksheet_Change(ByVal Target As Excel.Range) If Not Intersect(Target, Range("A1")) Is Nothing Then [A2] = [A2] + [A1] End If End Sub
cette solution ne fonctionne pas si la cellule A1 est mise
à jour par une formule. Le worksheet_change n'est pas appelé ... c'est justement mon cas !!!!
Laurent Longre propose la solution en 1998 !!!
| Une solution indépendante de la version d'Excel utilisée
consisterait à | passer par une fonction macro XLM. Contrairement à VBA, les fonctions | XLM peuvent en effet récupérer le contenu de la cellule appelante: | | =ARGUMENT("Cellule_cumul";1) | =RETOUR(CELLULE.APPELANTE()+Cellule_cumul)
??? kesalo les macros XLM? comment les utilisées ??
Et la solution par itérations ne semble pas convenir!!! Au secours !!!
Merci d'avance.
j'utilise Xl2000
.
.
Merci pour le conseil, je le teste et je vois.
-----Message d'origine-----
Bonsoir,
Et avec ceci, à adapter ?
Private Sub Worksheet_Calculate()
'peut fonctionner en l'absence de fonction volatile en a1
For i = 2 To 100
Cells(i, 1).Value = Cells(i, 1).Value + Cells(1, 1).Value
Next i
End Sub
--
Amicales Salutations
A_S_rauphil@wanadoo.fr
Retirer A_S_ pour répondre.
XL97 / XL2002
"gege" <gerarrd.louisjean@edf.spam> a écrit dans le
message de
news:064501c367f0$f19d84b0$a001280a@phx.gbl...
Bonjour,
Merci pour ta réponse mais dans cette événement il n'y a
pas de ref à la cellule modifié (Target) donc je ne peux
utiliser le range pour plusieurs lignes de stock.
Dans l'exemple j'ai pris [A2] = [A2] + [A1] mais j'ai 1000
autre lignes à mettre à jour.
Merci
-----Message d'origine-----
Bonjour Gérard,
Peut être peux tu essayer d'utiliser le même code :
If Not Intersect(Target, Range("A1")) Is Nothing Then
[A2] = [A2] + [A1]
End If
avec l'évènement calculate de la feuille au lieu de
change ?
une macro xlm est une macro Excel 4, que tu peux insérer
dans ton classeur par clic droit sur un onglet
+ insertion...
--
Amicales Salutations
A_S_rauphil@wanadoo.fr
Retirer A_S_ pour répondre.
XL97 / XL2002
"gege" <gerard.louisjean@edf.spam> a écrit dans le
message de
news:0af001c367d0$26371b30$a401280a@phx.gbl...
Bonjour,
J'ai un petit problème à soumettre et avant de faire cela
j'ai testé les différentes solutions proposées dans ce
forum (par Google!) mais cela reste flou encore pour moi.
J'aimerai faire un cumul de sortie de stock sur un
tableau
de 1000 articles.
Donc j'aimerai le faire en formule ou en vba
J'ai donc essayé :
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
If Not Intersect(Target, Range("A1")) Is Nothing Then
[A2] = [A2] + [A1]
End If
End Sub
cette solution ne fonctionne pas si la cellule A1 est
mise
à jour par une formule. Le worksheet_change n'est pas
appelé ... c'est justement mon cas !!!!
Laurent Longre propose la solution en 1998 !!!
| Une solution indépendante de la version d'Excel
utilisée
consisterait à
| passer par une fonction macro XLM. Contrairement à VBA,
les fonctions
| XLM peuvent en effet récupérer le contenu de la cellule
appelante:
|
| =ARGUMENT("Cellule_cumul";1)
| =RETOUR(CELLULE.APPELANTE()+Cellule_cumul)
??? kesalo les macros XLM? comment les utilisées ??
Et la solution par itérations ne semble pas convenir!!!
Au secours !!!
-----Message d'origine----- Bonsoir, Et avec ceci, à adapter ?
Private Sub Worksheet_Calculate() 'peut fonctionner en l'absence de fonction volatile en a1 For i = 2 To 100 Cells(i, 1).Value = Cells(i, 1).Value + Cells(1, 1).Value Next i End Sub -- Amicales Salutations
Retirer A_S_ pour répondre. XL97 / XL2002 "gege" a écrit dans le message de
news:064501c367f0$f19d84b0$ Bonjour, Merci pour ta réponse mais dans cette événement il n'y a pas de ref à la cellule modifié (Target) donc je ne peux utiliser le range pour plusieurs lignes de stock. Dans l'exemple j'ai pris [A2] = [A2] + [A1] mais j'ai 1000 autre lignes à mettre à jour.
Merci
-----Message d'origine----- Bonjour Gérard, Peut être peux tu essayer d'utiliser le même code : If Not Intersect(Target, Range("A1")) Is Nothing Then [A2] = [A2] + [A1] End If avec l'évènement calculate de la feuille au lieu de change ?
une macro xlm est une macro Excel 4, que tu peux insérer dans ton classeur par clic droit sur un onglet
+ insertion... -- Amicales Salutations
Retirer A_S_ pour répondre. XL97 / XL2002 "gege" a écrit dans le message de
news:0af001c367d0$26371b30$ Bonjour, J'ai un petit problème à soumettre et avant de faire cela j'ai testé les différentes solutions proposées dans ce forum (par Google!) mais cela reste flou encore pour moi.
J'aimerai faire un cumul de sortie de stock sur un tableau
de 1000 articles. Donc j'aimerai le faire en formule ou en vba
J'ai donc essayé : Private Sub Worksheet_Change(ByVal Target As Excel.Range) If Not Intersect(Target, Range("A1")) Is Nothing Then [A2] = [A2] + [A1] End If End Sub
cette solution ne fonctionne pas si la cellule A1 est mise
à jour par une formule. Le worksheet_change n'est pas appelé ... c'est justement mon cas !!!!
Laurent Longre propose la solution en 1998 !!!
| Une solution indépendante de la version d'Excel utilisée
consisterait à | passer par une fonction macro XLM. Contrairement à VBA, les fonctions | XLM peuvent en effet récupérer le contenu de la cellule appelante: | | =ARGUMENT("Cellule_cumul";1) | =RETOUR(CELLULE.APPELANTE()+Cellule_cumul)
??? kesalo les macros XLM? comment les utilisées ??
Et la solution par itérations ne semble pas convenir!!! Au secours !!!