Bonjour

J'ai besoin de faire une macro Excel qui permet de fonctionner en deux langues (francais - anglais)
pour cela j'ai un tableau Excel qui regroupe les champs suivants dans la feuille "ToolLang"

Type Object captionName English French
Sheet Menu CmdCommande Test List Liste de test
Form Bdtest boutonmarche Start Marche
...


J'ai par la suite le code suivant
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
 
Public Sub Translation()
Dim i As Integer
Dim ObjectName As String
Dim CaptionName As String
Dim CaptionText As String
Dim Lang As Integer
 
Lang = 1
i = 0
 
Do While (Sheets("ToolLang").Cells(i + 2, 1).Value > 0)
 
    If Sheets("ToolLang").Cells(i + 2, 1).Value = "Sheet" Then
        ObjectName = Sheets("ToolLang").Cells(i + 2, 2).Value
        CaptionName = Sheets("ToolLang").Cells(i + 2, 3).Value
        CaptionText = Sheets("ToolLang").Cells(i + 2, 3 + Lang).Value
        Sheets(ObjectName).CaptionName.Caption = CaptionText '<-- erreur ici
    End If
 
Loop

Le code n'accepte pas la dernière ligne alors que si j'entre le code si dessous, tout se passe correctement.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
Sheets(ObjectName).CmdCommand.caption = CaptionText
Si je comprend le nom CaptionName ne peut être défini comme une chaine de caractère. Mais alors comment faire car j'ai essayé plusieurs solutions sans réussir à trouver.

MErci pour votre aide
Benoit