IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

IHM Discussion :

Deux formats pour le même contrôle


Sujet :

IHM

  1. #1
    Membre du Club
    Homme Profil pro
    retraité
    Inscrit en
    Juin 2018
    Messages
    96
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Juin 2018
    Messages : 96
    Points : 50
    Points
    50
    Par défaut Deux formats pour le même contrôle
    Bonjour,

    dans un formulaire j'ai un champ dans lequel je saisi des prix qui servent ensuite à faire des calculs.
    Je lui ai donc affecté un format # ###.
    Je voudrais pouvoir mettre "Offert" dans ce champ, à la place d'un nombre, de temps en temps (pas trop souvent, je suis radin...)
    Est-ce possible ? comment ?
    Par avance merci
    Fifi

  2. #2
    Modérateur
    Avatar de bertiny
    Homme Profil pro
    Enseignant
    Inscrit en
    Mars 2013
    Messages
    1 282
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Mars 2013
    Messages : 1 282
    Points : 1 831
    Points
    1 831
    Billets dans le blog
    1
    Par défaut
    Bonjour. Si un champ est de type texte alors il peut contenir du texte mais aussi des nombres. Mais le problème avec les nombres compris dans un champ de type texte c'est qu'on ne pourra pas faire des opérations arithmétiques dessus mais plutôt des opérations de chaine.
    Par contre, un champ de type nombres ne peut contenir que des nombres. Et c'est à ce niveau qu'on pourra effectuer des opérations arithmétiques.
    Le monde évolue et nous avec. La technologie change les idées de ceux qui s'intéressent et pensent qu'il est nécessaire de changer.
    Oh là!! Que c'est bien de trouver la solution à un problème

    Pensons à améliorer nos connaissances en toute humilité car on apprend tous tous les jours !!!

  3. #3
    Rédacteur/Modérateur
    Avatar de Jeannot45
    Homme Profil pro
    Retraité
    Inscrit en
    Octobre 2004
    Messages
    3 871
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Enseignement

    Informations forums :
    Inscription : Octobre 2004
    Messages : 3 871
    Points : 8 489
    Points
    8 489
    Par défaut


    Le format reste une représentation de la valeur. Dans ton champ tu stockes une valeur et le format lui donne un habillage.
    Ainsi, tu peux comme tu veux "habiller" ton nombre. Si le prix de ton objet est 0 alors l'habillage sera "Offert"

    Sur l'évènement après MAJ de ton champ de saisie tu pourrais avoir la procédure suivante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    If Me.ActiveControl = 0 then
        Me.ActiveControl = Format(Me.ActiveControl,"Offert")
    Else
        Me.ActiveControl = Format(Me.ActiveControl,"# ###")
    End If
    Bonne continuation
    Jeannot

    Liens Office indispensables à visiter: Cours (Tutos), F.A.Q., Sources VBA

    Ne posez pas de questions par MP, je n'ai pas le temps d'y répondre

  4. #4
    Membre du Club
    Homme Profil pro
    retraité
    Inscrit en
    Juin 2018
    Messages
    96
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Juin 2018
    Messages : 96
    Points : 50
    Points
    50
    Par défaut
    Bonjour

    en effet, il est possible grâce au changement de format ci-dessous d'écrire "Offert" dans un champ numérique,

    Citation Envoyé par Jeannot45 Voir le message


    Le format reste une représentation de la valeur. Dans ton champ tu stockes une valeur et le format lui donne un habillage.
    Ainsi, tu peux comme tu veux "habiller" ton nombre. Si le prix de ton objet est 0 alors l'habillage sera "Offert"

    Sur l'évènement après MAJ de ton champ de saisie tu pourrais avoir la procédure suivante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    If Me.ActiveControl = 0 then
        Me.ActiveControl = Format(Me.ActiveControl,"Offert")
    Else
        Me.ActiveControl = Format(Me.ActiveControl,"# ###")
    End If
    Bonne continuation
    mais il semble également vrai que ça mette la zone dans tous les calculs qui suivent

    Citation Envoyé par bertiny Voir le message
    Bonjour. Si un champ est de type texte alors il peut contenir du texte mais aussi des nombres. Mais le problème avec les nombres compris dans un champ de type texte c'est qu'on ne pourra pas faire des opérations arithmétiques dessus mais plutôt des opérations de chaine.
    Par contre, un champ de type nombres ne peut contenir que des nombres. Et c'est à ce niveau qu'on pourra effectuer des opérations arithmétiques.
    merci à vous
    fifi

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. deux sessionFactory pour la même application
    Par Esil2008 dans le forum Spring
    Réponses: 1
    Dernier message: 20/11/2008, 13h34
  2. Deux actions pour le même formulaire
    Par Akim13 dans le forum Langage
    Réponses: 8
    Dernier message: 23/04/2008, 20h01
  3. Graphique à deux 'y' pour un même 'x'
    Par leovenus dans le forum MATLAB
    Réponses: 1
    Dernier message: 19/04/2008, 17h30
  4. Réponses: 5
    Dernier message: 30/01/2007, 13h23
  5. [POO] Deux constructeurs pour une même classe
    Par amika dans le forum Langage
    Réponses: 4
    Dernier message: 16/12/2006, 16h31

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo