1 pièce(s) jointe(s)
Macro pour check données et format + génération TXT (tab separator)
Bonjour,
Je me rends compte que je n'ai pas toutes les compétences requises à ce que je veux mettre en place, aprés trois jours de galère, je fais appel à vous.
Mon objectif de macro est le suivant :
Dans mon fichier excel (un template), l'utilisateur copie un certain nombre de données.
Dans les autres onglets se trouvent des tables de référence.
1- La macro défini la dernière ligne du tableau présent dans Feuil1
2 - La macro néttoie les valeurs : suppression des " " et "." avant et aprés les valeurs saisies, remplacement des " " par des " " dans les valeurs.
3- La macro force le format de toutes les cellules en Texte.
4 - la macro vérifie que les champs des colonnes à en-têtes verts sont bien remplis (pas de " " ou " " ou "." sinon, cellule colorée rouge), que les valeurs saisies correspondent aux valeurs présentes dans la table de référence associée (dans un autre onglet) sinon, cellule colorée rouge.
5- La macro vérifie que les valeurs présentes dans la colonne bzu sont correctes par rapport à la valeur de la colonne1. Table de référence val/bzu dans l'onglet bzu. Si les valeur ne correspondent pas, cellule de la colonne bzu colorée en rouge.
6 - La macro vérifie que les valeurs de la colonne date (si elles sont présentes, pas obligatoires) sont bien au format DD/MM/YYYY (sinon, cellule colorée en rouge).
7 - Dans la colonne 6, le format doit être le suivant : 145.45
Le point est le séparateur, avec deux décimales aprés le point.
Si la valeur saisie ne se termine pas par ".00", colorer la cellule en gris.
8 - Les valeurs des cellules de la colonne5 ne doivent pas faire plus de 25 caractères, sinon cellule colorée grise.
9 - Si par chance, aucune cellule n'avait été colorée, supprimer toutes les lignes qui se trouvent en dessous du tableau (par sécurité) et générer un fichier txt (tab delimited text) dans un dossier donné.
J'ai pas mal d'idées, j'ai essayer de tourner mon algo dans tous les sens mais je suis définitivement mauvais...ou pas logique.
Merci de votre aide !
Jacques