Macro CompléterNoms
Quelles sont les valeurs qu'on veut mettre dans chaque cellule vide ? Une cellule vide doit recevoir la valeur contenue dans la cellule non vide placée au-dessus d'elle. Voici comment procéder :
- Sélectionner les cellules vides :
Sélectionner A1 et choisir : Atteindre.../Edition
Dans la fenêtre de dialogue Atteindre, cliquer sur Cellules...
Dans la fenêtre de dialogue Sélectionner les cellules, cliquer sur Vides.
- Remplir la sélection avec les valeurs :
Introduire = puis Flèche haut et valider avec ctrl+entrée
Ce qui veut dire : Placer ici le contenu de la cellule située au-dessus dans la même colonne. Si on valide une saisie avec ctrl+entrée, on recopie l'entrée (ici la formule) dans toute la sélection.
- Convertir les formules en valeurs :
Sélectionner A1 et choisir : Atteindre.../Edition
Dans la fenêtre de dialogue Atteindre, cliquer sur Cellules...
Dans la fenêtre de dialogue Sélectionner les cellules, cliquer sur Zone en cours.
Copier/Edition
Collage spécial.../Edition et choisir Valeurs puis Ok .
ESC pour sortir du mode Copie.Enregistrer une macro (Nom de la macro= CompléterNom), qui réalise ces opérations.
Remarque :
Si on ferme puis on ouvre un classeur, l'enregistreur de macros sauvegardera les futures macros dans un nouveau module.
Dans notre exemple :
- Lancer l'Enregistreur
- Sélectionner le classeur Module31.txt : Module31.txt/Fenêtre
- Enregistrer les différentes actions et arrêt de l'Enregistreur.
- Dans le code de la macro, supprimer la première instruction : Windows("Module3.xls").Activate
Voici le texte de cette macro :
' ' CompléterNoms Macro ' Macro enregistrée le 24/10/96 par Jean-Marie Lambert ' Sub CompléterNoms() Selection.SpecialCells(xlBlanks).Select Selection.FormulaR1C1 = "=R[-1]C" Selection.CurrentRegion.Select Selection.Copy Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, _ SkipBlanks:=False, Transpose:=False Application.CutCopyMode = False End Sub
Revenir à "Exemple de macro commande"