Problème code VBA et langue arabe

Bonjour,
J'ai écrit mon code vba en français tout en glissant un mot en arabe que j'ai mis entre guillemets "الأولى".
La macro me renvoie tout le texte en français en bonne et due forme mais pour le mot en arabe, elle renvoie "??????".
Pouvez vous m'aider.
Merci d'avance.

8 réponses

  • Votes
  • Date
  • Date décroissante
  1. Bonjour,

    Utilises un label dans un userform pour l'afficher :
    Private Sub Test()
    Dim s As String
      s = ChrW(1575) & ChrW(1604) & ChrW(1650) & ChrW(1608) & ChrW(1604) & ChrW(1609)
      Range("A1").Value = s
      UserForm1.Label1.Caption = s
      UserForm1.Show
      Unload UserForm1
    End Sub


    1. Contributeur
      bonjour, je te suggère d'expliquer ce que la macro fait avec le texte, par exemple en partageant le code VBA.
      1. Je vous prie de m'expliquer étape par étape ce que je dois faire pour exécuter ma macro qui doit renvoyer un mot en arabe ("الأولى")
        Merci d'avance
        1. renvoyer où ???
        2. Suivez ces instructions,

          Puis ce si,

      2. Dans mon code VBA, j'ai programmé un mot en arabe qui, lorsque j'appuie sur executer la macro, doit etre écrit sur ma page excel 2007.
        Merci à vous
        1. Par exemple en A1 :
          Private Sub Test()
          Dim s As String
            s = ChrW(1575) & ChrW(1604) & ChrW(1650) & ChrW(1608) & ChrW(1604) & ChrW(1609)
            Range("A1").Value = s
          End Sub
      3. J'ai essayé avec votre macro mais ma macro refuse de me renvoyer du texte en arabe alors qu'elle me renvoie du texte en français le plus normalement du monde. Je ne comprends rien à cela . Aidez moi SVP.
        Merci
        1. Et c'est quoi ta macro ???
      4. Range("A1").Select
        ActiveCell.FormulaR1C1 = "الأولى"
        Range("A2").Select
        End Sub
        1. Non, c'est pas possible, c'est pas ta macro, c'est ce que tu voudrais mais pas ce qu'il y a écrit dans l'éditeur VBA, dans l'éditeur VBA ça donne :
          Range("A1").Select
          ActiveCell.FormulaR1C1 = "??????"
          Range("A2").Select
          End Sub

          L'éditeur VBA n'accepte pas directement les caractères unicode sous forme de chaine !!!!
          c'est pour cela que j'ai écrit la valeur unicode de chaque caractère :
          s = ChrW(1575) & ChrW(1604) & ChrW(1650) & ChrW(1608) & ChrW(1604) & ChrW(1609)
      5. ça ne marche pas pas
        1. Bien sur que ça marche :
          https://mon-partage.fr/f/C5oG01GS/