Gestion Des Cellules VBA

download Gestion Des Cellules VBA

of 61

Transcript of Gestion Des Cellules VBA

  • 5/28/2018 Gestion Des Cellules VBA

    1/61

    Gestion des cellules

    Accueil

    Definir un champPositionner le curseurCellule ActiveDplacer le curseurMasquer la Maj de l'cranSlectionner la rgion couranteRedefinir la taille d'un champSlectionner des cellules

    particulires

    Selectionner la zone utilise dans lafeuilleUnion et intersection de champsRechercher une information(Find)Derniere ligne d'un champRecherche de date(Find)Find AccentRecherche dans tout le classeurRemplacer uneinformation(Replace)Remplacer VRAI FAUX

    Nommer les champs par VBAFusion de cellulesChamps Multi Zones

    -RAZ des cellules de la couleur choisie-Dcaler les mois-Supprimer lignes qui existent dj-Copier les lignes colories-Copier les lignes manquantes-Colorie les occurences d'un mot cherch-Recherche 2 critres-Diffrence entre 2 BD-Diffrence entre 2 BD multi-critres

    -NettoyageFeuille-Supprimer des lignes vides-Suppression de lignes-Suppression de lignes rapide-Supprime une ligne sur 2-Supprimer des doublons-Complter un champ-Supprimer les lignes commenant par-Insre ligne avec copie formules-Masquage de lignes-Rcupration d'un champ d'un classeur

    ferm-Rcupration du format des cellules

    pointes-Transforme BD en tableau-Transforme Tableau en BD-Transforme fiches en BD-Transforme ligne en colonne-Transforme colonne en ligne-Transforme colonne ligne matricielle-Colonne en ligne avec 2 niveaux rupture-Trim rapide

    -Slection 1 Ligne sur 2-Editeur couleur-Liste des feuilles contenant un motcherch-Reprer les doublons multi-feuilles-Modification de la couleur de la slection-Curseur ligne-Curseur Ligne/Colonne-Mise en forme d'une BD

    RangeCellsActiveCellScreenUpdatingCurrentRegionSelection.End

    Resize

    SpecialCells

    UsedRange

    UnionIntersectScrollAreaFindSpecialCellsUsedRangeReplace

    ScrollRow

    ScrollColumn

    ScrollAreaMerge-Unmerge

    Application.Goto

    http://boisgontierjacques.free.fr/index2.htmhttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23Deacutefinirhttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23Deacutefinirhttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23Positionnerhttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23Positionnerhttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23CelluleActivehttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23CelluleActivehttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23Deplacercurseurhttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23Deplacercurseurhttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23MasquerMajEcranhttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23MasquerMajEcranhttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23SelectionRegionCourantehttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23SelectionRegionCourantehttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23RedefinirTailleChamphttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23SelectionnerSpecialCellshttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23SelectionnerSpecialCellshttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23SelectionnerUsedRangehttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23NettoyageFeuillehttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23SelectionnerUsedRangehttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23UnionIntersectionChampshttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23UnionIntersectionChampshttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23RechercherFindhttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23RechercherFindhttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23DerniereLignehttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23DerniereLignehttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23RechercheDatehttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23FindAccenthttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23FindAccenthttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23RechClasseurhttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23RechClasseurhttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23RemplacerInfohttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23RemplacerInfohttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23RemplacerInfohttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23VRAIFAUXhttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23VRAIFAUXhttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23Nommer%2520les%2520champs%2520par%2520VBAhttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23Nommer%2520les%2520champs%2520par%2520VBAhttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23Fusionnerhttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23ChampsMultiZoneshttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23RAZhttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23RAZhttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23decalemoishttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23decalemoishttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23SupprimerLigneshttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23CopierLignesCouleurhttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23CopiedelignesManquanteshttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23CopiedelignesManquanteshttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23ColorieMothttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23ColorieMothttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23CopiedelignesManquanteshttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23RemplacerInfohttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23Difference2fichiershttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23ComparaisonMultiCrithttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23NettoyageFeuillehttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23NettoyageFeuillehttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23Suppressionhttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23Suppressionhttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23SupLignes2http://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23SupLignes2http://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23SupLignesRapidehttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23SupLignesRapidehttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23SupprimeUneLigneSur2http://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23SupprimeUneLigneSur2http://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23Suppression%2520de%2520doublonshttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23Suppression%2520de%2520doublonshttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23Compl%25E8te+un+champhttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23Compl%25E8te+un+champhttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23Compl%25E8te+un+champhttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23SupprimerCommencantParhttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23InsereLigneFormulehttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23InsereLigneFormulehttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23Masquagehttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23Masquagehttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23R%25E9cup%25E9rationhttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23R%25E9cup%25E9rationhttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23R%25E9cup%25E9rationhttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23RecupFormathttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23RecupFormathttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23RecupFormathttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23RecupFormathttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23convbdtabhttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23convbdtabhttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23TransormeTableauBDhttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23TransormeTableauBDhttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23FichesBDhttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23FichesBDhttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23TransformeLChttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23TransformeLChttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23TransformeCLhttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23TransformeCLhttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23TransformationFormuleMatriciellehttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23ColonneLigne2http://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23ColonneLigne2http://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23ColonneLigne2http://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23TrimRpidehttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23TrimRpidehttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23TrimRpidehttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23Selection1LigneSur2http://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23Selection1LigneSur2http://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23EditeurCouleurhttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23EditeurCouleurhttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23ListeFeuillesMotCherchehttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23ListeFeuillesMotCherchehttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23ListeFeuillesMotCherchehttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23DoublonsMFhttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23DoublonsMFhttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23DoublonsMFhttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23CoulSelecthttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23CoulSelecthttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23CurseurLignehttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23CurseurLignehttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23CurseurLignehttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23CurseurLChttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23CurseurLChttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23mefhttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23mefhttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23Rangehttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23Rangehttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23CellsLigneColonnehttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23CellsLigneColonnehttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23Activecellhttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23Activecellhttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23ScreenUpdatinghttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23ScreenUpdatinghttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23CurrentRegionhttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23CurrentRegionhttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23SelectionEndhttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23Resizehttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23SpecialCellshttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23UsedRangehttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23UsedRangehttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23Unionhttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23Unionhttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23Intersecthttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23Intersecthttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23ScrollAreahttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23ScrollAreahttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23Findhttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23Findhttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23SpecialCellshttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23SpecialCellshttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23UsedRangehttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23UsedRangehttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23Replacehttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23Replacehttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23ScrollRowhttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23ScrollRowhttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23ScrollRowhttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23ScrollAreahttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23ScrollAreahttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23Mergehttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23Mergehttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23ApplicationGotohttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23ApplicationGotohttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23ApplicationGotohttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23Mergehttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23ScrollAreahttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23ScrollRowhttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23ScrollRowhttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23Replacehttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23UsedRangehttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23SpecialCellshttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23Findhttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23ScrollAreahttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23Intersecthttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23Unionhttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23UsedRangehttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23SpecialCellshttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23SpecialCellshttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23Resizehttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23Resizehttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23SelectionEndhttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23CurrentRegionhttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23CurrentRegionhttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23ScreenUpdatinghttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23ScreenUpdatinghttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23Activecellhttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23Activecellhttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23CellsLigneColonnehttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23CellsLigneColonnehttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23Rangehttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23Rangehttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23mefhttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23CurseurLChttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23CurseurLignehttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23CoulSelecthttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23DoublonsMFhttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23ListeFeuillesMotCherchehttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23ListeFeuillesMotCherchehttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23EditeurCouleurhttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23Selection1LigneSur2http://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23TrimRpidehttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23ColonneLigne2http://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23TransformationFormuleMatriciellehttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23TransformeCLhttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23TransformeLChttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23FichesBDhttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23TransormeTableauBDhttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23convbdtabhttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23RecupFormathttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23RecupFormathttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23R%25E9cup%25E9rationhttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23R%25E9cup%25E9rationhttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23Masquagehttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23InsereLigneFormulehttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23InsereLigneFormulehttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23SupprimerCommencantParhttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23SupprimerCommencantParhttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23Compl%25E8te+un+champhttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23Suppression%2520de%2520doublonshttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23SupprimeUneLigneSur2http://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23SupprimeUneLigneSur2http://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23SupLignesRapidehttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23SupLignes2http://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23Suppressionhttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23NettoyageFeuillehttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23ComparaisonMultiCrithttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23Difference2fichiershttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23Difference2fichiershttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23RemplacerInfohttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23CopiedelignesManquanteshttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23CopiedelignesManquanteshttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23ColorieMothttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23CopiedelignesManquanteshttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23CopierLignesCouleurhttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23CopierLignesCouleurhttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23SupprimerLigneshttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23SupprimerLigneshttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23decalemoishttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23RAZhttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23ChampsMultiZoneshttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23ChampsMultiZoneshttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23Fusionnerhttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23Nommer%2520les%2520champs%2520par%2520VBAhttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23VRAIFAUXhttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23RemplacerInfohttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23RemplacerInfohttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23RechClasseurhttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23FindAccenthttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23RechercheDatehttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23RechercheDatehttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23DerniereLignehttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23RechercherFindhttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23UnionIntersectionChampshttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23SelectionnerUsedRangehttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23SelectionnerUsedRangehttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23SelectionnerSpecialCellshttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23SelectionnerSpecialCellshttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23SelectionnerSpecialCellshttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23RedefinirTailleChamphttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23RedefinirTailleChamphttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23SelectionRegionCourantehttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23MasquerMajEcranhttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23Deplacercurseurhttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23CelluleActivehttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23Positionnerhttp://c/Users/Boni/Desktop/PORTE%20DOCUMENTS/VBA%20EXCEL%20TUTOS/occurence%20d'un%20mots%20rechercher.htm%23Deacutefinirhttp://boisgontierjacques.free.fr/index2.htmhttp://boisgontierjacques.free.fr/index2.htm
  • 5/28/2018 Gestion Des Cellules VBA

    2/61

    Dfinir un champ

    Range(champ)

    Range permet de spcifier un champ.

    Range("B3").SelectRange("D4,F4:G4,D116").SelectRange("D4,F4:G4,D116").Interior.ColorIndex=33

    Cells(ligne,Colonne)

    Cells(ligne,colonne)reprsente la cellule qui est l'intersection de ligne et de colonne.Cells(3,2) reprsente le contenu de la cellule qui est l'intersection de la 3e ligne et de la 2e colonne.

    Cells(3,2).Select

    Range(champ).Cells(ligne,colonne)

    La ligne et la colonne sont relatives au dbut du champ spcifi dans Range

    Range("B3:D6").cells(1,1).select

    Cellule active

    ActiveCell

    La cellule active se spcifie avec ActiveCell. Sur cet exemple, la variable X prend la valeur de la cellule activa scrire en A1

    x=ActiveCell.Value

    Range("A1").Value=x

    Positionner le curseur

    Range(champ).Selectslectionne le champ spcifi

    Range("B3").Select ' Slectionne la cellule B3[B3].Select ' Slectionne la cellule B3Range("B3").Offset(1,0).select ' Dplace le curseur une ligne au dessous de B3Activecell.Offset(0,1).select

    Dplacer le curseur

  • 5/28/2018 Gestion Des Cellules VBA

    3/61

    Activecell.Offset(nb_lignes,nb_colonnes).Select

    Activecell.Offset(nb_lignes,nb_colonnes).Select dplace le curseur du nombre de lignes et de colonnesspcifis.

    Range("A1").Select 'Se positionne en A1ActiveCell.Offset(0; 1).Select 'se dcale droite dune celluleActiveCell.Offset(1; 0).Select ' Se dcale en bas dune cellule

    Masquer la mise jour de l'cran

    Application.ScreenUpDating=True/False

    Application.ScreenUpdating=Falsedsactive la mise jour de l'cran.Application.ScreenUpdating=Truela ractive.

    Application.ScreenUpdating=False........Application.ScreenUpdating=True

    Champ.End(xlDown-XlUp-XlToRight-XlToLeft)

    champ.End(XlDown)reprsente:- la dernire cellule d'un bloc de cellulespleines dune colonne (2 minimum) en dplaant

    le curseur vers le bas.

    - ou la prochaine cellule pleine d'un bloc videen dplaant le curseur vers le bas.

    Range("A1").End(xlDown).Select ' positionne sur A4Range("A1", [A1].End(xlDown)).Select ' slectionne A1:A4Range("A4").End(xlDown).Select ' positionne sur A7

    champ.End(XlUp)reprsente:- la dernire cellule d'un bloc de cellulespleines dune colonne (2 minimum) en dplaant

    le curseur vers le haut.- ou la prochaine cellule pleine d'un bloc videen dplaant le curseur vers le haut.

    Range("A7").End(xlUp).Select ' slectionne A4Range("A65000").End(xlUp).Select ' slectionne A10

  • 5/28/2018 Gestion Des Cellules VBA

    4/61

    champ.End(XlToRight)et champ.End(XlToLeftt)correspondent un dplacementvers la droite et vers la gauche.

    Range("A1").End(xlToRight).Select ' slectionne D1

    Slectionner la rgion courante

    CurrentRegion

    champ.CurrentRegionslectionne les cellules autour du champ spcifi.

    Range("A1").CurrentRegion.Select ' slectionne les cellules autour de A1Range("A1").CurrentRegion.Resize(, 1).Select ' slectionne la premire colonne

    Range("A1").currentregion.SelectSelection.Offset(1, 0).Resize(Selection.Rows.Count - 1).Select ' Sauf la premire ligne

    Range("A1").CurrentRegion.PrintPreview ' AperuRange("A1").CurrentRegion.PrintOut ' Impression

    Rdfinir la taille d'un champ

    Resize(lignes,colonnes)

    Redfinit la taille d'un champ.

    Range("A1").Resize(1,4).Select ' slectionne A1:D1

    Range("A1").CurrentRegion.SelectSelection.Offset(1).Resize(Selection.Rows.Count - 1).Select ' enlve la premire ligne

    Slectionner les cellules particulires

    Champ.SpecialCells(type,valeur)

    -SpecialCellspermet de slectionner des cellules particulires. C'est l'quivalentde la commande Edition/Atteindre.

    SpecialCells(xlCellTypeBlanks) Cellules vides

  • 5/28/2018 Gestion Des Cellules VBA

    5/61

    Selection.SpecialCells(xlCellTypeVisible)

    SpecialCells(xlCellTypeLastCell)

    Cellules visiblesDernire cellule de la feuille

    -Si typea la valeur xlCellTypeConstantsou xlCellTypeFormulas, valeurspcifie le type de cellules: nomtexte,valeurs logiques, erreurs.

    Cells.SpecialCells(xlLastCell).Select ' Slectionne la dernire cellule de la feuilleCells.SpecialCells(xlCellTypeConstants, 1).Select ' Slectionne les cellules numriques de la feuilleCells.SpecialCells(xlCellTypeConstants, 2).Select ' Slectionne le texte de la feuilleCells.SpecialCells(xlCellTypeConstants, 23).Select ' Slectionne les constantes de la feuilleRange("A:A").SpecialCells(xlCellTypeConstants, 23).Select ' Slectionne les constantes de la colonne A

    Supprimer les lignes vides en colonne A

    On Error Resume NextRange("A:A").SpecialCells(xlCellTypeBlanks).EntireRow.Delete

    Supprimer les cellules vides en colonne A

    [A:A].SpecialCells(xlCellTypeBlanks).Delete Shift:=xlUp

    Copier les lignes non vides en colonne A sur un autre onglet

    [A:A].SpecialCells(xlCellTypeConstants, 23).EntireRow.Copy Sheets(2).[A65000].End(xlUp).Offset(1, 0)

    RAZ des zones dverrouilles

    Sub raz()ActiveSheet.Unprotect Password:="moi"For Each c In Cells.SpecialCells(xlCellTypeConstants, 23)

    If c.Locked = False Then c.Value = EmptyNext cActiveSheet.Protect Password:="moi"ActiveSheet.EnableSelection = xlUnlockedCells

    End Sub

    Slectionner la zone utilise d'une feuille

    UsedRange

    Slectionne la zone utilise dans la feuille active.

    ActiveSheet.UsedRange.Select

    Adresse

    MsgBox ActiveSheet.UsedRange.Address

    Slection de la dernire cellule

  • 5/28/2018 Gestion Des Cellules VBA

    6/61

    Range(Split(ActiveSheet.UsedRange.Address, ":")(1)).Select

    Union et Intersection de champs

    Union(champ1,Champ2,)

    Donne l'union de champ1,champ2,...

    Union([A2:B2], [A4:B4]).SelectUnion([A2:B2], [A4:B4]).Copy [A20]

    Copie des cellules pleines de plusieurs champs dans un seul champ

    Les cellul es sont dans la mme colonne:

    Range("A1:A5,A10:A15").SpecialCells(xlCellTypeConstants, 23).Copy [D2]

    Les cellul es ne sont pas dans la mme colonne:

    i = 1For Each c In Union([A3:B7], [C1:C5], [E3:E7]).SpecialCells(xlCellTypeConstants, 23)

    i = i + 1Cells(i, 7) = c

    Next c

  • 5/28/2018 Gestion Des Cellules VBA

    7/61

    Slectionne les cellules non verrouilles

    Sub SelectNonVer()Set champ = NothingFor Each c In ActiveSheet.UsedRange

    If Not c.Locked ThenIf champ Is Nothing ThenSet champ = c

    ElseSet champ = Union(champ, c)

    End IfEnd If

    Next cchamp.Select

    End Sub

    Sub auto_open()

    On Error Resume NextCommandBars("BarreVer").DeleteDim barre As CommandBarDim bouton As CommandBarControlSet barre = CommandBars.Add(Name:="BarreVer")

    barre.Visible = TrueSet bouton = CommandBars("BarreVer").Controls.Add(Type:=msoControlButton)

    bouton.Style = msoButtonCaptionbouton.OnAction = "SelectNonVer"bouton.Caption = "Selection cellules non verrouilles"

    End Sub

    Ajout de listes

  • 5/28/2018 Gestion Des Cellules VBA

    8/61

    Sub AjoutListes()[F2:F1000].ClearContentsSet champ = [A2].CurrentRegion.Offset(1)For i = 1 To champ.Columns.CountRange("F65000").End(xlUp).Offset(1).Resize(champ.Rows.Count) = Application.Index(champ.Value, , i)

    Next i

    Intersect(champ1,champ2,)

    Donne l'intersection de champ1,champ2,...

    Renvoi Nothingsi l'intersection ne comporte aucune cellule.

    Intersect(Range("A2:D2"), Range("B1:C5")).Select

    Rechercher une information

    Find()

    Champ.Find(What:=valeur,After:=cellule, LookIn:=xlFormulas/XlValues,LookAt:= xlPart/XlWhole,SearchOrder:=xlByRows/XlByColumns,SearchDirection:=xlNext/XlPrevious,MatchCase:=True/False,SearchFormat:=False)

    Find Synthse

    Recherche un texte dans une champ. Findcorrespond la commande Edition/Rechercher.

    LookAt:=xlPart/XlWholedfinit si la comparaison se fait sur une partie ou la totalit de la cellule.Par dfaut, ce paramtre conserve la valeur prcdente.

    LookIn:=xlFormulas/XlValuesspcifie si la recherche se fait dans la formule ou le rsultat. Par dfaut, ce

    http://boisgontierjacques.free.fr/fichiers/jb-Find.ziphttp://boisgontierjacques.free.fr/fichiers/jb-Find.ziphttp://boisgontierjacques.free.fr/fichiers/jb-Find.zip
  • 5/28/2018 Gestion Des Cellules VBA

    9/61

    paramtre conserve la valeur prcdente.

    Exemple : On cherche un nom

    Mthode 1 (gestion d'erreur)

    Sub cherche()nomCherche = InputBox("Nom cherch? ")On Error Resume NextErr = 0

    Range("A2:A14").Find(What:=nomCherche, LookIn:=xlValues).SelectIf Err = 0 Then

    Range(ActiveCell, ActiveCell.End(xlToRight)).SelectElse

    MsgBox "Pas trouv"End IfOn Error GoTo 0

    End Sub

    Mthode 2

    Sub cherche2()nomCherche = InputBox("Nom cherch? ")Set result = Range("A2:A14").Find(What:=nomCherche, LookIn:=xlValues)If result Is Nothing Then

    MsgBox "Non trouv"Else

    Range(result, result.End(xlToRight)).SelectEnd If

    End Sub

    Donne toutes les occurrences :

    Sub cherche_plusieurs()

  • 5/28/2018 Gestion Des Cellules VBA

    10/61

    [A:C].Interior.ColorIndex = xlNonenom = InputBox("Nom cherch?")If nom = "" Then Exit SubSet c = [A:A].Find(nom, , , xlWhole)If Not c Is Nothing Then

    premier = c.AddressDoc.Resize(, 3).Interior.ColorIndex = 4Set c = [A:A].FindNext(c)

    Loop While Not c Is Nothing And c.Address premierEnd If

    End Sub

    Non concordance

    Colorie les objets de la colonne A non trouvs dans D2:D5.

    NonConcordance

    Sub coloriage()Set typecat = Range("D2:D5")Set inventaire = Range("A2:A" & [A65000].End(xlUp).Row)inventaire.Interior.ColorIndex = xlNoneFor Each c In inventaire

    If typecat.Find(c, MatchCase:=True) Is Nothing Then c.Interior.ColorIndex = 3Next c

    End Sub

    Recherche de la dernire ligne ou dernire colonne de la feuille ou d'un champ

    Sur cet exemple, nous recherchons la dernire ligne et la dernire colonne de la feuille.

    Find Dernier.xls

    http://boisgontierjacques.free.fr/fichiers/Cellules/NonConcordance.xlshttp://boisgontierjacques.free.fr/fichiers/Cellules/NonConcordance.xlshttp://boisgontierjacques.free.fr/fichiers/FindDernier2.xlshttp://boisgontierjacques.free.fr/fichiers/FindDernier2.xlshttp://boisgontierjacques.free.fr/fichiers/FindDernier2.xlshttp://boisgontierjacques.free.fr/fichiers/Cellules/NonConcordance.xls
  • 5/28/2018 Gestion Des Cellules VBA

    11/61

    Sub dernireligneFeuille()Cells.Find("*", , , , xlByRows, xlPrevious).Select

    End Sub

    Sub dernireColonneFeuille()Cells.Find("*", , , , xlByColumns, xlPrevious).SelectEnd Sub

    Sub IntersectionDerLigneColonneFeuille()Cells(Cells.Find("*", , , , xlByRows, xlPrevious).Row, Cells.Find("*", , , ,

    xlByColumns, xlPrevious).Column).SelectEnd Sub

    Nombre de lignes et de colonnes de la feuille.

    Sub nbLignesFeuille()MsgBox Sheets(1).Cells.Find("*", , , , xlByRows, xlPrevious).Row & " Lignes"MsgBox Sheets(1).Cells.Find("*", , , , xlByColumns, xlPrevious).Column & " Colonnes"

    End Sub

    Sur cet exemple, nous recherchons la dernire ligne et la dernire colonne d'un champ.

    Sub dernireligneChamp()[B6:D10].Find("*", , , , xlByRows, xlPrevious).Select

    End Sub

  • 5/28/2018 Gestion Des Cellules VBA

    12/61

    Sub dernireColonneChamp()[B6:D10].Find("*", , , , xlByColumns, xlPrevious).Select

    End Sub

    Sub IntersectionDerLigneColonneChamp()

    Cells([B6:D10].Find("*", , , , xlByRows, xlPrevious).Row, [B6:D10].Find("*", , , , xlByColumns,xlPrevious).Column).SelectEnd Sub

    Slectionne de la ligne1 la dernire ligne des colonnes D :E

    x = "D:E"Intersect(Range(x), Range("1:1")).Resize(Range(x).Find("*", searchorder:=xlByRows,SearchDirection:=xlPrevious).Row).Select

    Recherche de date

    Find Dates.xls

    Le format de la date cherche est le mme que le format des dates du champ de recherche

    Sub RechercheDateFind()d = InputBox("Date? jj/mm/aa")If d "" ThenOn Error Resume Next[L:L].Find(What:=CDate(d), LookIn:=xlValues).SelectIf Err 0 Then MsgBox "Inconnu"

    End IfEnd Sub

    On adapte le format de la date recherche au format des dates du champ de recherche

    Sub RechercheDateFind2()d = InputBox("Date? jj/mm/aa")If d "" ThenOn Error Resume Next[N:N].Find(What:=Format(CDate(d), "dddd d mmmm yyyy"), LookIn:=xlValues).Select

    If Err 0 Then MsgBox "Inconnu"End IfEnd Sub

    Avec la fonction Equiv(), le format des dates du champ de recherche n'a pas d'importance

    http://boisgontierjacques.free.fr/fichiers/FindDates.xlshttp://boisgontierjacques.free.fr/fichiers/FindDates.xlshttp://boisgontierjacques.free.fr/fichiers/FindDates.xls
  • 5/28/2018 Gestion Des Cellules VBA

    13/61

    Sub RechercheDateColonneEquiv()d = InputBox("Date?")If IsDate(d) Thenp = Application.Match(CDbl(CDate(d)), [L2:L10000], 0)If IsError(p) Then

    MsgBox "Inconnu"Else[L2].Offset(p - 1, 0).Select

    End IfElse

    MsgBox "n'est pas une date"End If

    End Sub

    Remplace les abrviations slectionnes par les libells

    ChercheRemplaceFind

    Sub traduc()For Each c In Selectiona = Split(c, " ")For i = LBound(a) To UBound(a)Set temp = [abrev].Find(what:=a(i), LookAt:=xlWhole)If Not temp Is Nothing Then a(i) = temp.Offset(, 1).Value

    Next i

    c.Value = Join(a, " ")NextEnd Sub

    ou

    Sub traduc2()abr = [abrev].Value ' lecture dans un tableaulib = [abrev].Offset(, 1).Value ' lecture dans un tableauFor Each c In Selectiona = Split(c, " ")

    For i = LBound(a) To UBound(a)p = Application.Match(a(i), abr, 0)

    http://boisgontierjacques.free.fr/fichiers/Cellules/FindReplace2.xlshttp://boisgontierjacques.free.fr/fichiers/Cellules/FindReplace2.xlshttp://boisgontierjacques.free.fr/fichiers/Cellules/FindReplace2.xls
  • 5/28/2018 Gestion Des Cellules VBA

    14/61

    If Not IsError(p) Then a(i) = lib(p, 1)Next ic.Value = Join(a, " ")

    NextEnd Sub

    Recherche de nombres avec Find

    ValCherche = InputBox("Valeur recherche")If IsNumeric(ValCherche) Then ValCherche = CDbl(ValCherche)Cells.Find(What:=ValCherche).Activate

    Colorie les occurences du mot cherch dans un champ

    ChercheMotChamp

    Colorie les occurences du mot cherch dans un champ

    ChercheMot

    http://boisgontierjacques.free.fr/fichiers/Cellules/ChercheMotChamp.xlshttp://boisgontierjacques.free.fr/fichiers/Cellules/ChercheMotChamp.xlshttp://boisgontierjacques.free.fr/fichiers/Cellules/ChercheMotChamp2.xlshttp://boisgontierjacques.free.fr/fichiers/Cellules/ChercheMotChamp2.xlshttp://boisgontierjacques.free.fr/fichiers/Cellules/ChercheMotChamp2.xlshttp://boisgontierjacques.free.fr/fichiers/Cellules/ChercheMotChamp.xls
  • 5/28/2018 Gestion Des Cellules VBA

    15/61

    Private Sub Worksheet_Change(ByVal Target As Range)If Target.Address = "$A$2" Then

    If [iv1] = "" Then[A4:A1000].Copy [IV4][iv1] = "archiv"

    Else[IV4:IV1000].Copy [A4]

    End Ifmot = TargetFor Each c In [A4:A1000]p = 1Do While p > 0p = InStr(p, UCase(c), UCase(mot))If p > 0 Then

    c.Characters(p, Len(mot)).Font.ColorIndex = 3p = p + Len(mot)

    End IfLoop

    Next cEnd If

    End Sub

    Nettoyage d'une feuille

    Parfois, le UsedRanged'une feuille (Maj+Ctrl+fin) comporte des lignes et des colonnes aprs la dernire cellpleine.Pour supprimer les lignes et colonnes inutilises de la feuille:-Nettoie Used Range-

    Sub SupLigneColTrop()Range(Cells(Cells.Find("*", , , , xlByColumns, xlPrevious).Column + 1), Cells(1, 254)).EntireColumn.Dele

    http://boisgontierjacques.free.fr/fichiers/Cellules/UsedRangeNettoieLignesColonnes.xlshttp://boisgontierjacques.free.fr/fichiers/Cellules/UsedRangeNettoieLignesColonnes.xlshttp://boisgontierjacques.free.fr/fichiers/Cellules/UsedRangeNettoieLignesColonnes.xlshttp://boisgontierjacques.free.fr/fichiers/Cellules/UsedRangeNettoieLignesColonnes.xls
  • 5/28/2018 Gestion Des Cellules VBA

    16/61

    Range(Cells(Cells.Find("*", , , , xlByRows, xlPrevious).Row + 1, 1), Cells(65536, 1)).EntireRow.DeleteEnd Sub

    Sub VisuUsedRange()ActiveSheet.UsedRange.Select

    End Sub

    Recherche 2 critres

    Recherche matricielle 2 critres

    On suppose que le nom cherch est en F2 et le prnom en G2 . Nomet Prenomsont 2 champs nomms.

    RechercheMat2Critres

    Sub Recherche()p = Evaluate("match(1,(nom=F2)*(prenom=G2),0)")If Not IsError(p) Then

    Range("nom")(1).Offset(p - 1).SelectElseMsgBox "inconnu"

    End IfEnd Sub

    Le nom et le prnom sont dans des variables n et P.

    Sub Recherche2()n = "Martin"

    http://boisgontierjacques.free.fr/fichiers/Cellules/RechercheMatricielle2Criteres.xlshttp://boisgontierjacques.free.fr/fichiers/Cellules/RechercheMatricielle2Criteres.xlshttp://boisgontierjacques.free.fr/fichiers/Cellules/RechercheMatricielle2Criteres.xls
  • 5/28/2018 Gestion Des Cellules VBA

    17/61

    p = "Daniel"pos = Evaluate("match(1,(nom=""" & n & """)*(prenom=""" & p & """),0)")If Not IsError(pos) Then

    Range("nom")(1).Offset(pos - 1).SelectElse

    MsgBox "inconnu"End IfEnd Sub

    Recherche 2 critres dans un tableau

    Reherche2crit

    Sub RechercheMultiCritres()n = "titi"

    p = "Jean"

    a = [NOM].Resize(, 3)' recherche dans tableau + rapideFor i = 1 To UBound(a, 1)

    If a(i, 1) = n And a(i, 2) = p ThenMsgBox a(i, 3)

    End IfNext i

    End Sub

    Recherche 2 critres avec find

    Sub FindMultiCritres()n = "titi"

    p = "jean"Set c = [NOM].Find(n, LookIn:=xlValues, LookAt:=xlWhole)If Not c Is Nothing Thenpremier = c.AddressSet temp = c.Offset(, 1)DoSet temp = Union(temp, c.Offset(, 1))Set c = [NOM].FindNext(c)

    Loop While Not c Is Nothing And c.Address premier

    End If'-- recherche prnomSet c = temp.Find(p, LookIn:=xlValues, LookAt:=xlWhole)If Not c Is Nothing Then

    MsgBox c.Offset(, 1)ElseMsgBox "non trouv"

    End IfEnd Sub

    Recherche Find avec caractres accentus

    Cration d'une BD partir de fiches

    http://boisgontierjacques.free.fr/fichiers/Cellules/Find2Criteres3.xlshttp://boisgontierjacques.free.fr/fichiers/Cellules/Find2Criteres3.xlshttp://boisgontierjacques.free.fr/fichiers/Cellules/Find2Criteres3.xls
  • 5/28/2018 Gestion Des Cellules VBA

    18/61

    On recherche la position du mot prnomdans les cellules. Prnomest crit avec ou sans accent.On remplace la recherche du mot Prnompar la recherche de Pr?nom.

    Find Accent

    Sub CreBD()Set f = Sheets("BD")ligneBD = 2For Each c In f.[A:A].SpecialCells(xlCellTypeConstants, 23).Areasp = InStr(c.Cells(1, 1), ":") + 1f.Cells(ligneBD, 3) = Trim(Mid(c.Cells(1, 1), p))f.Cells(ligneBD, 4) = cherche("Pr?nom", c)f.Cells(ligneBD, 5) = cherche("Adresse", c)f.Cells(ligneBD, 6) = cherche("Tph", c)

    ligneBD = ligneBD + 1Next c

    End Sub

    Function cherche(quoi, o)Set rsultat = o.Find(quoi, LookIn:=xlValues, LookAt:=xlPart)If Not rsultat Is Nothing Thenp = InStr(rsultat.Value, ":") + 1If p > 0 Then cherche = Trim(Mid(rsultat.Value, p))

    End IfEnd Function

    Recherche de toutes les cellules qui contiennent un mot accentu

    On recherche toutes les cellules qui contiennenttudiantavec ou sans accent.

    On remplace par le joker ?

    valeurChercheJoker = "?tudiant"

    Find Accent (0,04 s pour 25.000 lignes)

    Find Recherche Accent

    http://boisgontierjacques.free.fr/fichiers/Cellules/FindAccent.xlshttp://boisgontierjacques.free.fr/fichiers/Cellules/FindAccent.xlshttp://boisgontierjacques.free.fr/fichiers/Cellules/FindAccent.xlshttp://boisgontierjacques.free.fr/fichiers/Cellules/FindAccent.xlshttp://boisgontierjacques.free.fr/pages_site/RechercheAccent.htmhttp://boisgontierjacques.free.fr/pages_site/RechercheAccent.htmhttp://boisgontierjacques.free.fr/pages_site/RechercheAccent.htmhttp://boisgontierjacques.free.fr/fichiers/Cellules/FindAccent.xlshttp://boisgontierjacques.free.fr/fichiers/Cellules/FindAccent.xls
  • 5/28/2018 Gestion Des Cellules VBA

    19/61

    Sub FindAccent()valeurCherche = "tudiant"valeurChercheJoker = "?tudiant"Set champRecherche = [A:A]Set rsultat = champRecherche.Find(valeurChercheJoker, LookIn:=xlValues, LookAt:=xlPart)If Not rsultat Is Nothing Then

    premier = rsultat.AddressDo

    If sansAccent(rsultat.Value) = sansAccent(valeurCherche) Then rsultat.Interior.ColorIndex = 4Set rsultat = champRecherche.FindNext(rsultat)Loop While Not rsultat Is Nothing And rsultat.Address premier

    End IfEnd Sub

    Function sansAccent(chaine)

    codeA = ""codeB = "EEEEOeeeeacuouii"temp = chaineFor i = 1 To Len(temp)p = InStr(codeA, Mid(temp, i, 1))If p > 0 Then Mid(temp, i, 1) = Mid(codeB, p, 1)

    NextsansAccent = temp

    End Function

    Avec une recherche squentielle (0,75s pour 25.000 lignes)

    Sub RechSeqAccent()valeurCherche = "tudiant"For Each c In Range([A2], [A65000].End(xlUp))

    If sansAccent(c) = sansAccent(valeurCherche) Then c.Interior.ColorIndex = 4Next c

    End Sub

    Recherche d'un mot dans tout le classeur

    Donne la liste des feuilles d'un classeur contenant le mot cherch.

    Recherche mot dans tout le classeur

    http://boisgontierjacques.free.fr/fichiers/Formulaire/FormChercheMotToutClasseurFind.xlshttp://boisgontierjacques.free.fr/fichiers/Formulaire/FormChercheMotToutClasseurFind.xlshttp://boisgontierjacques.free.fr/fichiers/Formulaire/FormChercheMotToutClasseurFind.xls
  • 5/28/2018 Gestion Des Cellules VBA

    20/61

    Private Sub B_ok_Click()If Me.TextBox1 = "" Then Exit SubApplication.DisplayAlerts = FalseOn Error Resume NextSheets("Temp").Delete

    On Error GoTo 0Sheets.Add after:=Sheets(Sheets.Count)ActiveSheet.Name = "Temp"[A1] = Me.TextBox1ligne = 2For i = 1 To Sheets.Count - 1With Sheets(i).Cells

    If IsDate(Me.TextBox1) ThenSet c = .Find(CDate(Me.TextBox1), LookIn:=xlValues, LookAt:=xlPart)

    ElseSet c = .Find(Me.TextBox1, LookIn:=xlValues, LookAt:=xlPart)

    End IfIf Not c Is Nothing Thenpremier = c.AddressDotemp = [A1]Sheets("temp").Hyperlinks.Add Anchor:=Sheets("temp").Cells(ligne, 1), _

    Address:="", SubAddress:="'" & Sheets(i).Name & "'" & "!" & c.Address, TextToDisplay:=tempCells(ligne, 2) = Sheets(i).NameCells(ligne, 3) = c.Addressligne = ligne + 1Set c = .FindNext(c)

    Loop While Not c Is Nothing And c.Address premierEnd If

    End WithNext i

    End Sub

    Supprimer les lignes vides

    Cellules vides dans la colonne A

    On Error Resume Next

  • 5/28/2018 Gestion Des Cellules VBA

    21/61

    [A:A].SpecialCells(xlCellTypeBlanks).EntireRow.Delete

    Cellules vides sur toutes les colonnes

    For i = [A65000].End(xlUp).Row To 1 Step -1

    If Application.CountA(Rows(i)) = 0 Then Rows(i).DeleteNext i

    Cellules vides de la colonne B la colonne H

    SupLignesVidesColonne

    Sub suplignesvides()Set f = Sheets("feuil1")Application.ScreenUpdating = FalseFor i = f.[A65000].End(xlUp).Row To 2 Step -1

    If Application.CountA(Range(f.Cells(i, "b"), f.Cells(i, "h"))) = 0 Then f.Rows(i).Delete

    Next iEnd Sub

    Sub supLignesVides2()Application.ScreenUpdating = FalseColumns("b:b").Insert Shift:=xlToRightRange("B2:B" & [A65000].End(xlUp).Row).FormulaR1C1 = "=IF(COUNTA(RC[1]:RC[7])=0,""sup"",0)"Range("B2:B65000").SpecialCells(xlCellTypeFormulas, 2).EntireRow.Delete

    Columns("b:b").Delete Shift:=xlToLeftEnd Sub

    Suppression des lignes et colonnes vides

    For i = ActiveSheet.UsedRange.Rows.Count To 1 Step -1If Application.CountA(Rows(i)) = 0 Then Rows(i).Delete

    Next i

    http://boisgontierjacques.free.fr/fichiers/Cellules/SupLignesVides2.xlshttp://boisgontierjacques.free.fr/fichiers/Cellules/SupLignesVides2.xlshttp://boisgontierjacques.free.fr/fichiers/Cellules/SupLignesVides2.xls
  • 5/28/2018 Gestion Des Cellules VBA

    22/61

    For i = ActiveSheet.UsedRange.Columns.Count To 1 Step -1If Application.CountA(Columns(i)) = 0 Then Columns(i).Delete

    Next i

    Slection de lignes

    On veut slectionner les lignes des annes 2008.

    Selection Lignes 2008

    Sub Selection2008()Range("E2:E" & [A65000].End(xlUp).Row).FormulaR1C1 = "=IF(YEAR(RC[-1])=2008,""ok"")"[E:E].SpecialCells(xlCellTypeFormulas, 2).EntireRow.Select

    [E:E].ClearContentsEnd Sub

    Suppression de lignes

    Suppression classique

    On supprime les lignes qui contiennent xxxx dans la premire colonne

    Application.ScreenUpdating = FalseApplication.Calculation = xlCalculationManual

    For i = [A65000].End(xlUp).Row To 1 Step -1If Cells(i, 1) = "xxxx" Then Rows(i).Delete Shift:=xlUp

    http://boisgontierjacques.free.fr/fichiers/Cellules/SelectionLignes2008.xlshttp://boisgontierjacques.free.fr/fichiers/Cellules/SelectionLignes2008.xlshttp://boisgontierjacques.free.fr/fichiers/Cellules/SelectionLignes2008.xls
  • 5/28/2018 Gestion Des Cellules VBA

    23/61

    Next iApplication.Calculation = xlCalculationAutomatic

    ou

    [A:A].Replace "xxxx", ""[A:A].SpecialCells(xlCellTypeBlanks).EntireRow.Delete

    Avec le filtre automatique

    SupLignesFiltreAuto

    Sub SupLignesFiltreAuto()[A1].AutoFilter Field:=1, Criteria1:="xxxx"Range("_FilterDataBase").Offset(1, 0).Resize(Range("_FilterDataBase"). _

    Rows.Count - 1).SpecialCells(xlCellTypeVisible).Delete Shift:=xlUp[A1].AutoFilter

    End Sub

    Avec le filtre labor

    Supprime les exclus - xx yy zz - ( 0,1 S pour 10.000 lignes).Au lieu de supprimer les lignes, on recopie dans une autre feuille ce qui ne doit pas tre supprim.

    SupLignesFiltre

    Sub sup_filtre()Sheets("result").[A:C].ClearSheets("BD").Range("A1:C12000").AdvancedFilter Action:=xlFilterCopy, _CriteriaRange:=Sheets("BD").Range("F1:F2"), CopyToRange:=Sheets("result").Range("A1")Sheets("result").Select

    End Sub

    http://boisgontierjacques.free.fr/fichiers/Cellules/SupLignesFiltreAuto.xlshttp://boisgontierjacques.free.fr/fichiers/Cellules/SupLignesFiltreAuto.xlshttp://boisgontierjacques.free.fr/fichiers/Filtre/SupLignesFiltreElabore.xlshttp://boisgontierjacques.free.fr/fichiers/Filtre/SupLignesFiltreElabore.xlshttp://boisgontierjacques.free.fr/fichiers/Filtre/SupLignesFiltreElabore.xlshttp://boisgontierjacques.free.fr/fichiers/Cellules/SupLignesFiltreAuto.xls
  • 5/28/2018 Gestion Des Cellules VBA

    24/61

    A l'aide d'une colonne intermdiaire:

    SupLignes

    Sub supLignes()Application.ScreenUpdating = FalseColumns("b:b").Insert Shift:=xlToRightRange("B2:B" & [A65000].End(xlUp).Row).FormulaR1C1 = "=IF(RC[-1]=""xxxx"",""sup"",0)"Range("B2:B65000").SpecialCells(xlCellTypeFormulas, 2).EntireRow.DeleteColumns("b:b").Delete Shift:=xlToLeft

    End Sub

    Suppression rapide

    On regroupe les lignes supprimer en fin de tableau.La suppression des lignes ainsi regroupes en fin de tableau est trs rapide.L'ordre initial des lignes n'est pas modifi.

    -on repre les lignes supprimer avec la valeur Sup-on tri les lignes . Les lignes contenant Supse retrouvent la fin-on supprime les lignes contenant Sup

    (0,2sec pour 20.000 lignes)

    SupLignesRapide

    SupLignesRapideCouleur

    http://boisgontierjacques.free.fr/fichiers/Cellules/SupLignes.xlshttp://boisgontierjacques.free.fr/fichiers/Cellules/SupLignes.xlshttp://boisgontierjacques.free.fr/fichiers/Cellules/SupLignesRapide.xlshttp://boisgontierjacques.free.fr/fichiers/Cellules/SupLignesRapideCouleur.xlshttp://boisgontierjacques.free.fr/fichiers/Cellules/SupLignesRapideCouleur.xlshttp://boisgontierjacques.free.fr/fichiers/Cellules/SupLignesRapideCouleur.xlshttp://boisgontierjacques.free.fr/fichiers/Cellules/SupLignesRapide.xlshttp://boisgontierjacques.free.fr/fichiers/Cellules/SupLignes.xls
  • 5/28/2018 Gestion Des Cellules VBA

    25/61

    Sub supLignesRapide()Application.ScreenUpdating = FalseColumns("b:b").Insert Shift:=xlToRightRange("B2:B" & [A65000].End(xlUp).Row).FormulaR1C1 = "=IF(RC[-1]=""xxxx"",""sup"",0)"[B:B].Value = [B:B].Value

    [A2].CurrentRegion.Sort Key1:=Range("B2"), Order1:=xlAscending, Header:=xlGuessOn Error Resume NextRange("B2:B65000").SpecialCells(xlCellTypeConstants, 2).EntireRow.DeleteColumns("b:b").Delete Shift:=xlToLeft

    End Sub

    Autre mthode (0,15 sec pour 20.000 lignes)

    Sub supLignesRapide2()Application.ScreenUpdating = Falsea = Range("A2:A" & [A65000].End(xlUp).Row)

    For i = LBound(a) To UBound(a)If a(i, 1) "xxxx" Then a(i, 1) = 0 Else a(i, 1) = "sup"

    Next iColumns("b:b").Insert Shift:=xlToRight[B2].Resize(UBound(a)) = a[A2].CurrentRegion.Sort Key1:=Range("B2"), Order1:=xlAscending, Header:=xlGuessOn Error Resume NextRange("B2:B65000").SpecialCells(xlCellTypeConstants, 2).EntireRow.DeleteColumns("b:b").Delete Shift:=xlToLeft

    End Sub

    Supprimer des lignes commenant par

    Sub SupLignes3()Application.ScreenUpdating = FalseFor i = [A65000].End(xlUp).Row To 1 Step -1

    If Left(Cells(i, 1), 4) "SCVT" Then Rows(i).DeleteNext i

    End Sub

    Suppression de lignes sur 3 colonnes

  • 5/28/2018 Gestion Des Cellules VBA

    26/61

    For i = [A65000].End(xlUp).Row To 1 Step -1If Cells(i, 1) = "" Then Cells(i, 1).Resize(1, 3).Delete Shift:=xlUp

    Next i

    Suppression de cellules vides

    [A:D].SpecialCells(xlCellTypeBlanks).Delete Shift:=xlUp

    Supprime une ligne sur 2 (rapide)

    Sup1LigneSur2

    Sub supLignes1sur2()Application.ScreenUpdating = FalseColumns("b:b").Insert Shift:=xlToRightRange("B2:B" & [A65000].End(xlUp).Row).FormulaR1C1 = "=if(MOD(ROW(),2)=1,""sup"",0)"Range("B2:B65000").SpecialCells(xlCellTypeFormulas, 2).EntireRow.DeleteColumns("b:b").Delete Shift:=xlToLeft

    End Sub

    Sub supLignes1sur2Rapide()

    Application.ScreenUpdating = FalseColumns("b:b").Insert Shift:=xlToRightRange("B2:B" & [A65000].End(xlUp).Row).FormulaR1C1 = "=if(MOD(ROW(),2)=1,""sup"",0)"[B:B].Value = [B:B].Value[A2].CurrentRegion.Sort Key1:=Range("B2"), Order1:=xlAscending, Header:=xlGuessRange("B2:B65000").SpecialCells(xlCellTypeConstants, 2).EntireRow.DeleteColumns("b:b").Delete Shift:=xlToLeft

    End Sub

    Masquage de lignes

    On masque les lignes si cellules vides dans colonne B

    http://boisgontierjacques.free.fr/fichiers/Cellules/Sup1LignSur2.xlshttp://boisgontierjacques.free.fr/fichiers/Cellules/Sup1LignSur2.xlshttp://boisgontierjacques.free.fr/fichiers/Cellules/Sup1LignSur2.xls
  • 5/28/2018 Gestion Des Cellules VBA

    27/61

    On Error Resume NextRange("b:b").SpecialCells(xlCellTypeBlanks).EntireRow.Hidden = True

    On masque les lignes si cellules vides dans toutes les colonnes

    For i = 1 To [A65000].End(xlUp).RowIf Application.CountA(Rows(i)) = 0 Then Rows(i).Hidden = TrueNext i

    Pour faire apparatre toutes les lignes de la feuille

    Cells.EntireRow.Hidden = False

    Masquer des groupes de lignes ou de colonnes

    Range("5:10,15:20,25:30").EntireRow.Hidden = True

    Range("B:D,G:J").EntireColumn.Hidden = True

    Insre une ligne vide entre les lignes

    Range("A65000").End(xlUp).SelectFor i = 1 To Selection.currentregion.Rows.Count - 1ActiveCell.EntireRow.InsertActiveCell.Offset(-1, 0).Select

    NextRange("A2:A1000").SpecialCells(xlCellTypeBlanks).EntireRow.Delete

    Suppression de doublons

    Sub supDoublonsTradi()Application.ScreenUpdating = False

  • 5/28/2018 Gestion Des Cellules VBA

    28/61

    Application.Calculation = xlCalculationManual[A1].Sort Key1:=Range("A2"), Order1:=xlAscending, Header:=xlGuessFor i = [A65000].End(xlUp).Row To 2 Step -1

    If Cells(i, 1) = Cells(i - 1, 1) Then Rows(i).DeleteNext i

    Application.Calculation = xlCalculationAutomaticEnd Sub

    Suppression de doublons rapide

    Lorsque le nombre de lignes devient important et si le taux de suppression est lev, la mthode ci dessousest plus rapide( 1 s pour 10000 lignes contre 7 s).

    Principe:-Formule =SI(A2=A1;1;0) pour reprer les doublons avec la valeur 1-Tri pour regrouper les lisgnes supprimer-Remplacer 1 par un vide-Slection et Suppression

    -SupDoublonsRapide-

    Sub SupRapide1Critere()Application.ScreenUpdating = False[A1].Sort Key1:=Range("A2"), Order1:=xlAscending, _

    Header:=xlGuessColumns("b:b").Insert Shift:=xlToRight[B1] = "ColB"[B2].FormulaR1C1 = "=IF(RC[-1]=R[-1]C[-1],1,0)"[B2].AutoFill Destination:=Range("B2:B" & [A65000].End(xlUp).Row)[B:B].Value = [B:B].Value[A2].CurrentRegion.Sort Key1:=Range("B2"), Order1:=xlAscending, Header:=xlGuess[B:B].Replace What:="1", Replacement:="", LookAt:=xlPartRange("B2:B65000").SpecialCells(xlCellTypeBlanks).EntireRow.DeleteColumns("b:b").Delete Shift:=xlToLeftEnd Sub

    Sub SupRapide2CriteresColAColB()

    http://boisgontierjacques.free.fr/fichiers/Cellules/SupDoublonsRapideR.xlshttp://boisgontierjacques.free.fr/fichiers/Cellules/SupDoublonsRapideR.xlshttp://boisgontierjacques.free.fr/fichiers/Cellules/SupDoublonsRapideR.xlshttp://boisgontierjacques.free.fr/fichiers/Cellules/SupDoublonsRapideR.xls
  • 5/28/2018 Gestion Des Cellules VBA

    29/61

    Application.ScreenUpdating = False[A1].Sort Key1:=Range("A2"), Order1:=xlAscending, _Key2:=Range("B2"), Order2:=xlAscending, _Header:=xlGuessColumns("b:b").Insert Shift:=xlToRight

    [B1] = "ColB"[B2].FormulaR1C1 = "=IF(AND(RC[-1]=R[-1]C[-1],RC[+1]=R[-1]C[+1]),1,0)"[B2].AutoFill Destination:=Range("B2:B" & [A65000].End(xlUp).Row)[B:B].Value = [B:B].Value[A2].CurrentRegion.Sort Key1:=Range("B2"), Order1:=xlAscending, Header:=xlGuess[B:B].Replace What:="1", Replacement:="", LookAt:=xlPartRange("B2:B65000").SpecialCells(xlCellTypeBlanks).EntireRow.DeleteColumns("b:b").Delete Shift:=xlToLeftEnd Sub

    Suppression de doublons sans modifier l'ordre

    Sur colonne A

    Sub supdoublons()Application.ScreenUpdating = FalseApplication.Calculation = xlCalculationManualSet champ = Range("A1:A" & [A65000].End(xlUp).Row)For i = [A65000].End(xlUp).Row To 1 Step -1

    If Application.CountIf(champ, Cells(i, 1)) > 1 ThenCells(i, 1).Delete Shift:=xlUp ' ou Rows(i).Delete

    End IfNext iApplication.Calculation = xlAutomatic

    End Sub

    Sur colonne A et C

    Rapide si taux de suppression faible. 2 s pour 10.0000 lignes et taux suppression 5%

    Sub OrdreRespectDictionary()Set MonDico = CreateObject("Scripting.Dictionary")Application.ScreenUpdating = Falsei = 2Do While Cells(i, "A") ""

    If Not MonDico.Exists(Cells(i, "A") & Cells(i, "C")) ThenMonDico.Add Cells(i, "A") & Cells(i, "C"), Cells(i, "A") & Cells(i, "C")

  • 5/28/2018 Gestion Des Cellules VBA

    30/61

    i = i + 1Else

    Rows(i).EntireRow.DeleteEnd If

    Loop

    End Sub

    Complter un champ

    [A1:A20].SpecialCells(xlCellTypeBlanks).FormulaR1C1 = "=R[-1]C"[A1:A20].Value = [A1:A20].Value

    Autre cas

    [A1].CurrentRegion.Resize(, 1).SpecialCells(xlCellTypeBlanks).FormulaR1C1 = "=R[-1]C"[A1].CurrentRegion.Resize(, 1).Value = [A1].CurrentRegion.Resize(, 1).Value

    Insre une ligne la position du curseur et copie les formules

    Recopie Formule

    Sub InsreCopieLigne()

    http://boisgontierjacques.free.fr/fichiers/Cellules/InsertionCopieLigneFormule.xlshttp://boisgontierjacques.free.fr/fichiers/Cellules/InsertionCopieLigneFormule.xlshttp://boisgontierjacques.free.fr/fichiers/Cellules/InsertionCopieLigneFormule.xls
  • 5/28/2018 Gestion Des Cellules VBA

    31/61

    ActiveCell.EntireRow.InsertRows(ActiveCell.Row + 1).Copy Rows(ActiveCell.Row)On Error Resume NextRows(ActiveCell.Row).SpecialCells(xlCellTypeConstants, 23).ClearContents

    End Sub

    Recopie la dernire ligne et ne laisse que les formules

    Sub RecopieDerniereLigne()[A65000].End(xlUp).Offset(1, 0).SelectActiveCell.Offset(-1, 0).EntireRow.Copy ActiveCellOn Error Resume NextRows(ActiveCell.Row).SpecialCells(xlCellTypeConstants, 23).ClearContents

    End Sub

    Pour affecter une macro au clic droit sur cette feuille :

    Private Sub Worksheet_Activate()Set temp = CommandBars("cell").Controls.Addtemp.Caption = "Recopie dernire ligne"temp.OnAction = "recopie"temp.FaceId = 120temp.BeginGroup = True

    End Sub

    Private Sub Worksheet_Deactivate()Application.CommandBars("Cell").Reset

    End Sub

    Remplacer une information

    Replace()

    Champ.Replace What:=valeur,Replacement:=valeur,LookAt:=xlPart/XlWhole,SearchOrder:=xlByRows/XlByColumns,MatchCase:=False, SearchFormat:=True/False,

    ReplaceFormat:=True/False

    Remplace une chane de caractres par une autre chane.

    Range(A1:A10).Replace " ", ""

    Caractres spciaux:

    * : remplace un nombre inddermin de caractres

    ? : remplace 1 caractre

    S'il y a un caractre spcial dans la chane, utiliser ~devant le caractre spcial:

  • 5/28/2018 Gestion Des Cellules VBA

    32/61

    Sur cet exemple, on remplace le caractre * par une chane vide

    aaa*aaa

    bbbbb*bb

    cc*ddd

    Range(A1:A10).Replace "~* ", ""

    Supprime les lignes se terminant par DE

    mmm

    mmmDE

    mmm

    mmm

    mmmDE

    mmm

    [A:A].Replace What:="*DE", Replacement:="", LookAt:=xlWholeOn Error Resume Next[A:A].SpecialCells(xlCellTypeBlanks).EntireRow.Delete

    Remplacer VRAI/FAUX

    Pour remplacer les valeurs boolennes VRAI et FAUX dans une feuille

    Cells.Replace What:=True, Replacement:="x"

    Cells.Replace What:=False, Replacement:=""

    Positionnement du curseur

    ScrollRow=ligneScrollColumn=colonne

    ScrollRowpositionne la ligne active en haut de l'cran.ScrollColumnpositionne la colonne active gauche de l'cran.

    Sur cet exemple, la cellule active est positionne en haut de l'cran

    Private Sub Worksheet_SelectionChange(ByVal Target As Range)ActiveWindow.ScrollRow = ActiveCell.Row

    End Sub

    ScrollColumn

    http://boisgontierjacques.free.fr/fichiers/Cellules/ScrollColumn1.xlshttp://boisgontierjacques.free.fr/fichiers/Cellules/ScrollColumn1.xlshttp://boisgontierjacques.free.fr/fichiers/Cellules/ScrollColumn1.xls
  • 5/28/2018 Gestion Des Cellules VBA

    33/61

    Sur cet exemple, la ligne active est positionne au milieu de l'cran.

    Private Sub Worksheet_SelectionChange(ByVal Target As Range)If ActiveCell.Row > 12 ThenActiveWindow.ScrollRow = ActiveCell.Row - 12

    End IfEnd Sub

    Positionne le curseur sur Activit suivant/prcdent

    PositionneSuivant

    Sub positionneActivitSuivant()On Error Resume NextRange(Cells(2, ActiveCell.Column + 1), Cells(2, 255)).Find(What:="Activit",

    SearchDirection:=xlNext).SelectActiveWindow.ScrollColumn = ActiveCell.Column

    End Sub

    Sub positionneActivitPrcdent()On Error Resume NextRange(Cells(2, ActiveCell.Column - 1), Cells(2,

    "A")).Find(What:="Activit", SearchDirection:=xlPrevious).Select

    ActiveWindow.ScrollColumn = ActiveCell.ColumnEnd Sub

    Application.goto(rfrence,scroll)

    Slectionne la rfrence spcifie.Si Scroll=True, le coin suprieur gauche de la rfrence apparat dans le coin suprieur gauche de la fentre.

    Application.Goto Reference:=Sheets(1).Range("A20"), scroll:=True

    Positionne le curseur sur la date du jour ou la suivante

    La mme date peut apparatre plusieurs fois

    http://boisgontierjacques.free.fr/fichiers/Cellules/ScrollColumn2.xlshttp://boisgontierjacques.free.fr/fichiers/Cellules/ScrollColumn2.xlshttp://boisgontierjacques.free.fr/fichiers/Cellules/ScrollColumn2.xls
  • 5/28/2018 Gestion Des Cellules VBA

    34/61

    Sub auto_open()p = Application.Match(CDbl(Date), [A1:A100], 1)Application.Goto [A1].Offset(p - 1 + IIf(Cells(p, 1) = Date, 0, 1)), scroll:=True

    End Sub

    Dfinir la zone utilisable par l'oprateur

    ScrollArea=champ

    Dfinit le champ utilisable par l'utilisateur.

    Sheets(1).ScrollArea = "a1:f10"

    Zone visible l'cran

    champVisible = ActiveWindow.VisibleRange.AddresspremLigne = ActiveWindow.VisibleRange.RowderLigne = ActiveWindow.VisibleRange.Rows.Count

    premCol = ActiveWindow.VisibleRange.ColumnderCol = ActiveWindow.VisibleRange.Columns.Count

    Commentaire dans une cellule

    Ci dessous, nous crons un commentaire dans une cellule.

    With Sheets(1).[A1]If .Comment Is Nothing Then.AddComment ' Cration commentaire.Comment.Shape.OLEFormat.Object.Font.Name = "Tverdana".Comment.Shape.OLEFormat.Object.Font.Size = 7.Comment.Shape.OLEFormat.Object.Font.FontStyle = "Normal"

    End If.Comment.Text Text:="Ceci est un commentaire...".Comment.Shape.TextFrame.AutoSize = True.Comment.Visible = False

    End With

    Nommer les champs par VBA

  • 5/28/2018 Gestion Des Cellules VBA

    35/61

    Sub NommerChamps()Range("A1").SelectFor Each c In Range(ActiveCell, Cells(ActiveCell.Row, 254).End(xlToLeft))

    If Not IsEmpty(c.Offset(1, 0)) ThenActiveWorkbook.Names.Add Name:=c, RefersTo:="=" & Range(c.Offset(1, 0), c.End(xlDown)).Addres

    End IfNextEnd Sub

    Sub NommerChampsDynamique()Range("A1").SelectFor Each c In Range(ActiveCell, Cells(ActiveCell.Row, 254).End(xlToLeft))

    If Not IsEmpty(c.Offset(1, 0)) ThenActiveWorkbook.Names.Add Name:=c, RefersTo:= _"=OFFSET(" & c.Address & ",,,COUNTA(" & c.EntireColumn.Address & ")-1)"

    End If

    NextEnd Sub

    Modification de la police dans une cellule

    Cells(1, 1) = "Ceci est un essai de caractres en gras dans une cellule...."Cells(1, 1).Characters(Start:=4, Length:=10).Font.FontStyle = "Gras"

    Fusionner des cellules

    Champ.MergeChamp.MergeCells=True/False

    Champ.Unmerge

    Champ.Mergefusionne les cellules du champ spcifi.

    Sur cet exemple, nous fusionons 2 colonnes dans une seule en conservant les donnes des 2 colonnes

    Sub essai()Application.DisplayAlerts = FalseLignedpart = 2colonneDpart = 2n = 4For lig = Lignedpart To Lignedpart + n

    Cells(lig, colonneDpart) = Cells(lig, 2) & Cells(lig, colonneDpart + 1)Cells(lig, colonneDpart).Resize(1, 2).Merge

    Next ligEnd Sub

  • 5/28/2018 Gestion Des Cellules VBA

    36/61

    Fusion de 2 colonnes sans Merge

    0,3 secondes pour 20.000 lignes

    Sub FusionColBColCSansMerge()

    Application.ScreenUpdating = Falselignedpart = 2colonnedpart = 2n = 20000a = Cells(lignedpart, colonnedpart).Resize(n, 2).ValueFor i = LBound(a) To UBound(a)a(i, 1) = a(i, 1) & " " & a(i, 2)

    Next iCells(lignedpart, colonnedpart).Resize(n, 2) = aCells(lignedpart, colonnedpart + 1).Resize(n).ClearContents

    End Sub

    Sur cet exemple, les codes articles identiques sont fusionns dans une seule cellule.

    Avant Aprs

    Sub merge()Application.DisplayAlerts = Falsei = 2Do While Cells(i, 1) ""m = iDo While Cells(i, 1) = Cells(m, 1)i = i + 1

    Loop

    Cells(m, 1).Resize(i - m).VerticalAlignment = xlTopCells(m, 1).Resize(i - m).MergeCells = TrueLoopEnd Sub

    Sub Unmerge()Range([A2], [a65000].End(xlUp)).UnmergeRange([b2], [b65000].End(xlUp)).Offset(0, -1).SpecialCells(xlCellTypeBlanks).FormulaR1C1 = "=R[-1]C"

    Range([A2], [a65000].End(xlUp)).Value = Range([A2], [a65000].End(xlUp)).ValueEnd Sub

    Pour obtenir le champ complet d'une cellule fusionne

  • 5/28/2018 Gestion Des Cellules VBA

    37/61

    If [B5].MergeCells Then MsgBox [B5].MergeArea.Address

    Champs multi zones

    La fonction RechercheMZ(valCherche, champRech As Range, ChampRetour)donne une valeur associ

    une valeur cherche

    Recherche Multi-Zones

    =RechercheMZ(K2;(A2:A7;D2:D5;G2:G7);(B2:B7;E2:E5;H2:H7))

    Si les champs ont ts nomms:

    =RechercheMZ(K2;Noms;Salaire)

    Function RechercheMZ(valCherche, champRech As Range, ChampRetour)Application.VolatileFor i = 1 To champRech.Areas.CountFor j = 1 To champRech.Areas(i).Count

    If valCherche = champRech.Areas(i)(j) ThenRechercheMZ = ChampRetour.Areas(i)(j)Exit Function

    End IfNext j

    Next iRechercheMZ = "pas trouv"

    End Function

    Exemples

    RAZ les cellules de la couleur choisie

    Slectionner le champ puis excuter la macro.

    RazCouleur

    http://boisgontierjacques.free.fr/fichiers/jb-trichampmultizones.xlshttp://boisgontierjacques.free.fr/fichiers/jb-trichampmultizones.xlshttp://boisgontierjacques.free.fr/fichiers/Cellules/RazCouleur.xlshttp://boisgontierjacques.free.fr/fichiers/Cellules/RazCouleur.xlshttp://boisgontierjacques.free.fr/fichiers/Cellules/RazCouleur.xlshttp://boisgontierjacques.free.fr/fichiers/jb-trichampmultizones.xls
  • 5/28/2018 Gestion Des Cellules VBA

    38/61

    Sub razcoul()On Error Resume NextSet x = Application.InputBox("cliquer sur une cellule avec la couleur effacer", Type:=8)

    If Err = 0 ThenFor Each c In Selection

    If c.Interior.ColorIndex = x.Interior.ColorIndex Then c.Value = EmptyNext cEnd If

    End Sub

    Dcale les mois vers la gauche

    Glissant

    Sub glissant()'-- dcalage des 11 derniers mois sur le premierRange("C1:M7").Cut Destination:=Range("B1")'--- recopie la dernire colonne droiteRange("L1:L7").AutoFill Destination:=Range("L1:M7"), Type:=xlFillDefaultRange("M2:M7").ClearContents'---- Prend le format de la colonne D et le copie en ERange("b1:b7").CopyRange("L1").PasteSpecial Paste:=xlFormatsRange("m2").SelectCells.EntireColumn.AutoFitEnd Sub

    On veut supprimer les lignes qui existent dj dans l'onglet BD1

    On n'utilise pas de colonne intermdiaire

    http://boisgontierjacques.free.fr/fichiers/Cellules/Glissant.xlshttp://boisgontierjacques.free.fr/fichiers/Cellules/Glissant.xlshttp://boisgontierjacques.free.fr/fichiers/Cellules/Glissant.xls
  • 5/28/2018 Gestion Des Cellules VBA

    39/61

    Sub SupDoublons()Range("a2").SelectDo While ActiveCell ""

    If Not IsError(Application.Match(ActiveCell, Application.Index(Range("base"), , 1), 0)) _And Not IsError(Application.Match(ActiveCell.Offset(0, 1), Application.Index(Range("base"), , 2), 0)) T

    ActiveCell.EntireRow.DeleteElseActiveCell.Offset(1, 0).Select

    End IfLoop

    End Sub

    MEFC:=SOMMEPROD((INDEX(Base;;1)=$A2)*(INDEX(Base;;2)=$B2)*(INDEX(Base;;1)"")*1)>0

    On utilise une colonne intermdiaire(colonne C)

    Sub SupDoublons2()Range("C2").SelectActiveCell.FormulaR1C1 = "=SUMPRODUCT((INDEX(Base,,1)=RC1)*(INDEX(Base,,2)=RC2)*1)>0"ActiveCell.Copy Range(ActiveCell, ActiveCell.Offset(0, -1).End(xlDown).Offset(0, 1))For Each c In Range(ActiveCell, ActiveCell.End(xlDown))

    If c.Value = True Then c.EntireRow.Delete

    Next cRange(ActiveCell, ActiveCell.End(xlDown)) = EmptyEnd Sub

    On veut copier en K2 les lignes surlignes en couleur Orange(couleur 44)

  • 5/28/2018 Gestion Des Cellules VBA

    40/61

    Sub Archives1()[K2:N65000].ClearContentsligneRecap = 1For i = 2 To [a65000].End(xlUp).Row

    If Cells(i, 1).Interior.ColorIndex = 44 ThenligneRecap = ligneRecap + 1Cells(i, 1).Resize(1, 4).Copy Cells(ligneRecap, 11)

    End IfNext iEnd Sub

    Vers un autre onglet

    Sub Archives2()Sheets("Archives").Range("A2:F65000").ClearContentsligneRecap = 1For i = 2 To [a65000].End(xlUp).Row

    If Cells(i, 1).Interior.ColorIndex = 44 Then

    ligneRecap = ligneRecap + 1Cells(i, 1).Resize(1, 4).Copy Sheets("Archives").Cells(ligneRecap, 1)

    End IfNext i

    End Sub

    Copie de lignes manquantes dun classeur dans un autre

    On ajoute mois2.xls les lignes de mois1.xls manquantes dans mois2.xls

    MFC:=NB.SI(nom1;A2)>0MFC:=ET(NB.SI(nom2;A2)=0;A2"")

  • 5/28/2018 Gestion Des Cellules VBA

    41/61

    Sub CopieManque()Sheets("BD").SelectRange("A2").Select

    ligne = Workbooks("mois2.xls").Sheets("BD").[A65000].End(xlUp).Row + 1Do While ActiveCell ""

    If IsError(Application.Match(ActiveCell, Workbooks("mois2.xls").Sheets("BD").Range("nom"), 0)) ThenRange(ActiveCell, ActiveCell.Offset(0, 1)).Copy Workbooks("mois2.xls").Sheets("BD").Cells(ligne, 1)ligne = ligne + 1

    End IfActiveCell.Offset(1, 0).Select

    LoopEnd Sub

    Diffrence entre 2 fichiers

    On veut connatre les produits qui existent dans Mois1.xlset qui n'existent pas dans Mois2.xls

    Sub DiffFich1Fich2()ligneEcrit = 2nblignes = Workbooks("mois1.xls").Sheets("BD").[A65000].End(xlUp).Row + 1For i = 2 To nblignes

    x = Workbooks("mois1.xls").Sheets("BD").Cells(i, 1)If IsError(Application.Match(x, Workbooks("mois2.xls").Sheets("BD").Range("nom"), 0)) Then

    Cells(ligneEcrit, 1) = xligneEcrit = ligneEcrit + 1End If

  • 5/28/2018 Gestion Des Cellules VBA

    42/61

    Next iEnd Sub

    Sub DiffFich2Fich1()ligneEcrit = 2

    nblignes = Workbooks("mois2.xls").Sheets("BD").[A65000].End(xlUp).Row + 1For i = 2 To nblignesx = Workbooks("mois2.xls").Sheets("BD").Cells(i, 1)If IsError(Application.Match(x, Workbooks("mois1.xls").Sheets("BD").Range("nom"), 0)) Then

    Cells(ligneEcrit, 2) = xligneEcrit = ligneEcrit + 1

    End IfNext i

    End Sub

    Comparaison de bases multi-critres avec Array()

    Sur cet exemple, nous transfrons les BD dans des tableaux tnom(),tprenom(),tage()pouracclrer lacomparaison.Comparaison

    Sub compareBD()ligne = 2tnom = [NomBD2]tprenom = [prenomBD2]tage = [ageBD2]For i = 1 To Range("NomBD1").Count

    n = Range("NomBD1")(i)p = Range("PreNomBD1")(i)a = Range("AgeBD1")(i)tmoin = FalseIf n "" ThenFor k = 1 To Range("nomBD2").Count

    If tnom(k, 1) = n And tprenom(k, 1) = p And tage(k, 1) = a Then tmoin = TrueNext kIf Not tmoin Then

    Sheets("diff").Cells(ligne, 1) = nSheets("diff").Cells(ligne, 2) = p

    Sheets("diff").Cells(ligne, 3) = aligne = ligne + 1

    http://boisgontierjacques.free.fr/fichiers/Cellules/NonCorrespondance2CritereTableau.xlshttp://boisgontierjacques.free.fr/fichiers/Cellules/NonCorrespondance2CritereTableau.xlshttp://boisgontierjacques.free.fr/fichiers/Cellules/NonCorrespondance2CritereTableau.xlshttp://boisgontierjacques.free.fr/fichiers/Cellules/NonCorrespondance2CritereTableau.xls
  • 5/28/2018 Gestion Des Cellules VBA

    43/61

    End IfEnd If

    Next iEnd Sub

    Rcupration d'un champ d'un classeur ferm

    Rcupre un champ d'un classeur ferm

    Sub LitClasseurFerm()ChampOuCopier = "A1:A4"Chemin = ThisWorkbook.PathFichier = "stock.xls"onglet = "Janvier"ChampAlire = "B2:B5"LitChamp ChampOuCopier, Chemin, Fichier, onglet, ChampAlire

    End Sub

    Sub LitChamp(ChampOuCopier, Chemin, Fichier, onglet, ChampAlire)Range(ChampOuCopier).FormulaArray = "='" & Chemin & "\[" & Fichier & "]" & onglet & "'!" & Champ

    Range(ChampOuCopier) = Range(ChampOuCopier).ValueEnd Sub

    Rcupration du format des cellules pointes par des formules

    Une feuille contient des formules du type

    =Feuil2!C3

    On veut que le format des cellules qui contiennent ces formules soit modifi lorsque le format descellules pointes est modifi. -RcupreFormats-

    Private Sub Worksheet_Activate()For Each c In ActiveSheet.Cells.SpecialCells(xlCellTypeFormulas, 23)

    tmp = c.FormulaIf Not inclus(tmp, "[]*/+-") Thena = Split(Mid(tmp, 2), "!")If UBound(a) = 0 Then

    Range(a(0)).CopyElse

    Sheets(a(0)).Range(a(1)).Copy

    End Ifc.PasteSpecial Paste:=xlPasteFormats

    http://boisgontierjacques.free.fr/fichiers/Cellules/RecupCoul.xlshttp://boisgontierjacques.free.fr/fichiers/Cellules/RecupCoul.xlshttp://boisgontierjacques.free.fr/fichiers/Cellules/RecupCoul.xlshttp://boisgontierjacques.free.fr/fichiers/Cellules/RecupCoul.xls
  • 5/28/2018 Gestion Des Cellules VBA

    44/61

    End IfNext c

    End Sub

    Function inclus(chaine, sch)

    tmoin = FalseFor i = 1 To Len(sch)If InStr(chaine, Mid(sch, i, 1)) > 0 Then tmoin = True

    Next iinclus = tmoin

    End Function

    Transforme BD en tableau

    TransformeBDTableau

    Transforme tableau en BD

    Transforme Tableau BD

    http://boisgontierjacques.free.fr/fichiers/Cellules/ConvBDTableau.xlshttp://boisgontierjacques.free.fr/fichiers/Cellules/ConvBDTableau.xlshttp://boisgontierjacques.free.fr/fichiers/Cellules/TransformeLignesColonnes.xlshttp://boisgontierjacques.free.fr/fichiers/Cellules/TransformeLignesColonnes.xlshttp://boisgontierjacques.free.fr/fichiers/Cellules/TransformeLignesColonnes.xlshttp://boisgontierjacques.free.fr/fichiers/Cellules/ConvBDTableau.xls
  • 5/28/2018 Gestion Des Cellules VBA

    45/61

    Sub TransformeLigneColonne()Set f1 = Sheets("BD")a = Sheets("Source").[B1].CurrentRegionligBD = 2

    For ligne = 2 To UBound(a, 1)For col = 2 To UBound(a, 2)If a(ligne, col) > 0 Thenf1.Cells(ligBD, 1) = a(ligne, 1)f1.Cells(ligBD, 2) = a(1, col)f1.Cells(ligBD, 3) = a(ligne, col)ligBD = ligBD + 1

    End IfNext col

    Next ligneEnd Sub

    Autre exemple

    Transforme Tableau BD

    Sub transformeTableauBD()Set f = Sheets("bd")a = f.[A1:D8]ligne = 2: colonne = 6For col = 2 To UBound(a, 2)

    For lig = 2 To UBound(a)f.Cells(ligne, colonne) = a(1, col)f.Cells(ligne, colonne + 1) = a(lig, 1)

    http://boisgontierjacques.free.fr/fichiers/Cellules/TransformeTableau5.xlshttp://boisgontierjacques.free.fr/fichiers/Cellules/TransformeTableau5.xlshttp://boisgontierjacques.free.fr/fichiers/Cellules/TransformeTableau5.xls
  • 5/28/2018 Gestion Des Cellules VBA

    46/61

    f.Cells(ligne, colonne + 2) = a(lig, col)ligne = ligne + 1

    Next ligNext col

    End Sub

    Autre exemple

    Sub TransformeTableauBD()ligne = 2For Each c In Range("A2:A" & [A65000].End(xlUp).Row)

    For J = 1 To 3Cells(ligne, 8) = cCells(ligne, 9) = c.Offset(, 1)Cells(ligne, 10) = Val(c.Offset(, J + 1))ligne = ligne + 1

    NextNext c

    End Sub

    Autre exemple

    Sub Transforme()ligne = 2

  • 5/28/2018 Gestion Des Cellules VBA

    47/61

    For Each c In Range("A2:A" & [A65000].End(xlUp).Row)a = Split(c.Offset(, 1), "/")For j = LBound(a) To UBound(a)Sheets(2).Cells(ligne, 1) = cSheets(2).Cells(ligne, 2) = a(j)

    ligne = ligne + 1NextNext c

    End Sub

    Transformation de BD en tableau

    TransformeColonnesLignesTransformeColonneLigneEnfants

    Sub ColonneLigne()Application.ScreenUpdating = FalseLigneBD = 2LigneResult = 2Do While Cells(LigneBD, 1) ""

    temp = Cells(LigneBD, 1)Sheets("result").Cells(LigneResult, 1) = Cells(LigneBD, 1)c = 2Do While Cells(LigneBD, 1) = temp

    Sheets("result").Cells(LigneResult, c) = Cells(LigneBD, 2)c = c + 1LigneBD = LigneBD + 1

    LoopLigneResult = LigneResult + 1

    LoopEnd Sub

    Avec formules

    -Slectionner A2=SI(MIN(SI(Code"";SI(NB.SI(A$1:A1;Code)=0;LIGNE(INDIRECT("1:"&LIGNES(Code))))))0;

    INDEX(Code;MIN(SI(Code"";SI(NB.SI(A$1:A1;Code)=0;LIGNE(INDIRECT("1:"&LIGNES(Code))))))-Valider avec Maj+Ctrl+entre

    http://boisgontierjacques.free.fr/fichiers/Cellules/TransformeColonneLigne8.xlshttp://boisgontierjacques.free.fr/fichiers/Cellules/TransformeColonneLigne8.xlshttp://boisgontierjacques.free.fr/fichiers/Cellules/TransformeColonneLigne7.xlshttp://boisgontierjacques.free.fr/fichiers/Cellules/TransformeColonneLigne7.xlshttp://boisgontierjacques.free.fr/fichiers/Cellules/TransformeColonneLigne7.xlshttp://boisgontierjacques.free.fr/fichiers/Cellules/TransformeColonneLigne8.xls
  • 5/28/2018 Gestion Des Cellules VBA

    48/61

    en B2:

    =SI(COLONNES($B:B)

  • 5/28/2018 Gestion Des Cellules VBA

    49/61

    For j = f1.Cells(LigneSource, 1) To f1.Cells(LigneSource, 2)f2.Cells(LigneDest, 1) = jf2.Cells(LigneDest, 2) = f1.Cells(LigneSource, 3)f2.Cells(LigneDest, 3) = f1.Cells(LigneSource, 4)LigneDest = LigneDest + 1

    NextNextEnd Sub

    Autre exemple

    Sub TransformeColooneLigne()Application.ScreenUpdating = FalseRange("A1").CurrentRegion.Sort Key1:=Range("A2"), Header:=xlYesRange("a2").Selectligne = 2Do While ActiveCell ""

    mmatricule = ActiveCellSheets("rsult").Cells(ligne, 1) = ActiveCellSheets("rsult").Cells(ligne, 2) = ActiveCell.Offset(0, 1)c = 3

    Do While ActiveCell = mmatriculeSheets("rsult").Cells(ligne, c) = ActiveCell.Offset(0, 2)Sheets(