Représenter une durée en jours par des semaines via un format personnalisé

Y compris Power BI, Power Query et toute autre question en lien avec Excel
Avatar du membre
gloub
Membre impliqué
Membre impliqué
Messages : 1'113
Inscrit le : 17 juillet 2007
Version d'Excel : 2003 sur PC + 365 sur Mac

Message par gloub » 20 septembre 2019, 11:40

Bonjour le Forum !

Existe-t-il un moyen d'appliquer un format de nombre personnalisé, qui permette d'afficher sous forme de semaines une durée renseignée en jours.
Exemple :
Une cellule contient la valeur 28.
Si je lui applique le format : 0 " j" , elle affichera 28 j.
Existe-t-il un format qui permette d'afficher 4 sem. ?

Merci !
m
melch
Membre dévoué
Membre dévoué
Messages : 592
Appréciations reçues : 27
Inscrit le : 28 juillet 2016
Version d'Excel : 2007 FR, 2013 FR

Message par melch » 20 septembre 2019, 11:49

Je ne m'y connais pas trop en format personnalisés, du coup je propose la solution suivante :

Tu sélectionnes tes cellules et lances la macro suivante. Elles auront chacune un format personnalisé en fonction de leur valeur.
Sub melch()
For Each c In Selection
    c.NumberFormat = Round(c.Value / 7, 0) & """ semaines"""
Next
End Sub
Avatar du membre
gloub
Membre impliqué
Membre impliqué
Messages : 1'113
Inscrit le : 17 juillet 2007
Version d'Excel : 2003 sur PC + 365 sur Mac

Message par gloub » 20 septembre 2019, 12:28

Bonjour,

Merci pour ta réponse...mais ce n'est pas ce que je cherchais.
Je souhaite modifier l'affichage seulement, pas la valeur.
D'où mon souhait d'agir seulement sur l'affichage personnalisé.
m
melch
Membre dévoué
Membre dévoué
Messages : 592
Appréciations reçues : 27
Inscrit le : 28 juillet 2016
Version d'Excel : 2007 FR, 2013 FR

Message par melch » 20 septembre 2019, 12:31

Oui, cela modifie bien uniquement l'affichage.

la macro applique un format en fonction de la valeur. Mais la valeur n'est pas changée
Avatar du membre
gloub
Membre impliqué
Membre impliqué
Messages : 1'113
Inscrit le : 17 juillet 2007
Version d'Excel : 2003 sur PC + 365 sur Mac

Message par gloub » 20 septembre 2019, 12:45

Aoué......
Très malin en effet !!!
En revanche, on perd la "réactivité" càd que quand la valeur change, le format ne suit pas, d'où risque d'erreur à la lecture de la valeur, que je ne peux pas me permettre.
Merci en tous cas.
Avatar du membre
Xmenpl
Membre impliqué
Membre impliqué
Messages : 1'867
Appréciations reçues : 114
Inscrit le : 16 mai 2018
Version d'Excel : 2003 à 2013

Message par Xmenpl » 20 septembre 2019, 14:40

gloub a écrit :
20 septembre 2019, 12:45
Aoué......
Très malin en effet !!!
En revanche, on perd la "réactivité" càd que quand la valeur change, le format ne suit pas, d'où risque d'erreur à la lecture de la valeur, que je ne peux pas me permettre.
Merci en tous cas.
Bonjour,
avec un peu d'imagination il suffit d'adapter l'excellent code de melch :good: à ton besoin :
à indiquer dans le worksheet de la feuille concernée en adaptant à la colonne de ton fichier.
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim myrange As Range
Dim cell As Range
Set myrange = ActiveSheet.Range("B2:B900")
For Each c In myrange
    c.NumberFormat = Round(c.Value / 7, 0) & """ semaines"""
Next c
End Sub
Classeur1test.xlsm
(18.52 Kio) Téléchargé 2 fois
m
melch
Membre dévoué
Membre dévoué
Messages : 592
Appréciations reçues : 27
Inscrit le : 28 juillet 2016
Version d'Excel : 2007 FR, 2013 FR

Message par melch » 20 septembre 2019, 14:49

Xmenpl a écrit :
20 septembre 2019, 14:40
l'excellent code de melch
:rose:
Répondre Sujet précédentSujet suivant
  • Sujets similaires
    Réponses
    Vues
    Dernier message