Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

decalage de colonne en fonction de la date

  • Initiateur de la discussion Initiateur de la discussion bzh76
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

B

bzh76

Guest
bonjour à tous,

je rencontre un petit problème , j ai un tableau , donc la première ligne correspond à chaque jour du mois ( donc de 1 à 31).
la première colonne , elle , correspond à une liste de noms.

tous les jours , je fais une liste ( colonne "Tournée") .
ce que je souhaite faire , c'est que , quand ma liste de Tournée est effectuée , cette liste est comparée avec la liste de nom du tableau et , quand les noms de la liste de Tournée sont présents dans la liste de noms , alors une croix se met dans la case.....là ou je plante , c est lorsque je veux que les croix se mettent dans la colonne correspondant au jour de la cellule "B35".....
bref , un exemple vaut mieux q'un long discours alors je joint un ficher...🙂

j arrive à faire les croix dans la première colonne mais ensuite je bloque , je suis sur que ce n est pas méchant mais là .....c'est moi qui bug !!🙂
 

Pièces jointes

Dernière modification par un modérateur:
Re : decalage de colonne en fonction de la date

Bonjour Bzh,

en F3 :
Code:
=SI(ET(OU( EXACT($E3;$C$3:$C$31));F$2=$B$35);"x";" ")

à recopier en bas et à droite

Je ne connaissais pas cette utilisation de la fonction Exact !!

Cordialement
 
Re : decalage de colonne en fonction de la date

Bonsoir,

Une autre solution, sans que la formule ne doive être matricielle: en F3
Code:
=SI((NB.SI($C$3:$C$31;$E3)*(F$2=$B$35));"x";"")
... à recopier également en bas et à droite (sauf si le respect de la casse était primordial!?)
 
Re : decalage de colonne en fonction de la date

désolé pour le retard , merci à tous les deux , cela marche bien , cependant , cela efface les colonnes précendentes , c'est pour cela que je voyait plus une macro sous vba , du genre :
Sub DecalageJour()
Dim jour As Range

Set jour = Range("B35").Value

If jour = Range("F2:AJ2") Then
'activer la colone ou se trouve la valeur de B34
Range("jour").Activate
'Sheets("Feuil1").Range("F" & Column.Count).End(xlToRight)).Select
Selection.Offset(0, 1).Value = Selection.Value
End If
End Sub

mais ça plante ...
 
Re : decalage de colonne en fonction de la date

Bonjour bzh76,

Un peu "basique", mais fonctionnel:
VB:
Sub DecalageJour()
jour = Range("B35") + 5
For Each c In Range("C3:C" & Range("C65000").End(xlUp).Row)
    On Error Resume Next 'si nom inexistant
    nom = 2 + Application.WorksheetFunction.Match(c, Range("E3:E31"), 0)
    If IsNumeric(nom) Then Cells(nom, jour) = "x"
Next c
End Sub

Attention: tu as, en colonne C, quelques cellules qui ont l'air d'être vides ... mais ne le sont pas!
 
Re : decalage de colonne en fonction de la date

super !!!! merci , ça va beaucoup m' aider , ça marche nickel !!! un grand bravo , je suis toujours sidéré par ceux qui écrivent des codent aussi facilement ! 🙂
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

  • Question Question
Microsoft 365 agrandir la liste
Réponses
21
Affichages
664
Réponses
18
Affichages
730
Réponses
5
Affichages
701
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…