Format personnalisé avec fraction

Bonsoir à tous,

J'aimerais savoir s'il était possible de faire un format personnalisé du genre 1/15 tout en sachant que le deuxième chiffre (/15) peut varier : en clair peut-on intégrer une fonction dans un format perso ? Je pense que non mais bon avec Excel, tout est possible.

Je pensais à un format du style : #"/NBVAL(Plage)"

Bonne réflexion et bonne soirée à tous.

PS : le but du jeu est de ne pas utiliser de colonne intermédiaire car ça je sais le faire

Bonjour,.

Je vous ai fait un format personnalisé dans le fichier ci-joint,

ex : 1/???. Soit trois chiffre après la barre de fraction colonne A 10 lignes

A vous de l'adapter.

Amicalement

Papy Pierrot

Bonsoir,

Merci pour ta contribution.

Par contre, je n'ai pas pu ouvrir ton fichier : étant sous 2003 j'ai ce message qui s'affiche (j'ai le convertisseur) "Le convertisseur n'a pu ouvrir le fichier".

Peux-tu enregistrer ton fichier en Excel 2003 ou juste poster le format que tu as utilisé ?

Merci d'avance et bonne soirée.

Voilà le fichier au format excel 97 - 2003

Bonne soirée.

Papy Pierrot


Le fichier oublié


Je ne vois pas le fichier dans ler message d'expédition

Je recommence.L'extention XLT n'est pas autorisée.

Je cherche autre chose.

Voilà,un classeur xls 97-2003

Papy Pierrot

Merci pour ton retour mais hélas je me suis mal exprimé. Je te renvoie ton fichier modifié avec ce que je souhaite.

Bonne soirée.

Bonsoir,

je ne comprend pas grand chose à votre système de classement.

Désolé

Papy Pierrot

ci-joint le fichier avec quelques idées.

Bonsoir,

non, ça ne peut pas être par un format personalisé.

1) ils n'acceptent pas de formule

2) 2/10 = 1/5

Une proposition en vba :

Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Column <> 2 Then Exit Sub
    If IsNumeric(Target) And Target <> "" Then
        Application.EnableEvents = False
        Target = Target & "/" & Application.CountA(Columns(1))
        Application.EnableEvents = True
    End If
End Sub

Mais le résultat est du texte, pas du numérique.

Si tu veux trier dessus il faudra le mettre sous la forme 03/10

eric

Salut le forum

Pour éviter la conversion en date avec le séparateur "/"

Private Sub Worksheet_Change(ByVal Target As Range)
    With Target
        If .Column <> 2 Then Exit Sub
        If IsNumeric(.Value) And .Value <> "" Then
            Application.EnableEvents = False
            .NumberFormat = "# ??/" & Application.CountA(Columns(1))
            .Value = Target & "/" & Application.CountA(Columns(1))
            Application.EnableEvents = True
        End If
    End With
End Sub

Mytå

Bonjour, Eric,

Je suis désolé, il va falloir faire appel à des experts.

Je n'ai pas de solution.

Amicalement?

Pierrot

Bonjour myta,

ou bien laisser la colonne B au format Texte.

Mais ta proposition à l'avantage de donner un résultat en numérique.

eric

Bonsoir,

Merci à tous les trois pour vos réponses respectives. Finalement, j'utilise de code donné par Myta : j'ai juste modifié le format

.NumberFormat = "# ??/" & Application.CountA(Columns(1))

par

.NumberFormat = "##??/" & Application.CountA(Columns(1))

car quand je saisissais un nombre à deux chiffres, j'obtenais la valeur 1 sans formatage.

Juste pour finaliser, peut-on mettre un message d'erreur si une valeur a déjà été saisie et pointer sur cette valeur afin de la modifier si besoin? Comment modifier la ligne suivante :

Application.CountA(Columns(1))

pour exclure mes lignes d'entêtes ? Et pour finir, peut-on ajouter un tri sur la colonne B à la saisie afin de ne pas avoir à trier manuellement quand toutes les saisies ont été effectuées ?

Encore merci à tous et bonne soirée.

Bonjour,

Suite à ma réponse d'hier soir, je poste un fichier un peu plus explicite.

PS : pour l'exclusion des lignes d'entêtes, j'ai trouvé.

Bonne journée.

Rechercher des sujets similaires à "format personnalise fraction"