Affichage de données conditionnelles dans cellule excel
Résolu
matt0592
Messages postés
69
Date d'inscription
Statut
Membre
Dernière intervention
-
skk201 Messages postés 942 Date d'inscription Statut Membre Dernière intervention -
skk201 Messages postés 942 Date d'inscription Statut Membre Dernière intervention -
Bonjour à tous,
Je me trouve en face du problème suivant : je souhaiterais qu'une cellule de mon tableau Excel affiche toujours une valeur comprise entre 0 et 10, quelle que soit la valeur rentrée par l'opérateur. Je m'explique :
- si l'opérateur entre une valeur comprise entre 0 et 10, on ne change rien.
- si l'opérateur entre une valeur comprise entre 10 et 100, on la divise par 10 (comme ça la valeur affichée sera bien entre 0 et 10)
- si l'opérateur entre une valeur comprise entre 100 et 1000, on la divise par 100
Voilà, à priori, l'opérateur ne rentrera jamais de valeur supérieure à 1000.
Quelqu'un saurait-il écrire ce programme ?
Merci d'avance pour votre aide
Je me trouve en face du problème suivant : je souhaiterais qu'une cellule de mon tableau Excel affiche toujours une valeur comprise entre 0 et 10, quelle que soit la valeur rentrée par l'opérateur. Je m'explique :
- si l'opérateur entre une valeur comprise entre 0 et 10, on ne change rien.
- si l'opérateur entre une valeur comprise entre 10 et 100, on la divise par 10 (comme ça la valeur affichée sera bien entre 0 et 10)
- si l'opérateur entre une valeur comprise entre 100 et 1000, on la divise par 100
Voilà, à priori, l'opérateur ne rentrera jamais de valeur supérieure à 1000.
Quelqu'un saurait-il écrire ce programme ?
Merci d'avance pour votre aide
A voir également:
- Affichage de données conditionnelles dans cellule excel
- Mise en forme conditionnelle excel - Guide
- Liste déroulante excel - Guide
- Proteger cellule excel - Guide
- Aller à la ligne dans une cellule excel - Guide
- Trier des données excel - Guide
3 réponses
Bonjour
le nombre en B2
=B2/(10^(ENT(LOG(B2))))
le nombre en B2
=B2/(10^(ENT(LOG(B2))))
skk201
Messages postés
942
Date d'inscription
Statut
Membre
Dernière intervention
54
Super j'y aurais jamais pensé :)
Bonjour
Votre code va utiliser du VBA (Macro). Est-ce que vous saurez ou le placer ?
Votre code va utiliser du VBA (Macro). Est-ce que vous saurez ou le placer ?
Private Sub Worksheet_Change(ByVal Target As Range) If Not Application.Intersect(Target, Range("A:A")) Is Nothing Then If IsNumeric(Target.Value) = False Then Msgbox "Ce Dim NB as int NB = Cint(Target.value) Do If NB <11 AND NB <0 Then Exit Sub NB = NB / 10 Loop End If End Sub
Je vien de voir une grosse bourde :D
Private Sub Worksheet_Change(ByVal Target As Range) If Not Application.Intersect(Target, Range("A:A")) Is Nothing Then If IsNumeric(Target.Value) = False Then Msgbox ("Ce n'est pas un chiffre") Exit sub End if Dim NB as int NB = Cint(Target.value) Do If NB <11 AND NB <0 Then Exit Sub NB = NB / 10 Loop Target = NB End If End Sub