Détermination d'une formule excel
Résolu
IBA42
Messages postés
18
Date d'inscription
Statut
Membre
Dernière intervention
-
ccm81 Messages postés 10909 Date d'inscription Statut Membre Dernière intervention -
ccm81 Messages postés 10909 Date d'inscription Statut Membre Dernière intervention -
Bonsoir à toutes et à tous
Pouvez-vous m’aidez s’il vous plaît à trouver une solution à mon problème. J’ai deux cellules A1 et B1(en couleur bleue)
Pour la première fois A1 doit être égale à B1
Deuxième saisie dans les même cellules bleue en remplaçant la première valeur de A1 par une autre valeur, que je puisse obtenir en B1, l’ancienne valeur de B1+la nouvelle valeur de A1 et ainsi de suite.

Voici un exemple
Pouvez-vous m’aidez s’il vous plaît à trouver une solution à mon problème. J’ai deux cellules A1 et B1(en couleur bleue)
Pour la première fois A1 doit être égale à B1
Deuxième saisie dans les même cellules bleue en remplaçant la première valeur de A1 par une autre valeur, que je puisse obtenir en B1, l’ancienne valeur de B1+la nouvelle valeur de A1 et ainsi de suite.

Voici un exemple
A voir également:
- Détermination d'une formule excel
- Formule si et excel - Guide
- Formule moyenne excel plusieurs colonnes - Guide
- Formule somme excel colonne - Guide
- Excel mise en forme conditionnelle formule - Guide
- Liste déroulante excel - Guide
6 réponses
Bonjour,
Par rapport à la question initiale
Allez dans les options Excel:
-sélectionnez "Formules"
-Dans le premier paragraphe: "Mode de calcul": cochez la case "Activer le calcul itératif" et mettre la valeur 1 a la place de 100. -fermez avec Ok
-Sur la feuille Excel en B1 écrivez la formule: = B1 + A1
-Saisissez les valeurs en A1 et observez B1
Cdlt
Par rapport à la question initiale
Allez dans les options Excel:
-sélectionnez "Formules"
-Dans le premier paragraphe: "Mode de calcul": cochez la case "Activer le calcul itératif" et mettre la valeur 1 a la place de 100. -fermez avec Ok
-Sur la feuille Excel en B1 écrivez la formule: = B1 + A1
-Saisissez les valeurs en A1 et observez B1
Cdlt
Bonjour.
Ce n'est pas le fonctionnement normal d'Excel (ou de tout autre tableur) :
Une même cellule ne peut contenir à la fois une formule et une donnée.
Pour obtenir ce que tu demandes, il faut faire un peu de programmation en VBA et écrire une macro.
Je te suggère une autre approche :
Tes données successives, au lieu de les taper chaque fois dans la cellule B1, tu les saisis au fur et à mesure dans la ligne 3, et tu en fais la somme en B1.
Ce n'est pas le fonctionnement normal d'Excel (ou de tout autre tableur) :
Une même cellule ne peut contenir à la fois une formule et une donnée.
Pour obtenir ce que tu demandes, il faut faire un peu de programmation en VBA et écrire une macro.
Je te suggère une autre approche :
Tes données successives, au lieu de les taper chaque fois dans la cellule B1, tu les saisis au fur et à mesure dans la ligne 3, et tu en fais la somme en B1.
Voici ce que je cherche à faire, à chaque versement que cette somme soit ajouté au versement total de façon automatique.
Si possible insérer une autre colonne en indiquant le nombre de versement total effectué par achat.
Je ne sais pas comment envoyer le doc excel raison pour laquelle je fais l'envoi en image.
Si possible insérer une autre colonne en indiquant le nombre de versement total effectué par achat.

Je ne sais pas comment envoyer le doc excel raison pour laquelle je fais l'envoi en image.
Bonjour,
La formule marche très bien ,Frenchie83 et Raymond PENTIER merci infiniment j'étais là dessus plus d'une semaine sans rien trouver.merci, merci pour cet assistance.
La formule marche très bien ,Frenchie83 et Raymond PENTIER merci infiniment j'étais là dessus plus d'une semaine sans rien trouver.merci, merci pour cet assistance.
Bonjour à tous
il va peut être y avoir un problème avec le mode de calcul itératif > à chaque changement dans la feuille, B1 sera mis à jour (du moins c'est ce qui se passe avec mon antique excel 2003)
La solution dans ce cas passe par une macro
https://www.cjoint.com/c/HHAgDaHKamB
Cdlmnt
.
il va peut être y avoir un problème avec le mode de calcul itératif > à chaque changement dans la feuille, B1 sera mis à jour (du moins c'est ce qui se passe avec mon antique excel 2003)
La solution dans ce cas passe par une macro
https://www.cjoint.com/c/HHAgDaHKamB
Cdlmnt
.
Bonjour ccm81,
Effectivement je n'avais pas vérifié cela.
Une façon pour contourner le problème autre que la solution par macro serait de remettre à zéro la cellule A1 après la dernière valeur saisie, dans ce cas là, ça fonctionnerait bien. Mais serait-ce compatible avec ce que veut faire IBA42?
Cdlt
Effectivement je n'avais pas vérifié cela.
Une façon pour contourner le problème autre que la solution par macro serait de remettre à zéro la cellule A1 après la dernière valeur saisie, dans ce cas là, ça fonctionnerait bien. Mais serait-ce compatible avec ce que veut faire IBA42?
Cdlt
Pour l'appliquer à une colonne puis-je faire ceci?
Const celA = "A1:A100"
Const celB = "B1:B100"
Option Explicit
Const celA = "A1"
Const celB = "B1"
Dim b
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Count > 1 Then Exit Sub
If Not Intersect(Target, Range(celA)) Is Nothing Then
Range(celB).Value = Range(celA).Value + b
End If
End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Intersect(Target, Range(celA)) Is Nothing Then
b = Range(celB).Value
End If
End Sub
Const celA = "A1:A100"
Const celB = "B1:B100"
Option Explicit
Const celA = "A1"
Const celB = "B1"
Dim b
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Count > 1 Then Exit Sub
If Not Intersect(Target, Range(celA)) Is Nothing Then
Range(celB).Value = Range(celA).Value + b
End If
End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Intersect(Target, Range(celA)) Is Nothing Then
b = Range(celB).Value
End If
End Sub
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Pas tout à fait
Cdlmnt
Option Explicit Const colA = "A" Const colB = "B" Dim b Private Sub Worksheet_Change(ByVal Target As Range) Dim li As Long If Target.Count > 1 Then Exit Sub Application.EnableEvents = False If Not Intersect(Target, Columns(colA)) Is Nothing Then li = Target.Row Range(colB & li).Value = Range(colA & li).Value + b ' et si tu veux vider la cellule ' en colA tu enlèves l'apostrophe à la ligne suivante ' Range(colA & li).Value = "" End If Application.EnableEvents = True End Sub Private Sub Worksheet_SelectionChange(ByVal Target As Range) Dim li As Long If Target Is Nothing Then Exit Sub If Not Intersect(Target, Columns(colA)) Is Nothing Then li = Target.Row b = Range(colB & li).Value End If End Sub
Cdlmnt