Compteur de cellule modifiée

bazargones

XLDnaute Nouveau
Bonsoir,

J'ai une nouvelle problématique..

Je souhaiterais créer un compteur sur modification d'une cellule.

Cas d'utilisation :

J'ai des valeurs dans la colonne B.

Le compteur commencerait initialement à 0. Si une valeur est ajoutée dans une cellule de la colonne A, la cellule de la colonne C sur la même ligne s'incrémente de 1. (la valeur de la colonne A n'est plus amenée à être modifiée par la suite..).

Ensuite, à chaque modification d'une cellule située sur la même ligne dans la colonne B, la cellule de la même ligne de la colonne C s'incrémente de 1.

Exemple :

- Situtation initiale :

A | B | C |

- Etape 1 :

A | B | C |
valeur 1

- Etape 2 :

A | B | C |
valeur valeur1 2

- Etape 3 :

A | B | C |
valeur valeur2 3


- Etape 4 :

A | B | C |
valeur valeur3 4


etc.. etc...

Pensez-vous que cela soit réalisable ? Si oui, avez-vous un exemple de réalisation ?

Je vous remercie grandement par avance..

Bazargones
 

Staple1600

XLDnaute Barbatruc
Re : Compteur de cellule modifiée

Bonjour à tous_________________EDITION: Bonjour mapomme

Bazargones
Si j'ai bien compris la question essayes cette formule en colonne C (à recopier vers le bas)
=NB.SI(B$1:B1;B1)
01nbsi.png
 
Dernière édition:

mapomme

XLDnaute Barbatruc
Supporter XLD
Re : Compteur de cellule modifiée

Bonjour bazargones, Staple1600,

Avec ce que j'en avais compris... Avec du code VBA.

Saisir des valeurs en colonne A ou B => la colonne C s'incrémente. Il ne se passe rien si la nouvelle valeur est égale à l'ancienne ou bien si on modifie pour une valeur vide.

Ceci n'est valable que pour les modifications directes ( à la main ou par copier-coller). Ca ne marche pas avec des modifications faites par macro.
 

Pièces jointes

  • bazargones-Compteur de cellule modifiée v1.xlsm
    13.1 KB · Affichages: 43
Dernière édition:

bazargones

XLDnaute Nouveau
Re : Compteur de cellule modifiée

Bonjour Staple1600 et mapomme,

La solution qui se rapproche le plus de mon problème est celle de mapomme !

Je teste cela le plus rapidement possible et reviens vers vous..

Encore merci

A très vite

Bazargones
 

bazargones

XLDnaute Nouveau
Re : Compteur de cellule modifiée

Re bonjour @mapomme,

Tout d'abord merci encore pour ton très bon travail, cela correspond tout à fait à mon besoin...

J'ai deux questions :

1. Dans les cellules de la colonne A, la valeur renseignée n'étant par la suite plus modifiable, est-il possible de demander confirmation à l'utilisateur suite à sa saisie initiale ? Si il répond oui, la valeur est ajoutée, si il répond non la valeur n'est pas ajoutée et le compteur ne s'incrémente pas..

2. Pourquoi je ne peux pas supprimer une ligne du classeur ? J'aimerais pouvoir le faire si besoin..

Je pensais qu'il suffisait simplement de supprimer cette partie :

If Target.Count <> 1 Then
MsgBox "Tentative de modification de plus d'une cellule" & vbLf & vbLf & "==> Cas interdit !"
Application.Undo: Application.EnableEvents = True: Exit Sub
End If

mais cela ne fonctionne pas..

Je te remercie encore..

Bazargones
 

mapomme

XLDnaute Barbatruc
Supporter XLD
Re : Compteur de cellule modifiée

Bonsoir bazargones,

(...) 1. Dans les cellules de la colonne A, la valeur renseignée n'étant par la suite plus modifiable, est-il possible de demander confirmation à l'utilisateur suite à sa saisie initiale ? Si il répond oui, la valeur est ajoutée, si il répond non la valeur n'est pas ajoutée et le compteur ne s'incrémente pas..

2. Pourquoi je ne peux pas supprimer une ligne du classeur ? J'aimerais pouvoir le faire si besoin (...)

Voir fichier v2. Pour supprimer une ligne, sélectionner la ligne du tableau (An:Cn) puis appuyer sur Suppr.
 

Pièces jointes

  • bazargones-Compteur de cellule modifiée v2.xlsm
    18 KB · Affichages: 37

bazargones

XLDnaute Nouveau
Re : Compteur de cellule modifiée

Bonjour,

Merci beaucoup mapomme pour cette nouvelle solution ! Il correspond une nouvelle fois exactement à ma demande..!

J'ai encore deux petites questions..

Nous avons réfléchi avec mon collègue sur le côté pratique dans l'utilisation de ce fichier.

1. Dans mon message initial, je te disais que :

"Le compteur commencerait initialement à 0. Si une valeur est ajoutée dans une cellule de la colonne A, la cellule de la colonne C sur la même ligne s'incrémente de 1. (la valeur de la colonne A n'est plus amenée à être modifiée par la suite..)."

En fait, je souhaiterais que l'on renseigne manuellement la colonne A et la colonne B initialement. Le compteur s'incrémenterait suite à l'ajout d'une valeur initiale dans la colonne B. Par la suite, si on modifie la valeur de la colonne A, cela réinitialise les cases des 3 colonnes après demande de validation et on repart sur un nouveau cycle..

Est-ce réalisable ?

2. Concernant la possibilité de supprimer une ligne du tableau, tu me dis de sélectionner une ligne de An:Cn et d'appuyer sur "Suppr". Nous aurions souhaiter pouvoir complètement supprimer une ligne et pas seulement son contenu.

Pour cela, dans le code initial, j'avais enlevé la "Application:undo" pour permettre la suppression totale de la ligne dans la partie de code

If Target.Count <> 1 Then
MsgBox "Tentative de modification de plus d'une cellule" & vbLf & vbLf & "==> Cas interdit !"
Application.Undo: Application.EnableEvents = True: Exit Sub
End If

Est-ce une mauvaise pratique ?

Je te remercie encore pour ton investissement..

Bazargones
 

bazargones

XLDnaute Nouveau
Re : Compteur de cellule modifiée

REbonjour @mapomme,

Une dernière petite question :

Sur mon fichier finale, la plage de cellule concernée est v2:x

Je pensais qu'en modifiant la ligne suivante : Set xrg = Intersect(Target, Range("a2:c" & Rows.Count))

remplacer "a2:c" par "v2:x" il n'y aurait pas de souci particulier mais cela ne fonctionne pas.. Est ce que tu saurais pourquoi ?

Je te remercie pour cette aide précieuse..

Bonne fin de journée !

Bazargones
 

Discussions similaires

Réponses
6
Affichages
191

Statistiques des forums

Discussions
312 378
Messages
2 087 760
Membres
103 660
dernier inscrit
205 Peugeot