Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

manque un bout de code...

23 réponses
Avatar
Emma
(RE) bonjour,

Je cherche la transition dans le code.
D'abord, je crée une zone de texte sur une selection de cellules:

Sub ZoneTexte()
y = Selection.Rows.Count
x = Selection.Columns.Count
leTexte = "FRANCAIS"
Set ici = ActiveCell
T = ici.Top
L = ici.Left
W = ici.Width
H = ici.Height
Set zText = ActiveSheet.Shapes. _
AddTextbox(msoTextOrientationHorizontal, L, T, W * x, H * y)
zText.TextFrame.Characters.Text = leTexte

End Sub

Puis, avant de refermer le code, je voudrais centrer le tout:

With Selection
.HorizontalAlignment = xlCenter
.VerticalAlignment = xlCenter
.ReadingOrder = xlContext
.Orientation = xlHorizontal
.AutoSize = False
End With


Le problème, c'est qu'il ne voit pas que je lui indique CETTE zone de texte.

Pourriez vous m'aider à lier ces 2 codes?

Merci

Emma

3 réponses

1 2 3
Avatar
LSteph
16:24 RE 17:21



bénéficierais-je d'autant de sollicitude si je signais Mgr Emma?
enfin, tout le monde ne peut pas être fidèle au...post le 1er janvier à
20h tapantes
Mgr T.B . (principes d'utilisation des HS 2/1/2008)


"lSteph" a écrit dans le message de news:

Alt+F11 pour aller dans VBA
Tout dans module1 (Module Standard)que tu insère à ton projet tu mets
tout le code revu par Modeste et que j'ai repris sous ce post y
compris les petites sub ce sont elles que tu dois executer depuis ton
menu Outils Macros
( tu peux en créer d'autres en mettant un nouveau nom et "Physique
Chimie" à la place de "Français" par exemple)


Cordialement.

--
lSteph

Sub ZoneTexte(matiere As String)
Dim Ztext As Shape
Dim L As Long, T As Long, W As Double, H As Double

With Selection
T = .Top
L = .Left
H = .Height
W = .Width
.Value = matiere
End With
Set Ztext = ActiveSheet.Shapes. _
AddTextbox(msoTextOrientationHorizontal, L, T, W - 0.1, H - 0.1)

With Ztext.TextFrame
.Characters.Text = matiere
.HorizontalAlignment = xlCenter
.VerticalAlignment = xlCenter
.ReadingOrder = xlContext
.AutoSize = False
End With

End Sub
'------------ajouter une macro par matière complémentaire
Sub addFr()
ZoneTexte ("Français")
End Sub
Sub addMh()
ZoneTexte ("Maths")
End Sub
Sub addHG()
ZoneTexte ("Histoire géo")
End Sub
Sub addEPS()
ZoneTexte ("EPS")
End Sub




On 2 jan, 17:41, "Emma" wrote:
Bonsoir,

J'ai eu beau essayé de placer le code dans un module (en entier, puis en
partie en mettant
'------------ajouter une macro par matière complémentaire
dans le VBA de la feuille 1)

Rien n'y fait: la zone se crée, la police est pré-centrée... mais la zone
est vide.

Je suis sincèrement désolée de mon incompétence.


Emma


"Emma" a écrit dans le message
denews:

Merci beaucoup à Serge et à Stef pour leur investissement.

Je pense que je vais garder la proposition de Serge, car celle de Stef
dépasse mon niveau de compétence... désolée

Dernière petite question: Où puis-je placer des codes pour
travailler la

mise en forme de ma zone de texte (grosseur des traits, couleur du
fond...)?

A vrai dire, j'en suis encore au stade de faire enregistrer mes
macros > et

de
regarder le code proposée par excel. Si vous avez une piste à me donner
pour

me former (bouquins, CD... je suis preneuse!)

Merci encore à vous.

Emma

"lSteph" a écrit dans le message de
news:
Bonjour,
Si c'est pas dans la même macro déclarer Dim Ztext as Shape en haut du
module au dessus de la première sub et non dedans.
Sinon avec le code d'origine le cadre est décalé des cellules sitôt
qu'elles n'ont pas toutes la même taille.
Le mien déborde en effet par ailleurs, je suppose à raison de
l'arrondi (1 de trop à chaque addition d'une cellule)+ bordure.

Il faudrait déclarer h et w as double au lieu de long

pour avoir un chiffre précis et réduire d'un dixième point pour la
bordure
msoTextOrientationHorizontal, L, T, W - 0.1, H - 0.1

@+
--
lSteph

On 2 jan, 10:49, "Emma" wrote:
Bonjour et merci pour votre investissement.

Vos propositions fonctionnent bien, effectivement, pour lier les 2
macros.


Le problème, c'est que la zone de texte, qui avant s'insérer
pile-poil


dans
les cellules concernées, dépassent un peu vers le bas.

ex: si je sélectionne B3:B13, je déborde un peu sur B14.
Maniaquerie > > me


sirez-vous.... certes... mais le but est tellement proche...

Merci à vous de me dire ce que vous en pensez.

Emma









Avatar
Trirème
Bon, j'ai fait une réponse dans un topic à part entière :

Sujet : lSteph : Les shapes et leurs dimensions réelles
Date: Thu, 03 Jan 2008 19:28:34 +0100

Trirème

...
Le mien déborde en effet par ailleurs, je suppose à raison de
l'arrondi (1 de trop à chaque addition d'une cellule)+ bordure.

Il faudrait déclarer h et w as double au lieu de long

pour avoir un chiffre précis et réduire d'un dixième point pour la
bordure
msoTextOrientationHorizontal, L, T, W - 0.1, H - 0.1


:-) Par tâtonnements, j'ai réussi à trouver la formule qu'utilise Excel
pour "arrondir" et transformer en valeurs réelles les valeurs qu'on lui
demande... J'ai cette formule au boulot que je retrouve demain :-( si ça
t'intéresse je ferai suivre.



Avatar
LSteph
Bonsoir,

Oui, j'ai vu cela , Misange a engrangé, c'est un sujet connexe qui peut
revenir.
Il faut que je regarde cela plus en détail, ces trois approches
souhaitée, calculée, et "corrigée".


Merci pour cet un intéressant apport

--
lSteph



Bon, j'ai fait une réponse dans un topic à part entière :

Sujet : lSteph : Les shapes et leurs dimensions réelles
Date: Thu, 03 Jan 2008 19:28:34 +0100

Trirème

...
Le mien déborde en effet par ailleurs, je suppose à raison de
l'arrondi (1 de trop à chaque addition d'une cellule)+ bordure.

Il faudrait déclarer h et w as double au lieu de long

pour avoir un chiffre précis et réduire d'un dixième point pour la
bordure
msoTextOrientationHorizontal, L, T, W - 0.1, H - 0.1


:-) Par tâtonnements, j'ai réussi à trouver la formule qu'utilise
Excel pour "arrondir" et transformer en valeurs réelles les valeurs
qu'on lui demande... J'ai cette formule au boulot que je retrouve
demain :-( si ça t'intéresse je ferai suivre.





1 2 3