Ethiryn - Glarilak
XLDnaute Nouveau
Bonjour,
Je cherche une fonction VBA, ou une macro qui me permet de récupérer une adresse de cellule qui est entrer en valeur d'une autre cellule.
Dans mon fichier j'ai écrit une macro qui me permet de changer la valeur des toutes les cellules texte pour changer de langue. Mais petit désavantage, dès que j'ajoute un nouveau texte dans une nouvelle cellule, il faut ajouter une ligne dans la macro pour bien faire la traduction lors du changement de langue.
Je me suis donc dit que je pouvais crée une procédure qui traduira les cellules en faisant une boucle sur toutes les textes à échanger. J'ai donc insérer à gauche une colonne dans lequel je veux mettre l'adresse de la cellule à traduire. Comme cela quant la macro passera sur la ligne elle n'aura qu'à lire la ligne, pour avoir la traduction et l'adresse ou mettre la traduction.
Le problème est donc comment faire pour dire à Excel VBA de transformer la valeur de la cellule contenant l'adresse en adresse de réception.
J'ai cherché un peu partout des équivalent des la fonction INDIRECT sur le net, mais je n'ai pas réussi à trouver mon bonheur.
J'ai tout de même réussi à faire la formule suivante
Le code suivant
Quelqu'un aurait-il une formule qui permet de transformer une adresse complète comme celle présenter en-dessous, en adresse utilisable pour un calcul ?
Je joins un fichier d'exemple, en Feuil1 un exemple de texte à traduire, Feuil2 la mise en page de ma feuille de traduction sur mon fichier. Chaque langue est représenter par un colonne à partir de la seconde colonne.
La première colonne contient les adresses, toutes les cellules ne sont pas forcément renseigner, par exemple les cellule A1(Nom de langue) et A2(Image des drapeau de chaque pays) ne le sont pas.
J'espère avoir expliquer mon problème en mettant le plus de détails et sans en avoir mis trop. Je suis disposition si vous voulez un complément d'information sur mon problème.
J'espère avoir une réponse précises et expliqué, me donner un code tout craché ne m'aidera sans doute pas à le comprendre et le réutiliser pour pouvoir progresser en VBA, merci d'avance pour votre aide.
Ethiryn - Glarilak
Je cherche une fonction VBA, ou une macro qui me permet de récupérer une adresse de cellule qui est entrer en valeur d'une autre cellule.
Dans mon fichier j'ai écrit une macro qui me permet de changer la valeur des toutes les cellules texte pour changer de langue. Mais petit désavantage, dès que j'ajoute un nouveau texte dans une nouvelle cellule, il faut ajouter une ligne dans la macro pour bien faire la traduction lors du changement de langue.
Je me suis donc dit que je pouvais crée une procédure qui traduira les cellules en faisant une boucle sur toutes les textes à échanger. J'ai donc insérer à gauche une colonne dans lequel je veux mettre l'adresse de la cellule à traduire. Comme cela quant la macro passera sur la ligne elle n'aura qu'à lire la ligne, pour avoir la traduction et l'adresse ou mettre la traduction.
Le problème est donc comment faire pour dire à Excel VBA de transformer la valeur de la cellule contenant l'adresse en adresse de réception.
J'ai cherché un peu partout des équivalent des la fonction INDIRECT sur le net, mais je n'ai pas réussi à trouver mon bonheur.
J'ai tout de même réussi à faire la formule suivante
Range(Range("A3"))
qui m'affiche bien la valeur de la cellule B3 quant je rentre en donner "B3" dans la cellule A3. Mais le soucis c'est que la cellule à modifier est sur une autre feuille et que je ne peut pas entrer l'adresse complète de la cellule à modifier dans la cellule qui sert de référence.Le code suivant
Sheets("Feuil1").Range(Sheets("Feuil2").Range("A3"))
pourrait fonctionner si il n'y avais qu'une feuille à traduire, mais il y en à plusieurs, pour le moment déjà 7 ou 8.Quelqu'un aurait-il une formule qui permet de transformer une adresse complète comme celle présenter en-dessous, en adresse utilisable pour un calcul ?
ThisWorkbook.WorkSheets("Feuil1").Range("A1")
Je joins un fichier d'exemple, en Feuil1 un exemple de texte à traduire, Feuil2 la mise en page de ma feuille de traduction sur mon fichier. Chaque langue est représenter par un colonne à partir de la seconde colonne.
La première colonne contient les adresses, toutes les cellules ne sont pas forcément renseigner, par exemple les cellule A1(Nom de langue) et A2(Image des drapeau de chaque pays) ne le sont pas.
J'espère avoir expliquer mon problème en mettant le plus de détails et sans en avoir mis trop. Je suis disposition si vous voulez un complément d'information sur mon problème.
J'espère avoir une réponse précises et expliqué, me donner un code tout craché ne m'aidera sans doute pas à le comprendre et le réutiliser pour pouvoir progresser en VBA, merci d'avance pour votre aide.
Ethiryn - Glarilak
Pièces jointes
Dernière édition: