Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Code VBA : déterminer Apparence de l'en-tête, du pied de page, des données reportées

cibleo

XLDnaute Impliqué
Bonjour à tous,

Grâce à vos interventions sur le forum, je développe un petit programme VBA qui me permet de reporter des données issues de 12 feuilles nommées ainsi (Encais Janv08, Encais Fév08 etc... jusqu'à Décembre 08) vers une feuille nommée "recherche" à l'aide d'un mot-clé saisi dans une inputbox.

Ce programme s'exécute maintenant très bien mais je souhaiterais aujourd'hui améliorer la présentation de mon tableau (feuille "recherche") et la lisibilité des données reportées.

Je développe.

- Concernant l'en-tête (déjà créé en partie centrale)
* Formater en police Verdana Taille 16 Couleur automatique (noire)

- Concernant le pied de page (non créé)
* Insérer dans la partie centrale la mention "Edité le (jour d'aujourd'hui avec heure) écrite en toute lettre. Ex : Edité le jeudi 06 mars 2008 à 16 h 00
* Insérer dans la partie gauche la mention "Encaissement 2008"
* Insérer dans la partie droite les pages numérotées comme ceci : page 1/3, page 2/3 etc... Tout cela (pied de page) dans un format Verdana taille 10 Couleur automatique (noire)
J'espère que toutes ces mentions ne vont pas se chevaucher !
Quelles instructions dois-je rajouter à mon code ?

- Concernant les données reportées dans les colonnes A à G de ma feuille "recherche", un petit problème se pose.
* Ma feuille "recherche" subit la MFC des feuilles traitées (Encais Janv08 etc...). c'est à dire que mes données reportées apparaissent avec un motif bleu (ce que je ne souhaite pas).

Comment ne pas appliquer cette MFC créée dans les feuilles traitées et qui se reporte en même temps que les données ?
Faut-il rajouter une instruction à mon code ?

*D'autre part, figurent en colonne A de la feuille "recherche" les dates reportées que j'aimerais mieux discerner en appliquant un trait "gras par exemple" à chaque changement de mois dans les dates. Ce trait s'appliquerait automatiquement sur la ligne entière de la colonne A à G.
*Autre point, j'aimerais faire la somme automatique à la fin des colonnes E, F et G où sont reportés les montants des feuilles traitées, le montant total de chaque colonne venant s'insérer en dessous de la dernière ligne reportée.

Comment dois-je modifier le code ?

*Dernier point enfin, peut-être le plus difficile à résoudre.
Explication : je saisis dans l'inputbox le mot-clé de cette façon : *cpam* soit avec 2 caractères génériques, ce qui me permet de reporter le libellé inscrit dans la colonne D de mes feuilles traitées comme ceci, exemple : Remboursement cpam du département X.
Ma question est la suivante : serait-il possible d'isoler le terme "cpam" dans le libellé reporté en colonne C de la feuille "recherche" en lui appliquant une couleur de police "rouge" par exemple.
Exemple du libellé reporté : "remboursement" en noir, "cpam" en rouge, "du département X" en noir

Voilà,mes explications ont été longues mais j'espère avoir été précis dans mes demandes;

Merci d'avance de votre aide, je débute en VBA.

Ci-joint le code.

Sub cherche(achercher)
ligne = 2
For n = 1 To Sheets.Count
If Sheets(n).Name Like "Encais*" Then
Set c = Sheets(n).Range("D").Find(achercher, LookIn:=xlValues, lookat:=xlWhole)
If Not c Is Nothing Then
firstAddress = c.Address
Do
Sheets(n).Range("B" & c.Row & ":" & "H" & c.Row).Copy Destination:=Sheets("Recherche").Cells(ligne, 1)
ligne = ligne + 1
Set c = Sheets(n).Cells.FindNext(c)
Loop While Not c Is Nothing And c.Address <> firstAddress
End If
End If
Next n
End Sub

Sub recherche()
mot = InputBox("Veuillez entrer le mot recherché.", "Encaissement 2008")
If mot = "" Then Exit Sub
Sheets("Recherche").Range("A2:i" & Range("A65536").End(xlUp).Row + 1).ClearContents
Sheets("Recherche").PageSetup.CenterHeader = " Mot-clé saisi : " & mot
Call cherche(mot)
End Sub
 

cibleo

XLDnaute Impliqué
Re : Code VBA : déterminer Apparence de l'en-tête, du pied de page, des données repor

Bonsoir Excel lent,

Et encore merci,

Ta nouvelle mouture est parfaite.

Encore 2 petites questions

Si dans mon libellé, je veux chercher 2 mots exemple : je saisis Cpam dijon

si ces 2 mots sont contigus dans le libellé (remboursement cpam dijon), il va me les trouver.

Mais si ma secrétaire mentionne le libellé comme ceci (remboursement cpam cote d'or dijon) et si elle saisit cpam dijon çà va pas le faire !!!

est-ce que l'on peut modifier le code ?

Autre question ? Tu vas trouvé que j'ai l'esprit tordu !!

Je saisis dijon cpam, donc à l'envers, est-ce qu'il peut me ressortir finalement tous les libellés qui contiennent le mot dijon et cpam quel que soit l'ordre établi dans le libellé ?

On peut pousser le vice encore plus loin en affectant la saisie avec plusieurs mots. Est-ce que tout çà est réalisable Excel lent!

Merci pour ton aide
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…