Caractères spéciaux [Résolu]

pascal82

XLDnaute Occasionnel
Bonjour à tous et à toutes,

Pour impressionner ma petite fille j'ai réalisé un petit programme pour valider sa capacité d'apprentissage (en toute modestie). Principe pas très compliquer a comprendre si vous réalisez les calculs avec Excel.

Pour parvenir à un premier résultat, j'ai caché les calculs sous le bandeau B28:K31 parce que je n'arrive pas a générer des caractères spéciaux de façon aléatoire par macro et les intégrer dans le tableau.
Je cherche donc a supprimer les calculs cachés pour les intégrer directement dans une macro.

Un grand merci par avance au contributeur
 

Pièces jointes

  • Grille.xlsm
    24.7 KB · Affichages: 80
  • Grille.xlsm
    24.7 KB · Affichages: 89
  • Grille.xlsm
    24.7 KB · Affichages: 87
Dernière édition:

phlaurent55

Nous a quittés en 2020
Repose en paix
Re : Caractères spéciaux

Bonjour Pascal,

la formule en B32:
=SI(B31=1;$B29;SI(B31=2;$C29;SI(B31=3;$D29;SI(B31=4;$E29;SI(B31=5;$F29;SI(B31=6;$G29;SI(B31=7;$H29;SI(B31=8;$I29;SI(B31=9;$J29;$K29)))))))))

peut être remplacée par: =INDEX($B$29:$K$29;;B31) à recopier vers la droite

pour le reste, j'ai pas trop compris la question et le fonctionnement

à+
Philippe
 

pascal82

XLDnaute Occasionnel
Re : Caractères spéciaux

Bonjour Philippe,

Merci pour la simplification apportée, cependant ce n'était pas le sens de la question, je n'ai donc pas été suffisamment explicit, désolé.
Je vais donc tenter d'être plus clair:
Pour générer des lettres de façon aléatoire j'utilise
"=CHAR(INT(RAND()*26+1)+64)" ce qui me permet de renseigner toutes les cases "lettres" de façon aléatoire.

For a = 0 To 9
For b = 0 To 20 Step 2
Range("B6").Offset(b, a).FormulaR1C1 = "=CHAR(INT(RAND()*26+1)+64)"
Next
Next

Pour générer un caractère spécial j'utilise
"= ChrW(&H2260)"
par contre je n'arrive pas a modifier automatiquement le chiffre 2260 qui correspond à un caractère en 2265 qui en est un autre etc..
Le fichier initial est modifié pour faire apparaître une grille avec des lettres "a deviner", comme vous pouvez le constater le tableau B28:K31 de l'onglet "lettre" a disparu.
Pour résumer je désire remplacer "=CHAR(INT(RAND()*26+1)+64)" par "= ChrW(&H2260)"

Encore merci
 

Pièces jointes

  • Grille.xlsm
    33 KB · Affichages: 37
  • Grille.xlsm
    33 KB · Affichages: 45
  • Grille.xlsm
    33 KB · Affichages: 47

Statistiques des forums

Discussions
312 305
Messages
2 087 078
Membres
103 455
dernier inscrit
saramachado