CerberusPau
Messages postés377Date d'inscriptionlundi 3 avril 2006StatutMembreDernière intervention22 août 2018
-
24 mai 2007 à 22:51
cs_MPi
Messages postés3877Date d'inscriptionmardi 19 mars 2002StatutMembreDernière intervention17 août 2018
-
25 mai 2007 à 01:42
Bonjour à tous,
J'essaie de trouver la syntaxe pour renommer une feuille par la valeur d'une de ses cellules.
Concrètement une feuille nommée : Fiche(2) contient en A4:B4 (cellules liées) la valeur T123 , et je voudrais que la feuille soit renommée de cette valeur T123 par la macro :
Sheets("Fiche (2)").Select
x = Range("A4:B4").Value
Sheets("Fiche(2)").Name = (x)
La dernière ligne de la syntaxe ci-dessus n'est évidemment pas bonne ...
Merci pour toute aide.
mortalino
Messages postés6786Date d'inscriptionvendredi 16 décembre 2005StatutMembreDernière intervention21 décembre 201118 24 mai 2007 à 22:55
Salut,
déjà, Comment veux-tu renommer une feuille par les valeurs d'une plage de données ???
"Range("A4:B4") --> c'est 2 cellules, donc 2 valeurs différentes !
Sinon, depuis quelle feuille ? et précise donc par rapport à ma remarque précédante aussi
@++
<hr size="2" width="100%" />
--Mortalino--
Le mystérieux chevalier, ~Provençal, le Gaulois~
CerberusPau
Messages postés377Date d'inscriptionlundi 3 avril 2006StatutMembreDernière intervention22 août 20181 25 mai 2007 à 00:43
Mortalino, "en gros"... t'as tout juste : sauf une petite parenthèse en trop (la dernière).
Pour que je sois plus clair, les cellules A4 et B4 sont fusionnées (et pas liées), donc il n'est fait référence qu'à une seule donnée.
La macro qui utilise ce bout de syntaxe est destinée à lister des données dans une feuille "Sommaire", qui ont été saisies au préalable dans une feuille "Fiche" que la macro sauvegarde dans une feuille du nom de la valeur donnée en A4:B4. La feuille "Sommaire" reprend des données principales (en ligne) ; à la sélection via filtrage d'une ligne, un "bouton" permet d'afficher la feuille correspondant au non en colonne A:B de la ligne résultat du filtrage.
Voilà
Merci de ton aide aussi efficace que rapide !
mortalino
Messages postés6786Date d'inscriptionvendredi 16 décembre 2005StatutMembreDernière intervention21 décembre 201118 25 mai 2007 à 00:54
De rien.
Normalement, en cas de fusion de cellules, il me semble que c'est l'adresse de la première cellule qui est prise compte (ex : tu fusionnes A1:D8, Range("A1") doit correspondre à cette fusion.
Cependant, je me permet de te conseiller de renommer tes plages de cellules.
Ex. : Sélectionnes tes cellules fusionnées, au dessus de l'intersection des entêtes de lignes et colonnes, tu as une case (à gauche de fx) avec l'adresse de la cellule séectionnée, tu cliques dedans, et tu renommes comme tu veux, admettons, AdresseFeuille.
Ensuite, pour travailler en vba avec, tu fais Range("AdresseFeuille"), et (avantage ) le fait de ne pas être sur la feuille où se trouve cette plage de données, cela n'aura aucune incidence sur ton code.
cs_MPi
Messages postés3877Date d'inscriptionmardi 19 mars 2002StatutMembreDernière intervention17 août 201823 25 mai 2007 à 01:42
Et moi je te conseille de ne jamais fusionner des cellules.
Tu peux utiliser l'alignement sur plusieurs colonnes qui donne le même effet et qui ne cause pas les désagréments reliés au fusionnement