J'essaie d'obtenir ²
à afficher dans une chaîne. Par exemple, ma sortie devrait être dans une zone de texte ActiveX
et devrait lire R² = 50
.
J'ai essayé les deux déclarations suivantes:
Selection.Characters.Text = "R&ChrW(&HB2)&" = " & variable
mais ceci affiche un 0
comme résultat dans la zone de texte. Et ça:
Selection.Characters.Text = "R² = " & variable
affiche également un 0
.
Vous ne savez pas à quel type de zone de texte vous vous référez. Cependant, je ne suis pas sûr que vous puissiez le faire dans une zone de texte d'un formulaire utilisateur.
Vous pouvez cependant créer une zone de texte sur une feuille.
Sheets("Sheet1").Shapes("TextBox 1").TextFrame2.TextRange.Text = "R2=" & variable
Sheets("Sheet1").Shapes("TextBox 1").TextFrame2.TextRange.Characters(2, 1).Font.Superscript = msoTrue
Et même chose pour une cellule Excel
Sheets("Sheet1").Range("A1").Characters(2, 1).Font.Superscript = True
Si ce n'est pas ce que vous voulez, vous devrez fournir plus d'informations dans votre question.
EDIT: posté ceci après le commentaire désolé
Pas besoin d'être trop compliqué. Si tout ce dont vous avez besoin est ², utilisez la représentation unicode.
http://en.wikipedia.org/wiki/Unicode_subscripts_and_superscripts
(C'est ainsi que je suppose que vous avez le ² à apparaître dans votre question.)
Je crée des équations avec des nombres aléatoires dans VBA et pour x carré mis dans x ^ 2.
Je lis chaque texte carré (ou zone de texte) dans une chaîne.
Je lis ensuite chaque caractère de la chaîne et note l’emplacement des ^ ("chapeaux") dans chacun.
Disons que les chapeaux étaient aux positions 4, 8 et 12.
Je coupe ensuite le premier chapeau - la position du personnage à exposer est maintenant de 4, celle des autres chapeaux est maintenant de 7 et 11 . à 7 et le chapeau a été déplacé à 10 . Je coupe le dernier chapeau .. le caractère en exposant est maintenant la position 10.
Je sélectionne maintenant chaque caractère à tour de rôle et change la police en exposant.
Ainsi, je peux remplir une feuille de calcul avec de l’algèbre à l’aide de ^, puis appeler une routine pour la ranger.
Pour les grandes puissances comme x aux 23, je construis x ^ 2 ^ 3 et la routine ci-dessus le fait.