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

Macros et VBA Excel Discussion :

Concept d'une variable a valeur multiple


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Janvier 2017
    Messages
    556
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : Canada

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Santé

    Informations forums :
    Inscription : Janvier 2017
    Messages : 556
    Par défaut Concept d'une variable a valeur multiple
    Bonjour a vous,


    J'ai une subroutine permettant de valider les données d'un fichier Excel, si les champs requis sont conformes a un logiciel auquel j'importe les données. Parfois les données que je traite on des erreurs (mauvaises information demandé complétés, mauvaises interprétation de l'utilisateur) et je corrige celles-ci en les identifiant d'une couleurs différente le "font" et l'"interior" afin de les rendre plus visibles. (j'utilise police rouge, remplissage jaune)

    Si j'exécute ma sub de validation, je demande d'identifié les erreurs, champs obligatoires manquant, trop long, mauvais type de donné dans une couleur différente (font =3 et interior = 34). Si tout est correct, ou si l'erreur est corrigé, la cellule deviens en blanc écriture noir (font = 1 et interior = 2)


    Au lieu de remettre blanc et écriture noir, je voudrais que la cellule sois colorer au "font" et "interior" de la couleur de départ, ainsi les erreurs corrigers ne seraient plus écrasé par le font noir et écriture blanc.



    Donc a la fin du processus la cellule ayant une écriture rouge reste rouge et celle ayant une écriture noir reste noir.


    Voici une partie du code illustrant ce que je fais présentement

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    'si la longueur de la provinciale courte est plus grand que 100, le texte est en rouge sur fond bleu
     
                If Len(Cells(x + 1, [prov_court_travail].Column)) > 100 Then
                    compteur = compteur + 1
                    With Cells(x + 1, [prov_court_travail].Column)
                    .Font.ColorIndex = 3
                    .Interior.ColorIndex = 34
                    End With
                Else
                    With Cells(x + 1, [prov_court_travail].Column)
                    .Font.ColorIndex = 1
                    .Interior.ColorIndex = 2
                    End With
                End If
     
     
    'si la provinciale courte est vide on inscrit ??? et on met en rouge sur fond bleu
     
                If IsEmpty(Cells(x + 1, [prov_court_travail].Column)) Then
                    compteur = compteur + 1
                    With Cells(x + 1, [prov_court_travail].Column)
                    .value = "???"
                    .Font.ColorIndex = 3
                    .Interior.ColorIndex = 34
                    End With
                Else
                    With Cells(x + 1, [prov_court_travail].Column)
                    .Font.ColorIndex = 1
                    .Interior.ColorIndex = 2
                    End With
                End If
     
     
    'si on a toujours une descripton provinciale courte = ??? ou plus grande que 100 caractères on maintien la couleur rouge sur fond bleu
     
                If Cells(x + 1, [prov_court_travail].Column) = "???" Or Len(Cells(x + 1, 4)) > 100 Then
                    compteur = compteur + 1
                    With Cells(x + 1, [prov_court_travail].Column)
                    .Font.ColorIndex = 3
                    .Interior.ColorIndex = 34
                    End With
                End If

    encore mille fois pour votre aide / commentaires !!!

  2. #2
    Membre éclairé
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Janvier 2017
    Messages
    556
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : Canada

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Santé

    Informations forums :
    Inscription : Janvier 2017
    Messages : 556
    Par défaut
    Est-ce que vous savez si c'Est quelque chose de faisable ou c'est trop complexe ???


    merci

  3. #3
    Membre extrêmement actif Avatar de mjpmjp
    Homme Profil pro
    Retraité
    Inscrit en
    Avril 2012
    Messages
    1 133
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hautes Alpes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Santé

    Informations forums :
    Inscription : Avril 2012
    Messages : 1 133
    Par défaut
    bonjour,
    il te faut un repaire de couleur -> indication de la couleur d'origine

    une indication peut être :
    si toute la colonne est verte...
    si une couleur en fonction du format...

    une mesure extrême :
    à la façon d'un log ,
    tu notes les cellules à modifier et la couleur : [A2] et [2_34]
    pour remettre la couleur tu recherche A2 et tu as tes couleurs 2 et 34
    (tu efface la ligne)

    @+JP
    Caractéristiques (WEB) phpMyAdmin 4-74 , PHP 5-631 , Apache 2-427 , MySQL 5-719
    Présentation NAS DS-3615xs + 20Go , DSM 6.1.6-15266 Up1 , 12 * WD 4To WD4000F9YZ (10 raid 6+ )+(2 raid 1+) , LinkSys comutateur-switch lgs528p-eu , Onduleur UPS 720W Power Boxx Lcd (4*UPS + 4*MOD)
    Mes contributions (EXCEL) Form GRAPHIQUE: Gestion des boutons , Liste Onglet dynamique...GESTION de FILM

  4. #4
    Membre Expert
    Profil pro
    Inscrit en
    Février 2007
    Messages
    2 266
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 2 266
    Par défaut
    Bonjour,

    tu pourrais mettre des n° d'erreurs en commentaire et les supprimer au fur et à mesure de leur correction.
    En sortie à toi de mettre la couleur en fonction de ce qu'il reste comme erreurs.
    eric

  5. #5
    Membre extrêmement actif Avatar de mjpmjp
    Homme Profil pro
    Retraité
    Inscrit en
    Avril 2012
    Messages
    1 133
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hautes Alpes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Santé

    Informations forums :
    Inscription : Avril 2012
    Messages : 1 133
    Par défaut
    bonjour,
    oui, c'est çà... tu mets les codes couleur en commentaire !!!
    @+JP
    Caractéristiques (WEB) phpMyAdmin 4-74 , PHP 5-631 , Apache 2-427 , MySQL 5-719
    Présentation NAS DS-3615xs + 20Go , DSM 6.1.6-15266 Up1 , 12 * WD 4To WD4000F9YZ (10 raid 6+ )+(2 raid 1+) , LinkSys comutateur-switch lgs528p-eu , Onduleur UPS 720W Power Boxx Lcd (4*UPS + 4*MOD)
    Mes contributions (EXCEL) Form GRAPHIQUE: Gestion des boutons , Liste Onglet dynamique...GESTION de FILM

  6. #6
    Membre éclairé
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Janvier 2017
    Messages
    556
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : Canada

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Santé

    Informations forums :
    Inscription : Janvier 2017
    Messages : 556
    Par défaut
    Un gros merci pour la piste de solution !!!


    amicalement

    JP

Discussions similaires

  1. [Conception] Faire une somme de valeurs définies par une boucle
    Par fixbraun dans le forum PHP & Base de données
    Réponses: 9
    Dernier message: 25/09/2006, 23h46
  2. donner a une variable la valeur d'1 cellule d'1 autre fichier
    Par yahi.jye dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 21/09/2006, 00h29
  3. [Conception] INSERT une variable de valeur 1
    Par JackBeauregard dans le forum PHP & Base de données
    Réponses: 13
    Dernier message: 11/09/2006, 13h10
  4. [C#] Lier une variable à la valeur d'un textbox
    Par etiennegaloup dans le forum Windows Forms
    Réponses: 3
    Dernier message: 03/06/2006, 16h48
  5. [Custom Tags 1.2] Passer une variable comme valeur d'attribut d'un tag jsp
    Par Pi2 dans le forum Taglibs
    Réponses: 7
    Dernier message: 16/09/2005, 14h44

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