Feuilles présence : remplir case en cliquant
Résolu/Fermé
kathekat33
Messages postés
15
Date d'inscription
dimanche 16 septembre 2018
Statut
Membre
Dernière intervention
8 octobre 2018
-
16 sept. 2018 à 12:53
kathekat33 Messages postés 15 Date d'inscription dimanche 16 septembre 2018 Statut Membre Dernière intervention 8 octobre 2018 - 19 sept. 2018 à 12:32
kathekat33 Messages postés 15 Date d'inscription dimanche 16 septembre 2018 Statut Membre Dernière intervention 8 octobre 2018 - 19 sept. 2018 à 12:32
A voir également:
- Feuilles présence : remplir case en cliquant
- Comment faire un livret avec des feuilles a4 - Guide
- Fusionner feuilles excel - Guide
- Checking media presence start pxe over ipv4 - Forum Windows 10
- Presence en ligne instagram - Guide
- Il se peut que vous soyez en présence d'un logiciel contrefait ✓ - Forum Windows 7
6 réponses
yg_be
Messages postés
23417
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
5 janvier 2025
Ambassadeur
1 557
Modifié le 16 sept. 2018 à 13:30
Modifié le 16 sept. 2018 à 13:30
bonjour, il est probablement assez simple de réaliser cela en VBA.
pourrais-tu partager ton fichier (avec des données bidon)? ce serait probablement plus simple de t'expliquer sur un cas concret. sinon, je pourrais-te donner un exemple, à toi de l'adapter à ton fichier.
que devrait-il se passer si le 1 est déjà présent: rien, le supprimer, le remplacer par un 0 ?
pourrais-tu partager ton fichier (avec des données bidon)? ce serait probablement plus simple de t'expliquer sur un cas concret. sinon, je pourrais-te donner un exemple, à toi de l'adapter à ton fichier.
que devrait-il se passer si le 1 est déjà présent: rien, le supprimer, le remplacer par un 0 ?
titeufdu89
Messages postés
374
Date d'inscription
samedi 28 juillet 2012
Statut
Membre
Dernière intervention
1 avril 2023
38
16 sept. 2018 à 22:06
16 sept. 2018 à 22:06
Pour appliquer cette formule a d'autres feuille tu copies et colles le code dans l'interface VBA des feuilles en question. Comme tu as fait pour la première feuille, le code reste identique si tes feuilles sont identiques.
Il n'est pas possible de lancer une macro sur un seul clic, et une chance... imagine toi, tu ne pourrais plus sélectionner une cellule sans un changer la valeur, ce serait extrêmement problématique... :-s
Il n'est pas possible de lancer une macro sur un seul clic, et une chance... imagine toi, tu ne pourrais plus sélectionner une cellule sans un changer la valeur, ce serait extrêmement problématique... :-s
yg_be
Messages postés
23417
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
5 janvier 2025
1 557
16 sept. 2018 à 22:27
16 sept. 2018 à 22:27
pour faire la même chose en un clic plutôt qu'en deux:
remplacer
par
remplacer
Worksheet_BeforeDoubleClick
par
Worksheet_SelectionChange
kathekat33
Messages postés
15
Date d'inscription
dimanche 16 septembre 2018
Statut
Membre
Dernière intervention
8 octobre 2018
>
yg_be
Messages postés
23417
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
5 janvier 2025
16 sept. 2018 à 22:47
16 sept. 2018 à 22:47
Merci, je garde précieusement le code, il me servira bientôt.
titeufdu89
Messages postés
374
Date d'inscription
samedi 28 juillet 2012
Statut
Membre
Dernière intervention
1 avril 2023
38
16 sept. 2018 à 20:41
16 sept. 2018 à 20:41
Bonjour,
Voici une code vba qui après double clic ajoutera un 1 dans la cellule concernée dès lors que le clic est effectué dans la colonne programmée dans le code (permet d'éviter qu'un double clic malencontreux ne modifie la valeur de tes autres cellules en 1).
Pour commencer, enregistre-sous ton document au format XLSM (prenant en charge les macros)
Si tu ne maitrises pas le VBA il faut d'abord afficher l'onglet "développeur" dans ton Excel, pour ce faire suis la procédure ci-dessous :
Cliquez sur l'onglet Fichier.
Cliquez sur Options.
Cliquez sur Personnaliser le ruban.
Sous Personnaliser le ruban et Onglets principaux, activez la case à cocher Développeur.
Une fois l'onglet Developpeur affiché, clique dans ce même onglet sur "Visual Basic".
Dans la fenêtre qui s'ouvre dans la fenêtre "Projet - VBA Project" (a gauche de ton écran) double clique sur la nom de la feuille concernée et colle le code ci-dessous dans la fenêtre qui se sera ouverte (cf image ci-contre) puis remplace le 2 du code actuel par le numéro de la colonne dans laquelle tu souhaites que les 1 s'ajoutent.
Voici le code à coller :
Ferme l'interface VBA, enregistre ton fichier et pour tester la macro, sur la feuille de ton classeur en question, double-clic sur une cellule de la colonne programmée. Un 1 devrait alors s'afficher.
J'espère que mes explications auront été assez claires
Bonne journée
Jc
Voici une code vba qui après double clic ajoutera un 1 dans la cellule concernée dès lors que le clic est effectué dans la colonne programmée dans le code (permet d'éviter qu'un double clic malencontreux ne modifie la valeur de tes autres cellules en 1).
Pour commencer, enregistre-sous ton document au format XLSM (prenant en charge les macros)
Si tu ne maitrises pas le VBA il faut d'abord afficher l'onglet "développeur" dans ton Excel, pour ce faire suis la procédure ci-dessous :
Cliquez sur l'onglet Fichier.
Cliquez sur Options.
Cliquez sur Personnaliser le ruban.
Sous Personnaliser le ruban et Onglets principaux, activez la case à cocher Développeur.
Une fois l'onglet Developpeur affiché, clique dans ce même onglet sur "Visual Basic".
Dans la fenêtre qui s'ouvre dans la fenêtre "Projet - VBA Project" (a gauche de ton écran) double clique sur la nom de la feuille concernée et colle le code ci-dessous dans la fenêtre qui se sera ouverte (cf image ci-contre) puis remplace le 2 du code actuel par le numéro de la colonne dans laquelle tu souhaites que les 1 s'ajoutent.
Voici le code à coller :
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) Cancel = True If Target.Column = 2 Then '<< remplace le 2 par le numéro de colonne où tu souhaites ajouter les 1 (ex: si il s'agit de la colonne C saisir 3) Target.Cells.Value = 1 End If End Sub
Ferme l'interface VBA, enregistre ton fichier et pour tester la macro, sur la feuille de ton classeur en question, double-clic sur une cellule de la colonne programmée. Un 1 devrait alors s'afficher.
J'espère que mes explications auront été assez claires
Bonne journée
Jc
kathekat33
Messages postés
15
Date d'inscription
dimanche 16 septembre 2018
Statut
Membre
Dernière intervention
8 octobre 2018
16 sept. 2018 à 21:03
16 sept. 2018 à 21:03
super Titeufdu89. çà marche ! Je vais abuser encore un peu en demandant comment je peux appliquer la macro à un groupe de colonnes ( les 31 jours du mois).
titeufdu89
Messages postés
374
Date d'inscription
samedi 28 juillet 2012
Statut
Membre
Dernière intervention
1 avril 2023
38
16 sept. 2018 à 21:19
16 sept. 2018 à 21:19
Si tes colonnes sont contigues tu peux remplacer :
If Target.Column = 2 Then
par
If Target.Column >= x and target.column <= y Then
en remplaçant "x" par le numéro de colonne du 1er jour du mois et "y" par le numéro de colonne du 31
En revanche si elles ne sont pas contigues, utilise le code suivant :
Bonne soirée
Jc
If Target.Column = 2 Then
par
If Target.Column >= x and target.column <= y Then
en remplaçant "x" par le numéro de colonne du 1er jour du mois et "y" par le numéro de colonne du 31
En revanche si elles ne sont pas contigues, utilise le code suivant :
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) Cancel = True Select Case Target.Column Case 2, 4, 6, 8 '< liste les coordonnées de colonnes concernées Target.Cells.Value = 1 End Select End Sub
Bonne soirée
Jc
kathekat33
Messages postés
15
Date d'inscription
dimanche 16 septembre 2018
Statut
Membre
Dernière intervention
8 octobre 2018
17 sept. 2018 à 20:58
17 sept. 2018 à 20:58
Bonsoir,
Ta macro marche super bien; J'ai tout mis en route, l' année va être super. J'ai essayé de la transposer dans un autre classeur en essayant d' écrire un X au doubleclick mais çà ne marche pas, alors que çà fonctionne avec n'importe quel chiffre ...
Ta macro marche super bien; J'ai tout mis en route, l' année va être super. J'ai essayé de la transposer dans un autre classeur en essayant d' écrire un X au doubleclick mais çà ne marche pas, alors que çà fonctionne avec n'importe quel chiffre ...
yg_be
Messages postés
23417
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
5 janvier 2025
1 557
>
kathekat33
Messages postés
15
Date d'inscription
dimanche 16 septembre 2018
Statut
Membre
Dernière intervention
8 octobre 2018
17 sept. 2018 à 21:28
17 sept. 2018 à 21:28
tu n'as pas expliqué comment tu avais fait pour le X: ainsi:
mets aussi "option explicit" en début de module.
Target.Cells.Value = "X"?
mets aussi "option explicit" en début de module.
kathekat33
Messages postés
15
Date d'inscription
dimanche 16 septembre 2018
Statut
Membre
Dernière intervention
8 octobre 2018
>
yg_be
Messages postés
23417
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
5 janvier 2025
17 sept. 2018 à 23:20
17 sept. 2018 à 23:20
Bonsoir,
j'ai fait : Target.Cells.Value = X. Mais je n'ai pas mis de guillemets autour du X. C'est là le problème ?
j'ai fait : Target.Cells.Value = X. Mais je n'ai pas mis de guillemets autour du X. C'est là le problème ?
yg_be
Messages postés
23417
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
5 janvier 2025
1 557
>
kathekat33
Messages postés
15
Date d'inscription
dimanche 16 septembre 2018
Statut
Membre
Dernière intervention
8 octobre 2018
18 sept. 2018 à 09:23
18 sept. 2018 à 09:23
en effet. si tu avais ajouté "option explicit" en début de module, tu aurais eu un avertissement à ce sujet.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
kathekat33
Messages postés
15
Date d'inscription
dimanche 16 septembre 2018
Statut
Membre
Dernière intervention
8 octobre 2018
16 sept. 2018 à 21:54
16 sept. 2018 à 21:54
Merci Titeufdu89, c'est tout à fait ce que je voulais. Pour l' avenir, je voudrais savoir comment appliquer cette macro à plusieurs feuilles ( identiques) de mon classeur; Et pour ma culture perso, quelle est la commande pour le même type d' action avec un simple cli de la souris ?
kathekat33
Messages postés
15
Date d'inscription
dimanche 16 septembre 2018
Statut
Membre
Dernière intervention
8 octobre 2018
16 sept. 2018 à 22:09
16 sept. 2018 à 22:09
Merci pour tout, je sais ce que je voulais savoir, je suis en train de faire tout çà, ce sera un sacré gain de temps pour moi !
16 sept. 2018 à 20:30
16 sept. 2018 à 20:44