whitelegend
Messages postés156Date d'inscriptionvendredi 13 janvier 2006StatutMembreDernière intervention 2 mars 2009
-
24 nov. 2008 à 14:06
whitelegend
Messages postés156Date d'inscriptionvendredi 13 janvier 2006StatutMembreDernière intervention 2 mars 2009
-
27 nov. 2008 à 19:32
Re-bonjour communauté de vbfrance,
Voilà je suis à nouveau confronté à un problème que je soupçonne être un problème de syntaxe...
Voilà je souhaite écrire dans une de mes cellules Excel certains caractères spéciaux tels que : " ø " obtenu par la combinaison des touches "ALT + 0248" ou bien " É " obtenu avec "ALT + 0201".
J'ai absolument besoin de rentrer ces caractères par la fonction "Sendkeys" et j'ai essayé plein de syntaxe différente mais aucune avec un résultat probant...
Application.SendKeys "%" + "0248"
Application.SendKeys "%0248"
Application.SendKeys "% + 0248"
Application.SendKeys "% & 0248"
Voilà auriez vous une solution por réaliser cette manipulation svp, sachant que à terme le chiffre ( ici "0248") sera remplacé par une variable (ex: "i") ?
ALT+3 n'est donc pas le "vrai" code, c'est l'éditeur (comme excel, cette zone de saisie ou autre) qui interprète, il faut jouer donc bien jouer sur ChrW$
après quelques tests, sendkeys semble éprouver des difficultés avec certaines valeurs
(réussi pour d'autre comme chrw(&H3038) je crois)
par contre si je joue avec le presse-papier (sous vb6), le "coller" est valide, mais pas le sendkeys dans la zone de texte pourtant unicode (forms2, un "?" (63) est affiché).
testé aussi par d'autre méthodes (keyb_event) avec la combinaison manuelle, l'os l'a mal digéré
bref une idée est peut-être de faire une chaine unicode de la liste complète désirée, et de la coller (api puis sendkeys de ctrl+v) dans la première cellule
doit y avoir d'autres méthodes mais en respectant ta volonté de "sendkeys obligatoire" çà limite le champ d'actions..
bon courage
Prenez un instant pour répondre à [sujet-SONDAGE-POP3-POUR-CS_769706.aspx ce sondage] svp
Vous n’avez pas trouvé la réponse que vous recherchez ?
lillith212
Messages postés1229Date d'inscriptionvendredi 16 novembre 2007StatutMembreDernière intervention16 juin 2009 24 nov. 2008 à 14:46
Je suis pas spécialiste vba? J'ai donc quelques questions afin de bien comprendre.
ALT+1 = ? --> Ca tu l'as où???
Car dans insertion de caractere spéciaux en fouillant un peu j'ai ceci :
63 en décimal et 003F en ASCII pour le caractere ?
Donc j'ai besoin d'explication... Désolée...
whitelegend
Messages postés156Date d'inscriptionvendredi 13 janvier 2006StatutMembreDernière intervention 2 mars 2009 24 nov. 2008 à 14:53
Pas de problème,
en fait ALT + 1 ne renvoie pas un point d'interrogation comme le montre le post mais un smiley qui sourit.
ALT + 4 me fait le sigle " carreau " d'un jeu de carte par ex.
ALT + 5 me fait le sigle "pique" d'un jeu de carte
Or ces choses là n'ont pas de correspondances dans la fonction char() (enfin j'en ai pas trouvé ... :p )
Si tu veux je suis dispo sur msn pour en parler ... ( whitelegend030@hotmail.com si tu veux....)
whitelegend
Messages postés156Date d'inscriptionvendredi 13 janvier 2006StatutMembreDernière intervention 2 mars 2009 25 nov. 2008 à 15:49
Renfield,
Je ne trouve pas comment exploiter ce code ... :S
je comprends un peu le principe mais ce code n'est pas si débutant de que ca ... :D ( comme c'est dit dans le descriptif )
En revanche j'ai trouvé un très bon exemple pour expliquer ce que je veux..:
Ecrire un code qui balayerait toutes les combinaisons de ALT + 1 to 1000 et stockerai chaque résultats dans la cellule Excel appropriée Colonne A ligne 1 to 1000:
Cellule A1 = ALT +1
Cellule A2 = ALT +2
....
Voila si je réussissais à écrire un tel code je pourrais m'en servir por ce que je veux faire...
Donc je continue à chercher activement mais toutes vos idées ou conseils seront les bien venus ^^
whitelegend
Messages postés156Date d'inscriptionvendredi 13 janvier 2006StatutMembreDernière intervention 2 mars 2009 27 nov. 2008 à 09:37
Dans quoi me suis-je encore embarqué ... :p apparemment mon problème dois dépasser mes compétences...
Ok donc à la vue des ces dernière infos de la part de PCPT j'ai une autre question.
Admettons que je laisse tomber mon " sendkeys" ... quel est la fonction, si fonction il y a, pour afficher les caratères représenter par les codes unicode de type "U00028" ou "[../c.aspx?u=aHR0cDovL3d3dy55b3lvZGVzaWduLm9yZy9kb2MvdzNjL21hdGhtbDIvZ2x5cGhzLzAyNi9VMDI2NjUucG5n U02665]" .... du genre
_fonction(U00028) qui renverrai donc une donnée de type "string", dans ce cas une parenthèse gauche.
Je pense que si après ca je ne trouve pas de solution je vais abdiquer.... enfin je suis coriace quand même donc je ne sais pas encore :p