Rechercher : dans
Par :

Format du texte

Dernière réponse le 11 nov 2009 à 16:03:39 Farfadet88, le 10 nov 2009 à 13:54:00 
 Signaler ce message aux modérateurs

Bonjour,
J'ai créé une macro qui récupère le texte présent dans des cases excel et l'insère dans des zones de textes que j'ai dessiné. Jusque là tout va bien sauf que la valeur de certaines cases est une date (au format jj/mm/aa) et lorsque ma macro se lance, le texte arrivant dans les zones de texte est un nombre (42622 par exemple) et non la date affichée dans ma case. Comment y remédier sachant que j'ai déjà imposé le format "date" à mes cases excel?
Thor tue

Configuration: ...

Meilleures réponses pour « Format du texte » dans :
LaTeX - Mise en forme VoirStyle Les commandes suivantes permettent de modifier le style du texte : \textbf{texte à mettre en gras} permet d'écrire du texte en caractères gras. \textit{texte à mettre en italique} permet d'écrire en italique. \textsc{texte à mettre...
PHP - Affichage de texte sur le navigateur VoirLe but de PHP est de permettre la création de pages web dynamiques, ainsi son but premier est de pouvoir envoyer des données au navigateur. Les trois fonctions standards PHP fournit 3 fonctions permettant d'envoyer du texte au navigateur. Ces...
LaTeX - Insertion d'images VoirStyle LaTeX permet d'insérer des images de différents formats. Le plus simple est d'insérer des fichiers de type eps (Encapsuled Postscript) : Il suffit d'insérer dans le préambule la ligne suivante : \usepackage{graphicx} Puis d'insérer...

1

Vaucluse, le 10 nov 2009 à 14:16:47

Bonjour
je ne sais pas si une macro est capable de le faire, mais vous pouvez modifier la votre pour aller chercher le texte dans une cellule liée à celle d'origine et pouvant etre masquées, où vous aurez placé la formule ci dessous, pour une date en A1 (à ajuster à votre périmètre)

=TEXTE(A1;"jj/mm/aa")

En principe, excel devrait vous rééditer un texte à la copie.

Crdlmnt

Demandons nous si nous ne sommes pas seuls à comprendre ce que l'on explique?

Répondre à Vaucluse

2

Farfadet88, le 10 nov 2009 à 15:33:35

Alors j'ai donc la macro suivante après modification

ActiveSheet.Shapes("case10").Select
Selection.Characters.Text = TEXTE(BK1;"jj/mm/aa")

Et un message d'erreur apparait

"Erreur de syntaxe"
Thor tue

Répondre à Farfadet88

3

Vaucluse, le 10 nov 2009 à 16:29:09

Re

je ne sais pas dire pour la macro, ma proposition était de réserver une cellule de renvoi pour afficher en Texte, et placer l'adresse de cette cellule dans votre macro.
Il est possible que ça ne marche pas dans les deux cas, mais pour la macro, je pense qu'il y a probablement une autre façon d'écrire le code, mais je peux pas vous aider, ce n'est pas ma spécialité.

crdlmnt Demandons nous si nous ne sommes pas seuls à comprendre ce q­ue l'on explique?

Répondre à Vaucluse

4

ponpon, le 10 nov 2009 à 17:10:30

Bonjour,
Mettre une copie de votre procédure !

Répondre à ponpon

5

Farfadet88, le 11 nov 2009 à 12:40:13

ActiveSheet.Shapes("case1").Select
Selection.Characters.Text = [ba1]

avec en Ba 1 une date au format de cellule "jj/mm/aa" Thor tue

Répondre à Farfadet88

6

ponpon, le 11 nov 2009 à 13:33:22

Bonjour,
Désolé, ceci n’est pas la procédure demandé. Ce n’est que 2 lignes … !
Je n'ai donc pas la possibilité de comprendre votre code d'ou pas de réponse.

Répondre à ponpon

7

Farfadet88, le 11 nov 2009 à 14:34:45

Private Sub CommandButton2_Click()

ActiveSheet.Shapes("case1").Select
Selection.Characters.Text = [ba1]

End Sub


C'est tout ce que contient ma macro et elle permet de copier la date ba1 dans ma zone de texte appelée "case 1"

Je ne vois pas comment être plus clair Thor tue

Répondre à Farfadet88

8

ponpon, le 11 nov 2009 à 15:29:47

Bonjour,
Private Sub CommandButton2_Click()
ActiveSheet.Shapes("case1") = Format([ba1], "dd / mm /yyyy")
End Sub

Répondre à ponpon

9

 ponpon, le 11 nov 2009 à 16:03:39

Bonjour,
Il est possible que ma proposition ne fonctionne pas dans votre cas.
Utilisez cette version :
Private Sub CommandButton2_Click()
ActiveSheet.Shapes("case1").Select
Selection.Characters.Text = Format([ba1], "dd / mm /yyyy")
End Sub

Répondre à ponpon
Collection CommentÇaMarche.net