La formule que tu m'as indiqué est parfaite.je souhaite par contre appliquer
cette formule pour differentes cellules sur un meme tableau.
lorsque j'applique cette formule visual basic sur une cellule elle
fonctionne tant que je m'interesse à cette cellule.Si je passe à un autre
produit donc ds une autre cellule, la précedente ne fonctionne plus si je
rajoute une quantité.
Y-a-t-il une opération à faire pour que la formule s'applique àtoutes les
cellules du tableau continuellement
Grand merci pour ta réponse
nicolas
Bonjour Nicolas
Ai je bien compris que tu voulais ça dans une seule cellule et non pas dans
toute la
colonne avec des formules ?
Dans ce cas, à copier dans le code de la feuille (clic droit sur le nom de
l'onglet,
visualiser le code...)
Private Sub Worksheet_Change(ByVal Target As Range)
' A chaque changement de A2, incrémente B3
If Not Intersect(Target, Range("A2")) Is Nothing Then
[B3] = [B3] + [A2]
End If
End Sub
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
Trirème
Bonsoir Nicolas
Tu aurais dû rester dans le même fil, j'ai failli ne pas voir ce message.
En t'adressant à quelqu'un en particulier tu risques qu'il soit parti en week-end :-) De plus tu "empêches" quelqu'un de plus balaise de répondre. La déontologie (non écrite mais respectée) voudrait que je finisse le sujet, mais il est possible de t'adresser à toute la communauté qui est plus balaise que moi. Je ne t'en tiendrai pas rigueur.
Je me demande si tu as vu la réponse que j'ai faite à celle du 26/09/2006 22:47.
Voici :
Bonsoir,
Concernant la macro que tu m'as concoctée lorsque je fais mon tableau avec plusieurs produits vendus que j'augmente chaque cumul d'une quantité la macro fonctionne que pour la dernière cellule où j'ai installé la macro. y-a-t'il un moyen pour enregistrer cette macro pour tout le tableau, pour chaque cellule. Essaie ceci :
Private Sub Worksheet_Change(ByVal Target As Range) ' A chaque changement d'une cellule de A1:A5, incrémente une cellule de B1:B5 Set ZoneActive = Intersect(Target, Range("A1:A5")) If Not ZoneActive Is Nothing Then ' évite les erreurs lorsqu'on efface plusieurs cellules en même temps For Each c In ZoneActive Cells(c.Row, 2) = Cells(c.Row, 2) + c Next End If End Sub
Je te laisse le soin de l'adapter si tu veux une autre plage que A1:A5, notamment avec plusieurs colonnes ou si tu veux décaler les lignes (A2 -> B3)
Cordialement -- Trirème
Maintenant, réponds sur ce fil.
Cordialement -- Trirème
Bonsoir Nicolas
Tu aurais dû rester dans le même fil, j'ai failli ne pas voir ce message.
En t'adressant à quelqu'un en particulier tu risques qu'il soit parti en week-end :-)
De plus tu "empêches" quelqu'un de plus balaise de répondre. La déontologie (non écrite
mais respectée) voudrait que je finisse le sujet, mais il est possible de t'adresser à
toute la communauté qui est plus balaise que moi. Je ne t'en tiendrai pas rigueur.
Je me demande si tu as vu la réponse que j'ai faite à celle du 26/09/2006 22:47.
Voici :
Bonsoir,
Concernant la macro que tu m'as concoctée lorsque je fais mon tableau
avec plusieurs produits vendus que j'augmente chaque cumul d'une
quantité la macro fonctionne que pour la dernière cellule où j'ai
installé la macro. y-a-t'il un moyen pour enregistrer cette macro pour
tout le tableau, pour chaque cellule.
Essaie ceci :
Private Sub Worksheet_Change(ByVal Target As Range)
' A chaque changement d'une cellule de A1:A5, incrémente une cellule de
B1:B5
Set ZoneActive = Intersect(Target, Range("A1:A5"))
If Not ZoneActive Is Nothing Then
' évite les erreurs lorsqu'on efface plusieurs cellules en même temps
For Each c In ZoneActive
Cells(c.Row, 2) = Cells(c.Row, 2) + c
Next
End If
End Sub
Je te laisse le soin de l'adapter si tu veux une autre plage que A1:A5,
notamment avec plusieurs colonnes ou si tu veux décaler les lignes (A2
-> B3)
Tu aurais dû rester dans le même fil, j'ai failli ne pas voir ce message.
En t'adressant à quelqu'un en particulier tu risques qu'il soit parti en week-end :-) De plus tu "empêches" quelqu'un de plus balaise de répondre. La déontologie (non écrite mais respectée) voudrait que je finisse le sujet, mais il est possible de t'adresser à toute la communauté qui est plus balaise que moi. Je ne t'en tiendrai pas rigueur.
Je me demande si tu as vu la réponse que j'ai faite à celle du 26/09/2006 22:47.
Voici :
Bonsoir,
Concernant la macro que tu m'as concoctée lorsque je fais mon tableau avec plusieurs produits vendus que j'augmente chaque cumul d'une quantité la macro fonctionne que pour la dernière cellule où j'ai installé la macro. y-a-t'il un moyen pour enregistrer cette macro pour tout le tableau, pour chaque cellule. Essaie ceci :
Private Sub Worksheet_Change(ByVal Target As Range) ' A chaque changement d'une cellule de A1:A5, incrémente une cellule de B1:B5 Set ZoneActive = Intersect(Target, Range("A1:A5")) If Not ZoneActive Is Nothing Then ' évite les erreurs lorsqu'on efface plusieurs cellules en même temps For Each c In ZoneActive Cells(c.Row, 2) = Cells(c.Row, 2) + c Next End If End Sub
Je te laisse le soin de l'adapter si tu veux une autre plage que A1:A5, notamment avec plusieurs colonnes ou si tu veux décaler les lignes (A2 -> B3)
Cordialement -- Trirème
Maintenant, réponds sur ce fil.
Cordialement -- Trirème
nicolas
c'est impecc,
merci à toi,pour toute cette formulation qui va me débloquer mon tableau . désolé pour l'envoi du message qui n'était pas ds les règles de l'art mais petit à petit je manipule les news
cordialement
Nicolas "Trirème" a écrit dans le message de news: OJq%
Bonsoir Nicolas
Tu aurais dû rester dans le même fil, j'ai failli ne pas voir ce message.
En t'adressant à quelqu'un en particulier tu risques qu'il soit parti en week-end :-) De plus tu "empêches" quelqu'un de plus balaise de répondre. La déontologie (non écrite mais respectée) voudrait que je finisse le sujet, mais il est possible de t'adresser à toute la communauté qui est plus balaise que moi. Je ne t'en tiendrai pas rigueur.
Je me demande si tu as vu la réponse que j'ai faite à celle du 26/09/2006 22:47.
Voici :
Bonsoir,
Concernant la macro que tu m'as concoctée lorsque je fais mon tableau avec plusieurs produits vendus que j'augmente chaque cumul d'une quantité la macro fonctionne que pour la dernière cellule où j'ai installé la macro. y-a-t'il un moyen pour enregistrer cette macro pour tout le tableau, pour chaque cellule. Essaie ceci :
Private Sub Worksheet_Change(ByVal Target As Range) ' A chaque changement d'une cellule de A1:A5, incrémente une cellule de B1:B5 Set ZoneActive = Intersect(Target, Range("A1:A5")) If Not ZoneActive Is Nothing Then ' évite les erreurs lorsqu'on efface plusieurs cellules en même temps For Each c In ZoneActive Cells(c.Row, 2) = Cells(c.Row, 2) + c Next End If End Sub
Je te laisse le soin de l'adapter si tu veux une autre plage que A1:A5, notamment avec plusieurs colonnes ou si tu veux décaler les lignes (A2 -> B3)
Cordialement -- Trirème
Maintenant, réponds sur ce fil.
Cordialement -- Trirème
c'est impecc,
merci à toi,pour toute cette formulation qui va me débloquer mon tableau .
désolé pour l'envoi du message qui n'était pas ds les règles de l'art mais
petit à petit je manipule les news
cordialement
Nicolas
"Trirème" <NoOne@EvryOuer.fr> a écrit dans le message de news:
OJq%23O6L5GHA.2144@TK2MSFTNGP04.phx.gbl...
Bonsoir Nicolas
Tu aurais dû rester dans le même fil, j'ai failli ne pas voir ce message.
En t'adressant à quelqu'un en particulier tu risques qu'il soit parti en
week-end :-)
De plus tu "empêches" quelqu'un de plus balaise de répondre. La
déontologie (non écrite mais respectée) voudrait que je finisse le sujet,
mais il est possible de t'adresser à toute la communauté qui est plus
balaise que moi. Je ne t'en tiendrai pas rigueur.
Je me demande si tu as vu la réponse que j'ai faite à celle du 26/09/2006
22:47.
Voici :
Bonsoir,
Concernant la macro que tu m'as concoctée lorsque je fais mon tableau
avec plusieurs produits vendus que j'augmente chaque cumul d'une
quantité la macro fonctionne que pour la dernière cellule où j'ai
installé la macro. y-a-t'il un moyen pour enregistrer cette macro pour
tout le tableau, pour chaque cellule.
Essaie ceci :
Private Sub Worksheet_Change(ByVal Target As Range)
' A chaque changement d'une cellule de A1:A5, incrémente une cellule de
B1:B5
Set ZoneActive = Intersect(Target, Range("A1:A5"))
If Not ZoneActive Is Nothing Then
' évite les erreurs lorsqu'on efface plusieurs cellules en même temps
For Each c In ZoneActive
Cells(c.Row, 2) = Cells(c.Row, 2) + c
Next
End If
End Sub
Je te laisse le soin de l'adapter si tu veux une autre plage que A1:A5,
notamment avec plusieurs colonnes ou si tu veux décaler les lignes
(A2 -> B3)
merci à toi,pour toute cette formulation qui va me débloquer mon tableau . désolé pour l'envoi du message qui n'était pas ds les règles de l'art mais petit à petit je manipule les news
cordialement
Nicolas "Trirème" a écrit dans le message de news: OJq%
Bonsoir Nicolas
Tu aurais dû rester dans le même fil, j'ai failli ne pas voir ce message.
En t'adressant à quelqu'un en particulier tu risques qu'il soit parti en week-end :-) De plus tu "empêches" quelqu'un de plus balaise de répondre. La déontologie (non écrite mais respectée) voudrait que je finisse le sujet, mais il est possible de t'adresser à toute la communauté qui est plus balaise que moi. Je ne t'en tiendrai pas rigueur.
Je me demande si tu as vu la réponse que j'ai faite à celle du 26/09/2006 22:47.
Voici :
Bonsoir,
Concernant la macro que tu m'as concoctée lorsque je fais mon tableau avec plusieurs produits vendus que j'augmente chaque cumul d'une quantité la macro fonctionne que pour la dernière cellule où j'ai installé la macro. y-a-t'il un moyen pour enregistrer cette macro pour tout le tableau, pour chaque cellule. Essaie ceci :
Private Sub Worksheet_Change(ByVal Target As Range) ' A chaque changement d'une cellule de A1:A5, incrémente une cellule de B1:B5 Set ZoneActive = Intersect(Target, Range("A1:A5")) If Not ZoneActive Is Nothing Then ' évite les erreurs lorsqu'on efface plusieurs cellules en même temps For Each c In ZoneActive Cells(c.Row, 2) = Cells(c.Row, 2) + c Next End If End Sub
Je te laisse le soin de l'adapter si tu veux une autre plage que A1:A5, notamment avec plusieurs colonnes ou si tu veux décaler les lignes (A2 -> B3)