Remplir une cellule automatiquement
Résolu/Fermé
Xuli
Messages postés
14
Date d'inscription
mardi 2 octobre 2012
Statut
Membre
Dernière intervention
11 décembre 2013
-
2 oct. 2012 à 16:25
Xuli Messages postés 14 Date d'inscription mardi 2 octobre 2012 Statut Membre Dernière intervention 11 décembre 2013 - 3 oct. 2012 à 10:08
Xuli Messages postés 14 Date d'inscription mardi 2 octobre 2012 Statut Membre Dernière intervention 11 décembre 2013 - 3 oct. 2012 à 10:08
A voir également:
- Remplir une cellule automatiquement
- Organigramme a remplir word - Guide
- Aller à la ligne dans une cellule excel - Guide
- Excel cellule couleur si condition texte - Guide
- Remplir et signer pdf - Guide
- Excel remplir automatiquement une cellule en fonction d'une autre ✓ - Forum Excel
4 réponses
eriiic
Messages postés
24600
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
21 octobre 2024
7 239
Modifié par eriiic le 2/10/2012 à 18:10
Modifié par eriiic le 2/10/2012 à 18:10
Bonjour,
en vba:
Fichier exemple : https://www.cjoint.com/?BJcsgcXEqtI
Clic-droit sur le nom d'onglet et 'visualiser le code...' pour y accéder.
Attention, je ne modifie pas l'année pour le 01/01/2012 par exemple.
La date est bien en 2012, mais c'est semaine 52... de 2011.
Précise si tu préfères.
eric
Jamais tu ne répondras à un mp non sollicité...
Bon, ça c'est fait.
en vba:
Private Sub Worksheet_Change(ByVal Target As Range) If Target.Column <> 1 Or Target.Row = 1 Then Exit Sub Target.Offset(0, 1) = Year(Target) Target.Offset(0, 2) = Month(Target) Target.Offset(0, 3) = DatePart("ww", Target, vbMonday, vbFirstFourDays) End Sub
Fichier exemple : https://www.cjoint.com/?BJcsgcXEqtI
Clic-droit sur le nom d'onglet et 'visualiser le code...' pour y accéder.
Attention, je ne modifie pas l'année pour le 01/01/2012 par exemple.
La date est bien en 2012, mais c'est semaine 52... de 2011.
Précise si tu préfères.
eric
Jamais tu ne répondras à un mp non sollicité...
Bon, ça c'est fait.
Yakuru
Messages postés
78
Date d'inscription
lundi 1 octobre 2012
Statut
Membre
Dernière intervention
4 octobre 2012
24
2 oct. 2012 à 16:30
2 oct. 2012 à 16:30
Salut,
Si j'ai bien compris, tu veux qu'en rentrant la date en cellule B, les cellules C, D et E se remplisse automatiquement ?
Comme tu connais déjà les fonctions ANNEE, MOIS et JOUR, pourquoi ne les utilises-tu pas ? Il te suffit de le faire pour la première ligne de ton classeur Excel, puis d'étirer la formule jusqu'à ta dernière ligne.
Si j'ai bien compris, tu veux qu'en rentrant la date en cellule B, les cellules C, D et E se remplisse automatiquement ?
Comme tu connais déjà les fonctions ANNEE, MOIS et JOUR, pourquoi ne les utilises-tu pas ? Il te suffit de le faire pour la première ligne de ton classeur Excel, puis d'étirer la formule jusqu'à ta dernière ligne.
Xuli
Messages postés
14
Date d'inscription
mardi 2 octobre 2012
Statut
Membre
Dernière intervention
11 décembre 2013
2 oct. 2012 à 16:36
2 oct. 2012 à 16:36
Merci pour ta réponse,
Ce fichier se remplit tous les jours, je peux effectivement étirer les formules chaque jour, mais je me demandais s'il existait une formule qui remplisse la cellule automatiquement, sans avoir besoin de rien faire :)
Ce fichier se remplit tous les jours, je peux effectivement étirer les formules chaque jour, mais je me demandais s'il existait une formule qui remplisse la cellule automatiquement, sans avoir besoin de rien faire :)
Yakuru
Messages postés
78
Date d'inscription
lundi 1 octobre 2012
Statut
Membre
Dernière intervention
4 octobre 2012
24
2 oct. 2012 à 16:41
2 oct. 2012 à 16:41
Si tu étires sur ton fichier les cellules sur plusieurs dizaines (ou centaines) de lignes, c'est gênant pour toi ? Comme ça, tes formules sont déjà prêtes pour les futurs jours.
Je ne connais pas de formule permettant de faire ça automatiquement, ou alors via macro écrite en VBA, mais de même, il faudra que tu l'exécutes chaque jour.
Je ne connais pas de formule permettant de faire ça automatiquement, ou alors via macro écrite en VBA, mais de même, il faudra que tu l'exécutes chaque jour.
Xuli
Messages postés
14
Date d'inscription
mardi 2 octobre 2012
Statut
Membre
Dernière intervention
11 décembre 2013
2 oct. 2012 à 16:45
2 oct. 2012 à 16:45
Je pense que je vais faire ça comme ça alors s'il n'y a pas d'autre possibilité, ça ira quand même :)
Merci !
Merci !
Xuli
Messages postés
14
Date d'inscription
mardi 2 octobre 2012
Statut
Membre
Dernière intervention
11 décembre 2013
3 oct. 2012 à 09:42
3 oct. 2012 à 09:42
Merci beaucoup c'est exactement ça !
Est-ce que vous pouvez me préciser, si je viens à modifier mes colonnes, comment modifier ce code : exemple : Année, mois, semaine en A, B, C et date de publication en colonne I > la colonne de référence est déplacée.
Je suis en pleine refonte de ce fichier et je pense qu'à l'avenir il sera présenté comme ça,
Merci encore pour votre réponse
Est-ce que vous pouvez me préciser, si je viens à modifier mes colonnes, comment modifier ce code : exemple : Année, mois, semaine en A, B, C et date de publication en colonne I > la colonne de référence est déplacée.
Je suis en pleine refonte de ce fichier et je pense qu'à l'avenir il sera présenté comme ça,
Merci encore pour votre réponse
eriiic
Messages postés
24600
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
21 octobre 2024
7 239
3 oct. 2012 à 09:57
3 oct. 2012 à 09:57
Bonjour,
La cellule modifiée est appelée Target dans l'évènement change.
If Target.Column <> 1 si la colonne est différente de 1 (A) on sort
Target.Offset(0, 1) cellule à un offset de : 0 ligne et 1 colonne à droite de target.
L'offset peut-être négatif => colonnes à gauche
Si A devient I et B devient A :
If Target.Column <> 9 .... exit sub
Target.Offset(0, -8) = Year(Target)
eric
La cellule modifiée est appelée Target dans l'évènement change.
If Target.Column <> 1 si la colonne est différente de 1 (A) on sort
Target.Offset(0, 1) cellule à un offset de : 0 ligne et 1 colonne à droite de target.
L'offset peut-être négatif => colonnes à gauche
Si A devient I et B devient A :
If Target.Column <> 9 .... exit sub
Target.Offset(0, -8) = Year(Target)
eric
Xuli
Messages postés
14
Date d'inscription
mardi 2 octobre 2012
Statut
Membre
Dernière intervention
11 décembre 2013
3 oct. 2012 à 10:08
3 oct. 2012 à 10:08
Merci beaucoup, votre réponse m'a vraiment aidé ! :-)