Bonjour,
Je suis en train de créer un fichier multilangue, dans lequel on peut
modifier la langue affiché dans toutes les cellules an cliaquant sur
un bouton.
Ca marche nickel, sauf pour les boutons que j'ai sur mes feuilles :
With sheets("Langue")
Set MonDoc = Sheets("Index")
MonDoc.Shapes("etape1").Characters.Text = .Cells(4,
quelle_langue).Value '= Sheets("Langue").Cells(4, quelle_langue).Valu e
End with
Me balance un erreur.
quelle_langue est un chiffre qui m'indique quelle colonne prendre.
Merci pour votre aide et bonne soirée,
T.
Bonjour,
Je suis en train de créer un fichier multilangue, dans lequel on peut
modifier la langue affiché dans toutes les cellules an cliaquant sur
un bouton.
Ca marche nickel, sauf pour les boutons que j'ai sur mes feuilles :
With sheets("Langue")
Set MonDoc = Sheets("Index")
MonDoc.Shapes("etape1").Characters.Text = .Cells(4,
quelle_langue).Value '= Sheets("Langue").Cells(4, quelle_langue).Valu e
End with
Me balance un erreur.
quelle_langue est un chiffre qui m'indique quelle colonne prendre.
Merci pour votre aide et bonne soirée,
T.
Bonjour,
Je suis en train de créer un fichier multilangue, dans lequel on peut
modifier la langue affiché dans toutes les cellules an cliaquant sur
un bouton.
Ca marche nickel, sauf pour les boutons que j'ai sur mes feuilles :
With sheets("Langue")
Set MonDoc = Sheets("Index")
MonDoc.Shapes("etape1").Characters.Text = .Cells(4,
quelle_langue).Value '= Sheets("Langue").Cells(4, quelle_langue).Valu e
End with
Me balance un erreur.
quelle_langue est un chiffre qui m'indique quelle colonne prendre.
Merci pour votre aide et bonne soirée,
T.
Bonsoir,
Il faut utiliser TextFrame :
MonDoc.Shapes("etape1").TextFrame.Characters.Text = .Cells(4, quelle_la ngue).Value '= Sheets("Langue").Cells(4,
quelle_langue).Value
Voici un extrait d'une de mes applis :
Private Sub TraductionBoutons()
Dim s As Shape
Langue = FDico.Evaluate("Langue")
For Each s In FStart.Shapes
' La valeur 1 correspond à msoAutoShape. Les symboles des éventuels commentaires appartiennent aussi à la
collection
' Shapes, comme les boutons, mais Type renvois 4, qui corres pond à msoButton.
If s.Type = 1 Then
With s.TextFrame
Select Case s.Name
Case "NewHotel"
.Characters.Text = Traduction( "NouvelHôtel")
Case "BChoix"
.Characters.Text = Traduction( "ChoixHôtel")
Case "BVentesBB", "BVentesBBAuto"
.Characters.Text = Traduction( "VentesBAndB")
J'ai fait une feuille Dico avec une colonne par langue, et j'ai nommé c haque ensemble de 3 cellules sur chaque ligne de
traduction.
Ensuite une fonction, "Traduction" renvoie le texte dans la bonne langue (2 arguments, un nom défini dans la feuille
dico, et le numéro de langue, qui détermine la bonne colonne.Bonjour,
Je suis en train de créer un fichier multilangue, dans lequel on peut
modifier la langue affiché dans toutes les cellules an cliaquant sur
un bouton.
Ca marche nickel, sauf pour les boutons que j'ai sur mes feuilles :
With sheets("Langue")
Set MonDoc = Sheets("Index")
MonDoc.Shapes("etape1").Characters.Text = .Cells(4,
quelle_langue).Value '= Sheets("Langue").Cells(4, quelle_langue).Value
End with
Me balance un erreur.
quelle_langue est un chiffre qui m'indique quelle colonne prendre.
Merci pour votre aide et bonne soirée,
T.
--
Cordialement,
Michel Gaboly
www.gaboly.com
Bonsoir,
Il faut utiliser TextFrame :
MonDoc.Shapes("etape1").TextFrame.Characters.Text = .Cells(4, quelle_la ngue).Value '= Sheets("Langue").Cells(4,
quelle_langue).Value
Voici un extrait d'une de mes applis :
Private Sub TraductionBoutons()
Dim s As Shape
Langue = FDico.Evaluate("Langue")
For Each s In FStart.Shapes
' La valeur 1 correspond à msoAutoShape. Les symboles des éventuels commentaires appartiennent aussi à la
collection
' Shapes, comme les boutons, mais Type renvois 4, qui corres pond à msoButton.
If s.Type = 1 Then
With s.TextFrame
Select Case s.Name
Case "NewHotel"
.Characters.Text = Traduction( "NouvelHôtel")
Case "BChoix"
.Characters.Text = Traduction( "ChoixHôtel")
Case "BVentesBB", "BVentesBBAuto"
.Characters.Text = Traduction( "VentesBAndB")
J'ai fait une feuille Dico avec une colonne par langue, et j'ai nommé c haque ensemble de 3 cellules sur chaque ligne de
traduction.
Ensuite une fonction, "Traduction" renvoie le texte dans la bonne langue (2 arguments, un nom défini dans la feuille
dico, et le numéro de langue, qui détermine la bonne colonne.
Bonjour,
Je suis en train de créer un fichier multilangue, dans lequel on peut
modifier la langue affiché dans toutes les cellules an cliaquant sur
un bouton.
Ca marche nickel, sauf pour les boutons que j'ai sur mes feuilles :
With sheets("Langue")
Set MonDoc = Sheets("Index")
MonDoc.Shapes("etape1").Characters.Text = .Cells(4,
quelle_langue).Value '= Sheets("Langue").Cells(4, quelle_langue).Value
End with
Me balance un erreur.
quelle_langue est un chiffre qui m'indique quelle colonne prendre.
Merci pour votre aide et bonne soirée,
T.
--
Cordialement,
Michel Gaboly
www.gaboly.com
Bonsoir,
Il faut utiliser TextFrame :
MonDoc.Shapes("etape1").TextFrame.Characters.Text = .Cells(4, quelle_la ngue).Value '= Sheets("Langue").Cells(4,
quelle_langue).Value
Voici un extrait d'une de mes applis :
Private Sub TraductionBoutons()
Dim s As Shape
Langue = FDico.Evaluate("Langue")
For Each s In FStart.Shapes
' La valeur 1 correspond à msoAutoShape. Les symboles des éventuels commentaires appartiennent aussi à la
collection
' Shapes, comme les boutons, mais Type renvois 4, qui corres pond à msoButton.
If s.Type = 1 Then
With s.TextFrame
Select Case s.Name
Case "NewHotel"
.Characters.Text = Traduction( "NouvelHôtel")
Case "BChoix"
.Characters.Text = Traduction( "ChoixHôtel")
Case "BVentesBB", "BVentesBBAuto"
.Characters.Text = Traduction( "VentesBAndB")
J'ai fait une feuille Dico avec une colonne par langue, et j'ai nommé c haque ensemble de 3 cellules sur chaque ligne de
traduction.
Ensuite une fonction, "Traduction" renvoie le texte dans la bonne langue (2 arguments, un nom défini dans la feuille
dico, et le numéro de langue, qui détermine la bonne colonne.Bonjour,
Je suis en train de créer un fichier multilangue, dans lequel on peut
modifier la langue affiché dans toutes les cellules an cliaquant sur
un bouton.
Ca marche nickel, sauf pour les boutons que j'ai sur mes feuilles :
With sheets("Langue")
Set MonDoc = Sheets("Index")
MonDoc.Shapes("etape1").Characters.Text = .Cells(4,
quelle_langue).Value '= Sheets("Langue").Cells(4, quelle_langue).Value
End with
Me balance un erreur.
quelle_langue est un chiffre qui m'indique quelle colonne prendre.
Merci pour votre aide et bonne soirée,
T.
--
Cordialement,
Michel Gaboly
www.gaboly.com
Bonjour Michel,
Merci pour ta réponse, mais est-il possible de le faire sans avoir à
sélectionner chaque forme ?
Comme il y aura plusieurs feuille, j'aurais aimé pouvoir modifier le
texte toutes les formes de toutes mes feuilles, de manière rapide ezs t
quasi transparente pour l'utilisateur.
Et j'en profite, mais c'est par paresse : comment marche ta fonction
traduction ?
Merci encore pour ton aide.
T.Bonsoir,
Il faut utiliser TextFrame :
MonDoc.Shapes("etape1").TextFrame.Characters.Text = .Cells(4, quelle _langue).Value '= Sheets("Langue").Cells(4,
quelle_langue).Value
Voici un extrait d'une de mes applis :
Private Sub TraductionBoutons()
Dim s As Shape
Langue = FDico.Evaluate("Langue")
For Each s In FStart.Shapes
' La valeur 1 correspond à msoAutoShape. Les symboles d es éventuels commentaires appartiennent aussi à la
collection
' Shapes, comme les boutons, mais Type renvois 4, qui cor respond à msoButton.
If s.Type = 1 Then
With s.TextFrame
Select Case s.Name
Case "NewHotel"
.Characters.Text = Traducti on("NouvelHôtel")
Case "BChoix"
.Characters.Text = Traducti on("ChoixHôtel")
Case "BVentesBB", "BVentesBBAuto"
.Characters.Text = Traducti on("VentesBAndB")
J'ai fait une feuille Dico avec une colonne par langue, et j'ai nommé chaque ensemble de 3 cellules sur chaque ligne de
traduction.
Ensuite une fonction, "Traduction" renvoie le texte dans la bonne lang ue (2 arguments, un nom défini dans la feuille
dico, et le numéro de langue, qui détermine la bonne colonne.Bonjour,
Je suis en train de créer un fichier multilangue, dans lequel on pe ut
modifier la langue affiché dans toutes les cellules an cliaquant su r
un bouton.
Ca marche nickel, sauf pour les boutons que j'ai sur mes feuilles :
With sheets("Langue")
Set MonDoc = Sheets("Index")
MonDoc.Shapes("etape1").Characters.Text = .Cells(4,
quelle_langue).Value '= Sheets("Langue").Cells(4, quelle_langue).Va lue
End with
Me balance un erreur.
quelle_langue est un chiffre qui m'indique quelle colonne prendre.
Merci pour votre aide et bonne soirée,
T.
--
Cordialement,
Michel Gaboly
www.gaboly.com
Bonjour Michel,
Merci pour ta réponse, mais est-il possible de le faire sans avoir à
sélectionner chaque forme ?
Comme il y aura plusieurs feuille, j'aurais aimé pouvoir modifier le
texte toutes les formes de toutes mes feuilles, de manière rapide ezs t
quasi transparente pour l'utilisateur.
Et j'en profite, mais c'est par paresse : comment marche ta fonction
traduction ?
Merci encore pour ton aide.
T.
Bonsoir,
Il faut utiliser TextFrame :
MonDoc.Shapes("etape1").TextFrame.Characters.Text = .Cells(4, quelle _langue).Value '= Sheets("Langue").Cells(4,
quelle_langue).Value
Voici un extrait d'une de mes applis :
Private Sub TraductionBoutons()
Dim s As Shape
Langue = FDico.Evaluate("Langue")
For Each s In FStart.Shapes
' La valeur 1 correspond à msoAutoShape. Les symboles d es éventuels commentaires appartiennent aussi à la
collection
' Shapes, comme les boutons, mais Type renvois 4, qui cor respond à msoButton.
If s.Type = 1 Then
With s.TextFrame
Select Case s.Name
Case "NewHotel"
.Characters.Text = Traducti on("NouvelHôtel")
Case "BChoix"
.Characters.Text = Traducti on("ChoixHôtel")
Case "BVentesBB", "BVentesBBAuto"
.Characters.Text = Traducti on("VentesBAndB")
J'ai fait une feuille Dico avec une colonne par langue, et j'ai nommé chaque ensemble de 3 cellules sur chaque ligne de
traduction.
Ensuite une fonction, "Traduction" renvoie le texte dans la bonne lang ue (2 arguments, un nom défini dans la feuille
dico, et le numéro de langue, qui détermine la bonne colonne.
Bonjour,
Je suis en train de créer un fichier multilangue, dans lequel on pe ut
modifier la langue affiché dans toutes les cellules an cliaquant su r
un bouton.
Ca marche nickel, sauf pour les boutons que j'ai sur mes feuilles :
With sheets("Langue")
Set MonDoc = Sheets("Index")
MonDoc.Shapes("etape1").Characters.Text = .Cells(4,
quelle_langue).Value '= Sheets("Langue").Cells(4, quelle_langue).Va lue
End with
Me balance un erreur.
quelle_langue est un chiffre qui m'indique quelle colonne prendre.
Merci pour votre aide et bonne soirée,
T.
--
Cordialement,
Michel Gaboly
www.gaboly.com
Bonjour Michel,
Merci pour ta réponse, mais est-il possible de le faire sans avoir à
sélectionner chaque forme ?
Comme il y aura plusieurs feuille, j'aurais aimé pouvoir modifier le
texte toutes les formes de toutes mes feuilles, de manière rapide ezs t
quasi transparente pour l'utilisateur.
Et j'en profite, mais c'est par paresse : comment marche ta fonction
traduction ?
Merci encore pour ton aide.
T.Bonsoir,
Il faut utiliser TextFrame :
MonDoc.Shapes("etape1").TextFrame.Characters.Text = .Cells(4, quelle _langue).Value '= Sheets("Langue").Cells(4,
quelle_langue).Value
Voici un extrait d'une de mes applis :
Private Sub TraductionBoutons()
Dim s As Shape
Langue = FDico.Evaluate("Langue")
For Each s In FStart.Shapes
' La valeur 1 correspond à msoAutoShape. Les symboles d es éventuels commentaires appartiennent aussi à la
collection
' Shapes, comme les boutons, mais Type renvois 4, qui cor respond à msoButton.
If s.Type = 1 Then
With s.TextFrame
Select Case s.Name
Case "NewHotel"
.Characters.Text = Traducti on("NouvelHôtel")
Case "BChoix"
.Characters.Text = Traducti on("ChoixHôtel")
Case "BVentesBB", "BVentesBBAuto"
.Characters.Text = Traducti on("VentesBAndB")
J'ai fait une feuille Dico avec une colonne par langue, et j'ai nommé chaque ensemble de 3 cellules sur chaque ligne de
traduction.
Ensuite une fonction, "Traduction" renvoie le texte dans la bonne lang ue (2 arguments, un nom défini dans la feuille
dico, et le numéro de langue, qui détermine la bonne colonne.Bonjour,
Je suis en train de créer un fichier multilangue, dans lequel on pe ut
modifier la langue affiché dans toutes les cellules an cliaquant su r
un bouton.
Ca marche nickel, sauf pour les boutons que j'ai sur mes feuilles :
With sheets("Langue")
Set MonDoc = Sheets("Index")
MonDoc.Shapes("etape1").Characters.Text = .Cells(4,
quelle_langue).Value '= Sheets("Langue").Cells(4, quelle_langue).Va lue
End with
Me balance un erreur.
quelle_langue est un chiffre qui m'indique quelle colonne prendre.
Merci pour votre aide et bonne soirée,
T.
--
Cordialement,
Michel Gaboly
www.gaboly.com
Bonsoir,
Dans l'exemple de code que je t'indique, il n'y pas de sélection des fo rmes :
For Each s In FStart.Shapes
où FStart est le CodeName d'une feuille du classeur, nommée "Start", qui est la page d'accueil avec les boutons.
Parmi les boutons, 3 drapeaux (images .Gif récupérées sur le Web) p our choisir la langue
Pour la fonction Traduction, elle est on ne peut + simple :
Public Function Traduction(c As String)
Traduction = FDico.Range(c).Cells(1, Langue)
End Function
FDico est le CodeName de la feuille "Dico" où sont regroupées les tra ductions (Col. A français, Col. B italien, Col.C
anglais)
Par exemple avec Langue qui est un numéro, et la plage nommée "Nouvel Hôtel" composée des 3 cellules A50:C50
Traduction("NouvelHôtel")
renverra
"Nouvel hôtel" si Langue = 1
"Nuovo albergo" si Langue = 2
"New hotel" si Langue = 3
Le + long est de devoir mettre à jour la feuille Dico chaque fois qu'on a un un nouveau texte (dans une cellule, un
label de UserForm ou un texte à afficher avec Msgbox).
Voilà.Bonjour Michel,
Merci pour ta réponse, mais est-il possible de le faire sans avoir à
sélectionner chaque forme ?
Comme il y aura plusieurs feuille, j'aurais aimé pouvoir modifier le
texte toutes les formes de toutes mes feuilles, de manière rapide ezst
quasi transparente pour l'utilisateur.
Et j'en profite, mais c'est par paresse : comment marche ta fonction
traduction ?
Merci encore pour ton aide.
T.Bonsoir,
Il faut utiliser TextFrame :
MonDoc.Shapes("etape1").TextFrame.Characters.Text = .Cells(4, quelle _langue).Value '= Sheets("Langue").Cells(4,
quelle_langue).Value
Voici un extrait d'une de mes applis :
Private Sub TraductionBoutons()
Dim s As Shape
Langue = FDico.Evaluate("Langue")
For Each s In FStart.Shapes
' La valeur 1 correspond à msoAutoShape. Les symboles d es éventuels commentaires appartiennent aussi à la
collection
' Shapes, comme les boutons, mais Type renvois 4, qui cor respond à msoButton.
If s.Type = 1 Then
With s.TextFrame
Select Case s.Name
Case "NewHotel"
.Characters.Text = Traducti on("NouvelHôtel")
Case "BChoix"
.Characters.Text = Traducti on("ChoixHôtel")
Case "BVentesBB", "BVentesBBAuto"
.Characters.Text = Traducti on("VentesBAndB")
J'ai fait une feuille Dico avec une colonne par langue, et j'ai nomm é chaque ensemble de 3 cellules sur chaque ligne de
traduction.
Ensuite une fonction, "Traduction" renvoie le texte dans la bonne lang ue (2 arguments, un nom défini dans la feuille
dico, et le numéro de langue, qui détermine la bonne colonne.Bonjour,
Je suis en train de créer un fichier multilangue, dans lequel on pe ut
modifier la langue affiché dans toutes les cellules an cliaquant sur
un bouton.
Ca marche nickel, sauf pour les boutons que j'ai sur mes feuilles :
With sheets("Langue")
Set MonDoc = Sheets("Index")
MonDoc.Shapes("etape1").Characters.Text = .Cells(4,
quelle_langue).Value '= Sheets("Langue").Cells(4, quelle_langue).Va lue
End with
Me balance un erreur.
quelle_langue est un chiffre qui m'indique quelle colonne prendre.
Merci pour votre aide et bonne soirée,
T.
--
Cordialement,
Michel Gaboly
www.gaboly.com
--
Cordialement,
Michel Gaboly
www.gaboly.com
Bonsoir,
Dans l'exemple de code que je t'indique, il n'y pas de sélection des fo rmes :
For Each s In FStart.Shapes
où FStart est le CodeName d'une feuille du classeur, nommée "Start", qui est la page d'accueil avec les boutons.
Parmi les boutons, 3 drapeaux (images .Gif récupérées sur le Web) p our choisir la langue
Pour la fonction Traduction, elle est on ne peut + simple :
Public Function Traduction(c As String)
Traduction = FDico.Range(c).Cells(1, Langue)
End Function
FDico est le CodeName de la feuille "Dico" où sont regroupées les tra ductions (Col. A français, Col. B italien, Col.C
anglais)
Par exemple avec Langue qui est un numéro, et la plage nommée "Nouvel Hôtel" composée des 3 cellules A50:C50
Traduction("NouvelHôtel")
renverra
"Nouvel hôtel" si Langue = 1
"Nuovo albergo" si Langue = 2
"New hotel" si Langue = 3
Le + long est de devoir mettre à jour la feuille Dico chaque fois qu'on a un un nouveau texte (dans une cellule, un
label de UserForm ou un texte à afficher avec Msgbox).
Voilà.
Bonjour Michel,
Merci pour ta réponse, mais est-il possible de le faire sans avoir à
sélectionner chaque forme ?
Comme il y aura plusieurs feuille, j'aurais aimé pouvoir modifier le
texte toutes les formes de toutes mes feuilles, de manière rapide ezst
quasi transparente pour l'utilisateur.
Et j'en profite, mais c'est par paresse : comment marche ta fonction
traduction ?
Merci encore pour ton aide.
T.
Bonsoir,
Il faut utiliser TextFrame :
MonDoc.Shapes("etape1").TextFrame.Characters.Text = .Cells(4, quelle _langue).Value '= Sheets("Langue").Cells(4,
quelle_langue).Value
Voici un extrait d'une de mes applis :
Private Sub TraductionBoutons()
Dim s As Shape
Langue = FDico.Evaluate("Langue")
For Each s In FStart.Shapes
' La valeur 1 correspond à msoAutoShape. Les symboles d es éventuels commentaires appartiennent aussi à la
collection
' Shapes, comme les boutons, mais Type renvois 4, qui cor respond à msoButton.
If s.Type = 1 Then
With s.TextFrame
Select Case s.Name
Case "NewHotel"
.Characters.Text = Traducti on("NouvelHôtel")
Case "BChoix"
.Characters.Text = Traducti on("ChoixHôtel")
Case "BVentesBB", "BVentesBBAuto"
.Characters.Text = Traducti on("VentesBAndB")
J'ai fait une feuille Dico avec une colonne par langue, et j'ai nomm é chaque ensemble de 3 cellules sur chaque ligne de
traduction.
Ensuite une fonction, "Traduction" renvoie le texte dans la bonne lang ue (2 arguments, un nom défini dans la feuille
dico, et le numéro de langue, qui détermine la bonne colonne.
Bonjour,
Je suis en train de créer un fichier multilangue, dans lequel on pe ut
modifier la langue affiché dans toutes les cellules an cliaquant sur
un bouton.
Ca marche nickel, sauf pour les boutons que j'ai sur mes feuilles :
With sheets("Langue")
Set MonDoc = Sheets("Index")
MonDoc.Shapes("etape1").Characters.Text = .Cells(4,
quelle_langue).Value '= Sheets("Langue").Cells(4, quelle_langue).Va lue
End with
Me balance un erreur.
quelle_langue est un chiffre qui m'indique quelle colonne prendre.
Merci pour votre aide et bonne soirée,
T.
--
Cordialement,
Michel Gaboly
www.gaboly.com
--
Cordialement,
Michel Gaboly
www.gaboly.com
Bonsoir,
Dans l'exemple de code que je t'indique, il n'y pas de sélection des fo rmes :
For Each s In FStart.Shapes
où FStart est le CodeName d'une feuille du classeur, nommée "Start", qui est la page d'accueil avec les boutons.
Parmi les boutons, 3 drapeaux (images .Gif récupérées sur le Web) p our choisir la langue
Pour la fonction Traduction, elle est on ne peut + simple :
Public Function Traduction(c As String)
Traduction = FDico.Range(c).Cells(1, Langue)
End Function
FDico est le CodeName de la feuille "Dico" où sont regroupées les tra ductions (Col. A français, Col. B italien, Col.C
anglais)
Par exemple avec Langue qui est un numéro, et la plage nommée "Nouvel Hôtel" composée des 3 cellules A50:C50
Traduction("NouvelHôtel")
renverra
"Nouvel hôtel" si Langue = 1
"Nuovo albergo" si Langue = 2
"New hotel" si Langue = 3
Le + long est de devoir mettre à jour la feuille Dico chaque fois qu'on a un un nouveau texte (dans une cellule, un
label de UserForm ou un texte à afficher avec Msgbox).
Voilà.Bonjour Michel,
Merci pour ta réponse, mais est-il possible de le faire sans avoir à
sélectionner chaque forme ?
Comme il y aura plusieurs feuille, j'aurais aimé pouvoir modifier le
texte toutes les formes de toutes mes feuilles, de manière rapide ezst
quasi transparente pour l'utilisateur.
Et j'en profite, mais c'est par paresse : comment marche ta fonction
traduction ?
Merci encore pour ton aide.
T.Bonsoir,
Il faut utiliser TextFrame :
MonDoc.Shapes("etape1").TextFrame.Characters.Text = .Cells(4, quelle _langue).Value '= Sheets("Langue").Cells(4,
quelle_langue).Value
Voici un extrait d'une de mes applis :
Private Sub TraductionBoutons()
Dim s As Shape
Langue = FDico.Evaluate("Langue")
For Each s In FStart.Shapes
' La valeur 1 correspond à msoAutoShape. Les symboles d es éventuels commentaires appartiennent aussi à la
collection
' Shapes, comme les boutons, mais Type renvois 4, qui cor respond à msoButton.
If s.Type = 1 Then
With s.TextFrame
Select Case s.Name
Case "NewHotel"
.Characters.Text = Traducti on("NouvelHôtel")
Case "BChoix"
.Characters.Text = Traducti on("ChoixHôtel")
Case "BVentesBB", "BVentesBBAuto"
.Characters.Text = Traducti on("VentesBAndB")
J'ai fait une feuille Dico avec une colonne par langue, et j'ai nomm é chaque ensemble de 3 cellules sur chaque ligne de
traduction.
Ensuite une fonction, "Traduction" renvoie le texte dans la bonne lang ue (2 arguments, un nom défini dans la feuille
dico, et le numéro de langue, qui détermine la bonne colonne.Bonjour,
Je suis en train de créer un fichier multilangue, dans lequel on pe ut
modifier la langue affiché dans toutes les cellules an cliaquant sur
un bouton.
Ca marche nickel, sauf pour les boutons que j'ai sur mes feuilles :
With sheets("Langue")
Set MonDoc = Sheets("Index")
MonDoc.Shapes("etape1").Characters.Text = .Cells(4,
quelle_langue).Value '= Sheets("Langue").Cells(4, quelle_langue).Va lue
End with
Me balance un erreur.
quelle_langue est un chiffre qui m'indique quelle colonne prendre.
Merci pour votre aide et bonne soirée,
T.
--
Cordialement,
Michel Gaboly
www.gaboly.com
--
Cordialement,
Michel Gaboly
www.gaboly.com
Génial !
Merci.Bonsoir,
Dans l'exemple de code que je t'indique, il n'y pas de sélection des formes :
For Each s In FStart.Shapes
où FStart est le CodeName d'une feuille du classeur, nommée "Start ", qui est la page d'accueil avec les boutons.
Parmi les boutons, 3 drapeaux (images .Gif récupérées sur le Web ) pour choisir la langue
Pour la fonction Traduction, elle est on ne peut + simple :
Public Function Traduction(c As String)
Traduction = FDico.Range(c).Cells(1, Langue)
End Function
FDico est le CodeName de la feuille "Dico" où sont regroupées les traductions (Col. A français, Col. B italien, Col.C
anglais)
Par exemple avec Langue qui est un numéro, et la plage nommée "Nou velHôtel" composée des 3 cellules A50:C50
Traduction("NouvelHôtel")
renverra
"Nouvel hôtel" si Langue = 1
"Nuovo albergo" si Langue = 2
"New hotel" si Langue = 3
Le + long est de devoir mettre à jour la feuille Dico chaque fois qu 'on a un un nouveau texte (dans une cellule, un
label de UserForm ou un texte à afficher avec Msgbox).
Voilà.Bonjour Michel,
Merci pour ta réponse, mais est-il possible de le faire sans avoir à
sélectionner chaque forme ?
Comme il y aura plusieurs feuille, j'aurais aimé pouvoir modifier l e
texte toutes les formes de toutes mes feuilles, de manière rapide e zst
quasi transparente pour l'utilisateur.
Et j'en profite, mais c'est par paresse : comment marche ta fonction
traduction ?
Merci encore pour ton aide.
T.Bonsoir,
Il faut utiliser TextFrame :
MonDoc.Shapes("etape1").TextFrame.Characters.Text = .Cells(4, quel le_langue).Value '= Sheets("Langue").Cells(4,
quelle_langue).Value
Voici un extrait d'une de mes applis :
Private Sub TraductionBoutons()
Dim s As Shape
Langue = FDico.Evaluate("Langue")
For Each s In FStart.Shapes
' La valeur 1 correspond à msoAutoShape. Les symboles des éventuels commentaires appartiennent aussi à la
collection
' Shapes, comme les boutons, mais Type renvois 4, qui c orrespond à msoButton.
If s.Type = 1 Then
With s.TextFrame
Select Case s.Name
Case "NewHotel"
.Characters.Text = Traduc tion("NouvelHôtel")
Case "BChoix"
.Characters.Text = Traduc tion("ChoixHôtel")
Case "BVentesBB", "BVentesBBAut o"
.Characters.Text = Traduc tion("VentesBAndB")
J'ai fait une feuille Dico avec une colonne par langue, et j'ai nomm é chaque ensemble de 3 cellules sur chaque ligne de
traduction.
Ensuite une fonction, "Traduction" renvoie le texte dans la bonne la ngue (2 arguments, un nom défini dans la feuille
dico, et le numéro de langue, qui détermine la bonne colonne.Bonjour,
Je suis en train de créer un fichier multilangue, dans lequel on peut
modifier la langue affiché dans toutes les cellules an cliaquant sur
un bouton.
Ca marche nickel, sauf pour les boutons que j'ai sur mes feuilles :
With sheets("Langue")
Set MonDoc = Sheets("Index")
MonDoc.Shapes("etape1").Characters.Text = .Cells(4,
quelle_langue).Value '= Sheets("Langue").Cells(4, quelle_langue). Value
End with
Me balance un erreur.
quelle_langue est un chiffre qui m'indique quelle colonne prendre.
Merci pour votre aide et bonne soirée,
T.
--
Cordialement,
Michel Gaboly
www.gaboly.com
--
Cordialement,
Michel Gaboly
www.gaboly.com
Génial !
Merci.
Bonsoir,
Dans l'exemple de code que je t'indique, il n'y pas de sélection des formes :
For Each s In FStart.Shapes
où FStart est le CodeName d'une feuille du classeur, nommée "Start ", qui est la page d'accueil avec les boutons.
Parmi les boutons, 3 drapeaux (images .Gif récupérées sur le Web ) pour choisir la langue
Pour la fonction Traduction, elle est on ne peut + simple :
Public Function Traduction(c As String)
Traduction = FDico.Range(c).Cells(1, Langue)
End Function
FDico est le CodeName de la feuille "Dico" où sont regroupées les traductions (Col. A français, Col. B italien, Col.C
anglais)
Par exemple avec Langue qui est un numéro, et la plage nommée "Nou velHôtel" composée des 3 cellules A50:C50
Traduction("NouvelHôtel")
renverra
"Nouvel hôtel" si Langue = 1
"Nuovo albergo" si Langue = 2
"New hotel" si Langue = 3
Le + long est de devoir mettre à jour la feuille Dico chaque fois qu 'on a un un nouveau texte (dans une cellule, un
label de UserForm ou un texte à afficher avec Msgbox).
Voilà.
Bonjour Michel,
Merci pour ta réponse, mais est-il possible de le faire sans avoir à
sélectionner chaque forme ?
Comme il y aura plusieurs feuille, j'aurais aimé pouvoir modifier l e
texte toutes les formes de toutes mes feuilles, de manière rapide e zst
quasi transparente pour l'utilisateur.
Et j'en profite, mais c'est par paresse : comment marche ta fonction
traduction ?
Merci encore pour ton aide.
T.
Bonsoir,
Il faut utiliser TextFrame :
MonDoc.Shapes("etape1").TextFrame.Characters.Text = .Cells(4, quel le_langue).Value '= Sheets("Langue").Cells(4,
quelle_langue).Value
Voici un extrait d'une de mes applis :
Private Sub TraductionBoutons()
Dim s As Shape
Langue = FDico.Evaluate("Langue")
For Each s In FStart.Shapes
' La valeur 1 correspond à msoAutoShape. Les symboles des éventuels commentaires appartiennent aussi à la
collection
' Shapes, comme les boutons, mais Type renvois 4, qui c orrespond à msoButton.
If s.Type = 1 Then
With s.TextFrame
Select Case s.Name
Case "NewHotel"
.Characters.Text = Traduc tion("NouvelHôtel")
Case "BChoix"
.Characters.Text = Traduc tion("ChoixHôtel")
Case "BVentesBB", "BVentesBBAut o"
.Characters.Text = Traduc tion("VentesBAndB")
J'ai fait une feuille Dico avec une colonne par langue, et j'ai nomm é chaque ensemble de 3 cellules sur chaque ligne de
traduction.
Ensuite une fonction, "Traduction" renvoie le texte dans la bonne la ngue (2 arguments, un nom défini dans la feuille
dico, et le numéro de langue, qui détermine la bonne colonne.
Bonjour,
Je suis en train de créer un fichier multilangue, dans lequel on peut
modifier la langue affiché dans toutes les cellules an cliaquant sur
un bouton.
Ca marche nickel, sauf pour les boutons que j'ai sur mes feuilles :
With sheets("Langue")
Set MonDoc = Sheets("Index")
MonDoc.Shapes("etape1").Characters.Text = .Cells(4,
quelle_langue).Value '= Sheets("Langue").Cells(4, quelle_langue). Value
End with
Me balance un erreur.
quelle_langue est un chiffre qui m'indique quelle colonne prendre.
Merci pour votre aide et bonne soirée,
T.
--
Cordialement,
Michel Gaboly
www.gaboly.com
--
Cordialement,
Michel Gaboly
www.gaboly.com
Génial !
Merci.Bonsoir,
Dans l'exemple de code que je t'indique, il n'y pas de sélection des formes :
For Each s In FStart.Shapes
où FStart est le CodeName d'une feuille du classeur, nommée "Start ", qui est la page d'accueil avec les boutons.
Parmi les boutons, 3 drapeaux (images .Gif récupérées sur le Web ) pour choisir la langue
Pour la fonction Traduction, elle est on ne peut + simple :
Public Function Traduction(c As String)
Traduction = FDico.Range(c).Cells(1, Langue)
End Function
FDico est le CodeName de la feuille "Dico" où sont regroupées les traductions (Col. A français, Col. B italien, Col.C
anglais)
Par exemple avec Langue qui est un numéro, et la plage nommée "Nou velHôtel" composée des 3 cellules A50:C50
Traduction("NouvelHôtel")
renverra
"Nouvel hôtel" si Langue = 1
"Nuovo albergo" si Langue = 2
"New hotel" si Langue = 3
Le + long est de devoir mettre à jour la feuille Dico chaque fois qu 'on a un un nouveau texte (dans une cellule, un
label de UserForm ou un texte à afficher avec Msgbox).
Voilà.Bonjour Michel,
Merci pour ta réponse, mais est-il possible de le faire sans avoir à
sélectionner chaque forme ?
Comme il y aura plusieurs feuille, j'aurais aimé pouvoir modifier l e
texte toutes les formes de toutes mes feuilles, de manière rapide e zst
quasi transparente pour l'utilisateur.
Et j'en profite, mais c'est par paresse : comment marche ta fonction
traduction ?
Merci encore pour ton aide.
T.Bonsoir,
Il faut utiliser TextFrame :
MonDoc.Shapes("etape1").TextFrame.Characters.Text = .Cells(4, quel le_langue).Value '= Sheets("Langue").Cells(4,
quelle_langue).Value
Voici un extrait d'une de mes applis :
Private Sub TraductionBoutons()
Dim s As Shape
Langue = FDico.Evaluate("Langue")
For Each s In FStart.Shapes
' La valeur 1 correspond à msoAutoShape. Les symboles des éventuels commentaires appartiennent aussi à la
collection
' Shapes, comme les boutons, mais Type renvois 4, qui c orrespond à msoButton.
If s.Type = 1 Then
With s.TextFrame
Select Case s.Name
Case "NewHotel"
.Characters.Text = Traduc tion("NouvelHôtel")
Case "BChoix"
.Characters.Text = Traduc tion("ChoixHôtel")
Case "BVentesBB", "BVentesBBAut o"
.Characters.Text = Traduc tion("VentesBAndB")
J'ai fait une feuille Dico avec une colonne par langue, et j'ai nomm é chaque ensemble de 3 cellules sur chaque ligne de
traduction.
Ensuite une fonction, "Traduction" renvoie le texte dans la bonne la ngue (2 arguments, un nom défini dans la feuille
dico, et le numéro de langue, qui détermine la bonne colonne.Bonjour,
Je suis en train de créer un fichier multilangue, dans lequel on peut
modifier la langue affiché dans toutes les cellules an cliaquant sur
un bouton.
Ca marche nickel, sauf pour les boutons que j'ai sur mes feuilles :
With sheets("Langue")
Set MonDoc = Sheets("Index")
MonDoc.Shapes("etape1").Characters.Text = .Cells(4,
quelle_langue).Value '= Sheets("Langue").Cells(4, quelle_langue). Value
End with
Me balance un erreur.
quelle_langue est un chiffre qui m'indique quelle colonne prendre.
Merci pour votre aide et bonne soirée,
T.
--
Cordialement,
Michel Gaboly
www.gaboly.com
--
Cordialement,
Michel Gaboly
www.gaboly.com
Quand même pas ;-)))Génial !
Merci.Bonsoir,
Dans l'exemple de code que je t'indique, il n'y pas de sélection des formes :
For Each s In FStart.Shapes
où FStart est le CodeName d'une feuille du classeur, nommée "Start ", qui est la page d'accueil avec les boutons.
Parmi les boutons, 3 drapeaux (images .Gif récupérées sur le Web ) pour choisir la langue
Pour la fonction Traduction, elle est on ne peut + simple :
Public Function Traduction(c As String)
Traduction = FDico.Range(c).Cells(1, Langue)
End Function
FDico est le CodeName de la feuille "Dico" où sont regroupées les traductions (Col. A français, Col. B italien, Col.C
anglais)
Par exemple avec Langue qui est un numéro, et la plage nommée "Nou velHôtel" composée des 3 cellules A50:C50
Traduction("NouvelHôtel")
renverra
"Nouvel hôtel" si Langue = 1
"Nuovo albergo" si Langue = 2
"New hotel" si Langue = 3
Le + long est de devoir mettre à jour la feuille Dico chaque fois qu 'on a un un nouveau texte (dans une cellule, un
label de UserForm ou un texte à afficher avec Msgbox).
Voilà.Bonjour Michel,
Merci pour ta réponse, mais est-il possible de le faire sans avoir à
sélectionner chaque forme ?
Comme il y aura plusieurs feuille, j'aurais aimé pouvoir modifier le
texte toutes les formes de toutes mes feuilles, de manière rapide e zst
quasi transparente pour l'utilisateur.
Et j'en profite, mais c'est par paresse : comment marche ta fonction
traduction ?
Merci encore pour ton aide.
T.Bonsoir,
Il faut utiliser TextFrame :
MonDoc.Shapes("etape1").TextFrame.Characters.Text = .Cells(4, quel le_langue).Value '= Sheets("Langue").Cells(4,
quelle_langue).Value
Voici un extrait d'une de mes applis :
Private Sub TraductionBoutons()
Dim s As Shape
Langue = FDico.Evaluate("Langue")
For Each s In FStart.Shapes
' La valeur 1 correspond à msoAutoShape. Les symboles des éventuels commentaires appartiennent aussi à la
collection
' Shapes, comme les boutons, mais Type renvois 4, qui c orrespond à msoButton.
If s.Type = 1 Then
With s.TextFrame
Select Case s.Name
Case "NewHotel"
.Characters.Text = Traduc tion("NouvelHôtel")
Case "BChoix"
.Characters.Text = Traduc tion("ChoixHôtel")
Case "BVentesBB", "BVentesBBAut o"
.Characters.Text = Traduc tion("VentesBAndB")
J'ai fait une feuille Dico avec une colonne par langue, et j'ai nomm é chaque ensemble de 3 cellules sur chaque ligne de
traduction.
Ensuite une fonction, "Traduction" renvoie le texte dans la bonne la ngue (2 arguments, un nom défini dans la feuille
dico, et le numéro de langue, qui détermine la bonne colonne.Bonjour,
Je suis en train de créer un fichier multilangue, dans lequel on peut
modifier la langue affiché dans toutes les cellules an cliaquant sur
un bouton.
Ca marche nickel, sauf pour les boutons que j'ai sur mes feuilles :
With sheets("Langue")
Set MonDoc = Sheets("Index")
MonDoc.Shapes("etape1").Characters.Text = .Cells(4,
quelle_langue).Value '= Sheets("Langue").Cells(4, quelle_langue). Value
End with
Me balance un erreur.
quelle_langue est un chiffre qui m'indique quelle colonne prendre.
Merci pour votre aide et bonne soirée,
T.
--
Cordialement,
Michel Gaboly
www.gaboly.com
--
Cordialement,
Michel Gaboly
www.gaboly.com
--
Cordialement,
Michel Gaboly
www.gaboly.com
Quand même pas ;-)))
Génial !
Merci.
Bonsoir,
Dans l'exemple de code que je t'indique, il n'y pas de sélection des formes :
For Each s In FStart.Shapes
où FStart est le CodeName d'une feuille du classeur, nommée "Start ", qui est la page d'accueil avec les boutons.
Parmi les boutons, 3 drapeaux (images .Gif récupérées sur le Web ) pour choisir la langue
Pour la fonction Traduction, elle est on ne peut + simple :
Public Function Traduction(c As String)
Traduction = FDico.Range(c).Cells(1, Langue)
End Function
FDico est le CodeName de la feuille "Dico" où sont regroupées les traductions (Col. A français, Col. B italien, Col.C
anglais)
Par exemple avec Langue qui est un numéro, et la plage nommée "Nou velHôtel" composée des 3 cellules A50:C50
Traduction("NouvelHôtel")
renverra
"Nouvel hôtel" si Langue = 1
"Nuovo albergo" si Langue = 2
"New hotel" si Langue = 3
Le + long est de devoir mettre à jour la feuille Dico chaque fois qu 'on a un un nouveau texte (dans une cellule, un
label de UserForm ou un texte à afficher avec Msgbox).
Voilà.
Bonjour Michel,
Merci pour ta réponse, mais est-il possible de le faire sans avoir à
sélectionner chaque forme ?
Comme il y aura plusieurs feuille, j'aurais aimé pouvoir modifier le
texte toutes les formes de toutes mes feuilles, de manière rapide e zst
quasi transparente pour l'utilisateur.
Et j'en profite, mais c'est par paresse : comment marche ta fonction
traduction ?
Merci encore pour ton aide.
T.
Bonsoir,
Il faut utiliser TextFrame :
MonDoc.Shapes("etape1").TextFrame.Characters.Text = .Cells(4, quel le_langue).Value '= Sheets("Langue").Cells(4,
quelle_langue).Value
Voici un extrait d'une de mes applis :
Private Sub TraductionBoutons()
Dim s As Shape
Langue = FDico.Evaluate("Langue")
For Each s In FStart.Shapes
' La valeur 1 correspond à msoAutoShape. Les symboles des éventuels commentaires appartiennent aussi à la
collection
' Shapes, comme les boutons, mais Type renvois 4, qui c orrespond à msoButton.
If s.Type = 1 Then
With s.TextFrame
Select Case s.Name
Case "NewHotel"
.Characters.Text = Traduc tion("NouvelHôtel")
Case "BChoix"
.Characters.Text = Traduc tion("ChoixHôtel")
Case "BVentesBB", "BVentesBBAut o"
.Characters.Text = Traduc tion("VentesBAndB")
J'ai fait une feuille Dico avec une colonne par langue, et j'ai nomm é chaque ensemble de 3 cellules sur chaque ligne de
traduction.
Ensuite une fonction, "Traduction" renvoie le texte dans la bonne la ngue (2 arguments, un nom défini dans la feuille
dico, et le numéro de langue, qui détermine la bonne colonne.
Bonjour,
Je suis en train de créer un fichier multilangue, dans lequel on peut
modifier la langue affiché dans toutes les cellules an cliaquant sur
un bouton.
Ca marche nickel, sauf pour les boutons que j'ai sur mes feuilles :
With sheets("Langue")
Set MonDoc = Sheets("Index")
MonDoc.Shapes("etape1").Characters.Text = .Cells(4,
quelle_langue).Value '= Sheets("Langue").Cells(4, quelle_langue). Value
End with
Me balance un erreur.
quelle_langue est un chiffre qui m'indique quelle colonne prendre.
Merci pour votre aide et bonne soirée,
T.
--
Cordialement,
Michel Gaboly
www.gaboly.com
--
Cordialement,
Michel Gaboly
www.gaboly.com
--
Cordialement,
Michel Gaboly
www.gaboly.com
Quand même pas ;-)))Génial !
Merci.Bonsoir,
Dans l'exemple de code que je t'indique, il n'y pas de sélection des formes :
For Each s In FStart.Shapes
où FStart est le CodeName d'une feuille du classeur, nommée "Start ", qui est la page d'accueil avec les boutons.
Parmi les boutons, 3 drapeaux (images .Gif récupérées sur le Web ) pour choisir la langue
Pour la fonction Traduction, elle est on ne peut + simple :
Public Function Traduction(c As String)
Traduction = FDico.Range(c).Cells(1, Langue)
End Function
FDico est le CodeName de la feuille "Dico" où sont regroupées les traductions (Col. A français, Col. B italien, Col.C
anglais)
Par exemple avec Langue qui est un numéro, et la plage nommée "Nou velHôtel" composée des 3 cellules A50:C50
Traduction("NouvelHôtel")
renverra
"Nouvel hôtel" si Langue = 1
"Nuovo albergo" si Langue = 2
"New hotel" si Langue = 3
Le + long est de devoir mettre à jour la feuille Dico chaque fois qu 'on a un un nouveau texte (dans une cellule, un
label de UserForm ou un texte à afficher avec Msgbox).
Voilà.Bonjour Michel,
Merci pour ta réponse, mais est-il possible de le faire sans avoir à
sélectionner chaque forme ?
Comme il y aura plusieurs feuille, j'aurais aimé pouvoir modifier le
texte toutes les formes de toutes mes feuilles, de manière rapide e zst
quasi transparente pour l'utilisateur.
Et j'en profite, mais c'est par paresse : comment marche ta fonction
traduction ?
Merci encore pour ton aide.
T.Bonsoir,
Il faut utiliser TextFrame :
MonDoc.Shapes("etape1").TextFrame.Characters.Text = .Cells(4, quel le_langue).Value '= Sheets("Langue").Cells(4,
quelle_langue).Value
Voici un extrait d'une de mes applis :
Private Sub TraductionBoutons()
Dim s As Shape
Langue = FDico.Evaluate("Langue")
For Each s In FStart.Shapes
' La valeur 1 correspond à msoAutoShape. Les symboles des éventuels commentaires appartiennent aussi à la
collection
' Shapes, comme les boutons, mais Type renvois 4, qui c orrespond à msoButton.
If s.Type = 1 Then
With s.TextFrame
Select Case s.Name
Case "NewHotel"
.Characters.Text = Traduc tion("NouvelHôtel")
Case "BChoix"
.Characters.Text = Traduc tion("ChoixHôtel")
Case "BVentesBB", "BVentesBBAut o"
.Characters.Text = Traduc tion("VentesBAndB")
J'ai fait une feuille Dico avec une colonne par langue, et j'ai nomm é chaque ensemble de 3 cellules sur chaque ligne de
traduction.
Ensuite une fonction, "Traduction" renvoie le texte dans la bonne la ngue (2 arguments, un nom défini dans la feuille
dico, et le numéro de langue, qui détermine la bonne colonne.Bonjour,
Je suis en train de créer un fichier multilangue, dans lequel on peut
modifier la langue affiché dans toutes les cellules an cliaquant sur
un bouton.
Ca marche nickel, sauf pour les boutons que j'ai sur mes feuilles :
With sheets("Langue")
Set MonDoc = Sheets("Index")
MonDoc.Shapes("etape1").Characters.Text = .Cells(4,
quelle_langue).Value '= Sheets("Langue").Cells(4, quelle_langue). Value
End with
Me balance un erreur.
quelle_langue est un chiffre qui m'indique quelle colonne prendre.
Merci pour votre aide et bonne soirée,
T.
--
Cordialement,
Michel Gaboly
www.gaboly.com
--
Cordialement,
Michel Gaboly
www.gaboly.com
--
Cordialement,
Michel Gaboly
www.gaboly.com
Génial !
Merci.Bonsoir,
Dans l'exemple de code que je t'indique, il n'y pas de sélection des
formes :
For Each s In FStart.Shapes
où FStart est le CodeName d'une feuille du classeur, nommée "Start", qui
est la page d'accueil avec les boutons.
Parmi les boutons, 3 drapeaux (images .Gif récupérées sur le Web) pour
choisir la langue
Pour la fonction Traduction, elle est on ne peut + simple :
Public Function Traduction(c As String)
Traduction = FDico.Range(c).Cells(1, Langue)
End Function
FDico est le CodeName de la feuille "Dico" où sont regroupées les
traductions (Col. A français, Col. B italien, Col.C
anglais)
Par exemple avec Langue qui est un numéro, et la plage nommée
"NouvelHôtel" composée des 3 cellules A50:C50
Traduction("NouvelHôtel")
renverra
"Nouvel hôtel" si Langue = 1
"Nuovo albergo" si Langue = 2
"New hotel" si Langue = 3
Le + long est de devoir mettre à jour la feuille Dico chaque fois qu'on a
un un nouveau texte (dans une cellule, un
label de UserForm ou un texte à afficher avec Msgbox).
Voilà.Bonjour Michel,
Merci pour ta réponse, mais est-il possible de le faire sans avoir à
sélectionner chaque forme ?
Comme il y aura plusieurs feuille, j'aurais aimé pouvoir modifier le
texte toutes les formes de toutes mes feuilles, de manière rapide ezst
quasi transparente pour l'utilisateur.
Et j'en profite, mais c'est par paresse : comment marche ta fonction
traduction ?
Merci encore pour ton aide.
T.Bonsoir,
Il faut utiliser TextFrame :
MonDoc.Shapes("etape1").TextFrame.Characters.Text = .Cells(4,
quelle_langue).Value '= Sheets("Langue").Cells(4,
quelle_langue).Value
Voici un extrait d'une de mes applis :
Private Sub TraductionBoutons()
Dim s As Shape
Langue = FDico.Evaluate("Langue")
For Each s In FStart.Shapes
' La valeur 1 correspond à msoAutoShape. Les symboles des
éventuels commentaires appartiennent aussi à la
collection
' Shapes, comme les boutons, mais Type renvois 4, qui
correspond à msoButton.
If s.Type = 1 Then
With s.TextFrame
Select Case s.Name
Case "NewHotel"
.Characters.Text =
Traduction("NouvelHôtel")
Case "BChoix"
.Characters.Text =
Traduction("ChoixHôtel")
Case "BVentesBB", "BVentesBBAuto"
.Characters.Text =
Traduction("VentesBAndB")
J'ai fait une feuille Dico avec une colonne par langue, et j'ai nommé
chaque ensemble de 3 cellules sur chaque ligne de
traduction.
Ensuite une fonction, "Traduction" renvoie le texte dans la bonne
langue (2 arguments, un nom défini dans la feuille
dico, et le numéro de langue, qui détermine la bonne colonne.Bonjour,
Je suis en train de créer un fichier multilangue, dans lequel on peut
modifier la langue affiché dans toutes les cellules an cliaquant sur
un bouton.
Ca marche nickel, sauf pour les boutons que j'ai sur mes feuilles :
With sheets("Langue")
Set MonDoc = Sheets("Index")
MonDoc.Shapes("etape1").Characters.Text = .Cells(4,
quelle_langue).Value '= Sheets("Langue").Cells(4, quelle_langue).Value
End with
Me balance un erreur.
quelle_langue est un chiffre qui m'indique quelle colonne prendre.
Merci pour votre aide et bonne soirée,
T.
--
Cordialement,
Michel Gaboly
www.gaboly.com
--
Cordialement,
Michel Gaboly
www.gaboly.com
Génial !
Merci.
Bonsoir,
Dans l'exemple de code que je t'indique, il n'y pas de sélection des
formes :
For Each s In FStart.Shapes
où FStart est le CodeName d'une feuille du classeur, nommée "Start", qui
est la page d'accueil avec les boutons.
Parmi les boutons, 3 drapeaux (images .Gif récupérées sur le Web) pour
choisir la langue
Pour la fonction Traduction, elle est on ne peut + simple :
Public Function Traduction(c As String)
Traduction = FDico.Range(c).Cells(1, Langue)
End Function
FDico est le CodeName de la feuille "Dico" où sont regroupées les
traductions (Col. A français, Col. B italien, Col.C
anglais)
Par exemple avec Langue qui est un numéro, et la plage nommée
"NouvelHôtel" composée des 3 cellules A50:C50
Traduction("NouvelHôtel")
renverra
"Nouvel hôtel" si Langue = 1
"Nuovo albergo" si Langue = 2
"New hotel" si Langue = 3
Le + long est de devoir mettre à jour la feuille Dico chaque fois qu'on a
un un nouveau texte (dans une cellule, un
label de UserForm ou un texte à afficher avec Msgbox).
Voilà.
Bonjour Michel,
Merci pour ta réponse, mais est-il possible de le faire sans avoir à
sélectionner chaque forme ?
Comme il y aura plusieurs feuille, j'aurais aimé pouvoir modifier le
texte toutes les formes de toutes mes feuilles, de manière rapide ezst
quasi transparente pour l'utilisateur.
Et j'en profite, mais c'est par paresse : comment marche ta fonction
traduction ?
Merci encore pour ton aide.
T.
Bonsoir,
Il faut utiliser TextFrame :
MonDoc.Shapes("etape1").TextFrame.Characters.Text = .Cells(4,
quelle_langue).Value '= Sheets("Langue").Cells(4,
quelle_langue).Value
Voici un extrait d'une de mes applis :
Private Sub TraductionBoutons()
Dim s As Shape
Langue = FDico.Evaluate("Langue")
For Each s In FStart.Shapes
' La valeur 1 correspond à msoAutoShape. Les symboles des
éventuels commentaires appartiennent aussi à la
collection
' Shapes, comme les boutons, mais Type renvois 4, qui
correspond à msoButton.
If s.Type = 1 Then
With s.TextFrame
Select Case s.Name
Case "NewHotel"
.Characters.Text =
Traduction("NouvelHôtel")
Case "BChoix"
.Characters.Text =
Traduction("ChoixHôtel")
Case "BVentesBB", "BVentesBBAuto"
.Characters.Text =
Traduction("VentesBAndB")
J'ai fait une feuille Dico avec une colonne par langue, et j'ai nommé
chaque ensemble de 3 cellules sur chaque ligne de
traduction.
Ensuite une fonction, "Traduction" renvoie le texte dans la bonne
langue (2 arguments, un nom défini dans la feuille
dico, et le numéro de langue, qui détermine la bonne colonne.
Bonjour,
Je suis en train de créer un fichier multilangue, dans lequel on peut
modifier la langue affiché dans toutes les cellules an cliaquant sur
un bouton.
Ca marche nickel, sauf pour les boutons que j'ai sur mes feuilles :
With sheets("Langue")
Set MonDoc = Sheets("Index")
MonDoc.Shapes("etape1").Characters.Text = .Cells(4,
quelle_langue).Value '= Sheets("Langue").Cells(4, quelle_langue).Value
End with
Me balance un erreur.
quelle_langue est un chiffre qui m'indique quelle colonne prendre.
Merci pour votre aide et bonne soirée,
T.
--
Cordialement,
Michel Gaboly
www.gaboly.com
--
Cordialement,
Michel Gaboly
www.gaboly.com
Génial !
Merci.Bonsoir,
Dans l'exemple de code que je t'indique, il n'y pas de sélection des
formes :
For Each s In FStart.Shapes
où FStart est le CodeName d'une feuille du classeur, nommée "Start", qui
est la page d'accueil avec les boutons.
Parmi les boutons, 3 drapeaux (images .Gif récupérées sur le Web) pour
choisir la langue
Pour la fonction Traduction, elle est on ne peut + simple :
Public Function Traduction(c As String)
Traduction = FDico.Range(c).Cells(1, Langue)
End Function
FDico est le CodeName de la feuille "Dico" où sont regroupées les
traductions (Col. A français, Col. B italien, Col.C
anglais)
Par exemple avec Langue qui est un numéro, et la plage nommée
"NouvelHôtel" composée des 3 cellules A50:C50
Traduction("NouvelHôtel")
renverra
"Nouvel hôtel" si Langue = 1
"Nuovo albergo" si Langue = 2
"New hotel" si Langue = 3
Le + long est de devoir mettre à jour la feuille Dico chaque fois qu'on a
un un nouveau texte (dans une cellule, un
label de UserForm ou un texte à afficher avec Msgbox).
Voilà.Bonjour Michel,
Merci pour ta réponse, mais est-il possible de le faire sans avoir à
sélectionner chaque forme ?
Comme il y aura plusieurs feuille, j'aurais aimé pouvoir modifier le
texte toutes les formes de toutes mes feuilles, de manière rapide ezst
quasi transparente pour l'utilisateur.
Et j'en profite, mais c'est par paresse : comment marche ta fonction
traduction ?
Merci encore pour ton aide.
T.Bonsoir,
Il faut utiliser TextFrame :
MonDoc.Shapes("etape1").TextFrame.Characters.Text = .Cells(4,
quelle_langue).Value '= Sheets("Langue").Cells(4,
quelle_langue).Value
Voici un extrait d'une de mes applis :
Private Sub TraductionBoutons()
Dim s As Shape
Langue = FDico.Evaluate("Langue")
For Each s In FStart.Shapes
' La valeur 1 correspond à msoAutoShape. Les symboles des
éventuels commentaires appartiennent aussi à la
collection
' Shapes, comme les boutons, mais Type renvois 4, qui
correspond à msoButton.
If s.Type = 1 Then
With s.TextFrame
Select Case s.Name
Case "NewHotel"
.Characters.Text =
Traduction("NouvelHôtel")
Case "BChoix"
.Characters.Text =
Traduction("ChoixHôtel")
Case "BVentesBB", "BVentesBBAuto"
.Characters.Text =
Traduction("VentesBAndB")
J'ai fait une feuille Dico avec une colonne par langue, et j'ai nommé
chaque ensemble de 3 cellules sur chaque ligne de
traduction.
Ensuite une fonction, "Traduction" renvoie le texte dans la bonne
langue (2 arguments, un nom défini dans la feuille
dico, et le numéro de langue, qui détermine la bonne colonne.Bonjour,
Je suis en train de créer un fichier multilangue, dans lequel on peut
modifier la langue affiché dans toutes les cellules an cliaquant sur
un bouton.
Ca marche nickel, sauf pour les boutons que j'ai sur mes feuilles :
With sheets("Langue")
Set MonDoc = Sheets("Index")
MonDoc.Shapes("etape1").Characters.Text = .Cells(4,
quelle_langue).Value '= Sheets("Langue").Cells(4, quelle_langue).Value
End with
Me balance un erreur.
quelle_langue est un chiffre qui m'indique quelle colonne prendre.
Merci pour votre aide et bonne soirée,
T.
--
Cordialement,
Michel Gaboly
www.gaboly.com
--
Cordialement,
Michel Gaboly
www.gaboly.com
Sissi.
Sissi.
Sissi.