Bonjour , je suis novice en VBA , je voulais solliciter l’aide des experts que vous êtes pour m aider à travailler un fichier en VBA .
Mon fichier est composé de plusieurs classeurs portants chacun un nom bien defini (selon un profil donné , administrateur , comptable , controleur etc ) . Dans chaque classeur (profil ) il ya une liste de codes d habilitations .
Il ya ensuite un classeur RECAP dans lequel se trouvent tOus les codes et à coté en colonnes , les differents profils .
Sur cette feuille recap je voudrais creer un bouton qui me fasse un traitement , ce traitement consiste à vérifier pour une ligne de code dans le classeur recap, de verifier pour chaque profil mis à coté si ce code existe parmi les codes dans le classeur portant le nom du profil . Si oui mettre un X sinon ne rien rendre la cellule vide .
Ci dessous le fichier , RECAP.xls (273,5 Ko)
Merci infiniment beaucoup pour votre rapide réaction . Vous avez compris effectivement l’idée mais le résultat n’est correct sur beaucoup de lignes .
Par exemple dans la feuille « RECAP » , si on prend les codes 1245 ou 1204 elles existent bien dans la feuille « ADMINISTRATEUR » mais la croix n’est pas marquée , plein d’autres lignes aussi ont ce problème , 1205 , 1431 par exemple .
Pour les manques ce n’est pas un problème de traitement de la macro mais une anomalie dans les données concernées
Prenons la donnée 1245 ici onglet « RECAP » et « ADMINISTRATEUR » :
Si tu remarques elle est bizarrement retranscrite avec un espace entre le premier et deuxième chiffre
C’est la même présentation pour toutes celles qui sont dans la même problématique
Tu les as certainement toutes récupérées d’une source qui n’est pas d’Excel et donc ce dernier n’a pas su correctement les interpréter
Pour palier à cette anomalie de ces données il faut réaliser cette manipulation :
Dans les onglets « RECAP » et ceux des profils après avoir sélectionné toute leur colonne tu sélectionnes dans la barre d’Excel l’icone « Format » dans la liste qui s’ouvre choisir « Format de cellule » puis dans la fenêtre qui s’ouvre choisir dans la liste à gauche l’item « Nombre » pavé de droite « Nombre de décimales » mettre 0 puis « OK » comme ceci :