Bonjour,
J'ai une quarantaine de cellules nommées dans un dossier.
Je voudrais vider ces cellules par une macro.
Je patauge dans la collection Names
Merci
Bonjour,
J'ai une quarantaine de cellules nommées dans un dossier.
Je voudrais vider ces cellules par une macro.
Je patauge dans la collection Names
Merci
Hello,
tu peux faire un truc du genre :
EDIT : oups croisé avec Ouskel
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 Dim n As Name For Each n In ActiveWorkbook.Names Range(n.RefersTo) = "" Next n Set n = Nothing
Ne mettez pas "Problème" dans vos titres, par définition derrière toute question se cache un problème
12 tutoriels Access
Bonjour et merci de la réponse,
J'ai essayé ton code cafeine. Un mot du contexte
J'ai un dossier de 4 feuilles
La 1 est un document contenant la plupart des noms, destiné a être sauvegardé dans un dossier spécifique créé en fin de procédure.( Au passage, j'aimerais lancer ça par un bouton sur la feuille 2 au lieu de touches, mais ça coince).
La 2 servant à saisir des données pour remplir des noms dans la première. Elle commande des userforms contenant des listbox.
les feuilles 3 et 4 sont les bases de données des listbox. Il n'y a pas de nom dedans.
Je cherche à faire une macro pour vide les noms
Après exécution de ton code, la feuille 1 est effacée, reste les cadres des cellules. La feuille 3 est effacée à partir de la ligne 3. La feuille 4 n'a pas changé.
Sur la feuille 2, les cellules nommées sont effectivement vidées.
Après exécution, le n renvoie l'adresse cellule A3 feuille3.
Curieux, ça dépasse mon niveau de béotien.
MM
tiens une adaptation de la procédure à cafeine :
[Edit] correction code pour cellules fusionnées, rajout de MergeArea
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 Dim n As Name For Each n In ActiveWorkbook.Names n.RefersToRange.MergeArea.ClearContents Next n Set n = Nothing
Alors maintenant, avec ce code j'ai un message
"Impossible de modifier une cellule fusionnée"
Parce qu'il y en a bien sur.
Le code est dans une macro Workbook_open, pour tout nettoyer.
Je peux faire:
Range("NomCellule").value = ""
Cà fonctionne, cellule fusionnée ou pas
Mais 40 fois, c'est pas très élégant.
MM
à modifier... rajout de MergeArea (je le fais aussi dans mon message initial..)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 n.RefersToRange.MergeArea.ClearContents
Bonjour,
Avec çà, le message d'erreur a disparu, mais le contenu des cellules est toujours là.
J'ai peut etre mal posé le problème.
MM
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager