Transformé du texte en code ?

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Charly88

XLDnaute Occasionnel
Voilà tout est dans le titre, je dois à un moment définir une zone composée plusieurs cellules, par exemple :

Union(Cells(1, 1), Cells(1, 2), Cells(3, 1), Cells(4, 5)).Select

Seulement, cette zone est appelée à varier selon des choix effectués et si la précédente ligne correspond à un choix de 4 (cellules), la suivante serait un choix de 5 :

Union(Cells(1, 1), Cells(1, 2), Cells(3, 1), Cells(4, 5), Cells(6, 6)).Select

N'ayant peur de rien, je me voyais très bien découper ce code en 3 morceaux de texte : début, rajout et fin mais, ça va vous épater, excel n'est pas aussi tordu que moi et que lorsque je lui colle ma valeur (string) suivie de diverses commandes, il ne comprend pas...

Y'a-t-il une solution, un changement de type, un copié-collé de cellule ou que sais-je encore pour "réactiver" mon texte ou bien voyez-vous une toute autre solution ?


Gros merci à ceux qui vont gamberger là-dessus.
 
Re : Transformé du texte en code ?

Bonjour Charly,

La manière la plus simple:
Code:
Chaine="A1,B1,A3,D5" 
chaine=chaine & "," & cells(6,6).address(0,0
range(Chaine).select

Ou mettre les adresses dans des constantes en tête de procédure ou modules

Code:
Const Plage_Machin="A1,B1,A3,D5"
Const Plage_Truc=Plage_Machin & ",F6"
 
If bidule then
    RAnge(Plage_Machin).Select
Else
    Range(Plage_Truc).Select
End if
A bientôt
 
Re : Transformé du texte en code ?

bonjour

je ne pense pas que tu en soit tres loins

t'est il possible de faire une boucle ? en fonction d'un point de depart et d'un point d'arriver
exemple : cellule selectionee : F6, selection : A1, B2,C3,D4,E5,F6
Code:
Dim c as range, i as long
set c = range("A1")
for i = 2 to selection.row
    set c= union(c, cells(i,i))
next i
c.select
ceci n'est qu'un exemple

edit: oups Bonjour Hasco
 
Re : Transformé du texte en code ?

Merci à tous les deux, je vais m'y attaquer de ce pas. Je pense que je vais commencer par étudier la première solution d'Hasco pour le moment et j'aurais une petite question à ce propos, à quoi sert le address(0,0) ?
Sans, il y a plantage, mais avec, modifié en (1,1) ou (4,2) ou même en laissant seulement Address, rien ne change sur la sélection... ?
 
Re : Transformé du texte en code ?

Bonjour Charly,

Address(0,0) ranvoie une adresse de plage ou de cellule sous la forme A1 (sans les $ de référence absolue)

quand tu as un doute sur la syntaxe d'un mot, place le curseur dessus et fait F1.

A bientôt
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
30
Affichages
449
Réponses
0
Affichages
459
  • Question Question
Microsoft 365 Export données
Réponses
4
Affichages
649
Réponses
8
Affichages
1 K
Réponses
7
Affichages
1 K
Réponses
2
Affichages
738
Retour