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

10 réponses

1 2 3
Avatar
Emma
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 de
news:
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
lSteph
;-)

T'inquiète pas Emma, j'en suis encore là... ou au stade juste après.
N'écoutes pas trop Emma , sinon il te mènera en bateau, d'ailleurs

il va bien plus vite que nous, mais c'est parce qu'il a une troisième
rame!

C'est encore le meilleur moyen de découvrir le vocabulaire que VBA utili se.
C'est bien vrai, ça et un petit coup d'aide d'excel sur les mots qu'on

ne comprend pas ou qu'on ne sait comment utiliser puis un peu de forum
et voilà!

--
lSteph

On 2 jan, 17:20, Trirème wrote:
Bonjour Emma

Emma a écrit :> A vrai dire, j'en suis encore au stade de faire enregist rer mes macros et de
regarder le code proposée par excel.


T'inquiète pas Emma, j'en suis encore là... ou au stade juste après.
C'est encore le meilleur moyen de découvrir le vocabulaire que VBA utili se.
Bon, après reste plus qu'à élaguer

Cordialement,
Trirème



Avatar
lSteph
Bonjour Trirème,

Meilleurs voeux!

En fait j'ai cherché midi à 14h car selon le code tel que repris
par Modeste sur l'autre fil et que j'ai remis encore un peu plus
élagué on additionne plus les largeurs de cellules mais on utilise
directement selection donc à part devoir ôter la bordure si besoin....
cela semble résolu mais si...

:-) Par tâtonnements, j'ai réussi à trouver la formule qu'utilise Ex cel pour
"arrondir" et transformer en valeurs réelles les valeurs qu'on lui deman de...


...cela reste de toutes façons intéressant pour tout le monde!

On peut déjà aller voir ton lien.

Merci.

--
lSteph

On 2 jan, 17:36, Trirème wrote:

...
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 Ex cel pour
"arrondir" et transformer en valeurs réelles les valeurs qu'on lui deman de...
J'ai cette formule au boulot que je retrouve demain :-( si ça t'intére sse je
ferai suivre.
J'ai utilisé avec bonheur cette formule pour exploiter au mieux les tail les des
shapes dans une seule cellule dans mes propres "In Cell Charting" (voir da ily
dose of excel :http://www.dailydoseofexcel.com/archives/2006/02/05/in-cell -charting/)

Cordialement,
Trirème



Avatar
Trirème
N'écoutes pas trop Emma , sinon il te mènera en bateau, d'ailleurs
il va bien plus vite que nous, mais c'est parce qu'il a une troisième
rame!
T'as de la chance que j'ai les mains occupées à la tenir... cette 3ème rame...

... Mince, le garde-chiourme... j'y retourne

Avatar
lSteph
http://www.dailydoseofexcel.com/archives/2006/02/05/in-cell-charting/)


ouf!!!

en voilà une brochette ... tu ne fréquentes pas que l'enregistreur!

;-)

Merci pour ce lien


On 2 jan, 17:36, Trirème wrote:

...
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 Ex cel pour
"arrondir" et transformer en valeurs réelles les valeurs qu'on lui deman de...
J'ai cette formule au boulot que je retrouve demain :-( si ça t'intére sse je
ferai suivre.
J'ai utilisé avec bonheur cette formule pour exploiter au mieux les tail les des
shapes dans une seule cellule dans mes propres "In Cell Charting" (voir da ily
dose of excel :http://www.dailydoseofexcel.com/archives/2006/02/05/in-cell -charting/)

Cordialement,
Trirème


en
en


Avatar
lSteph
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:eEyMmPUTIHA.5524@ TK2MSFTNGP05.phx.gbl...

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 travaille r 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 e t
de

regarder le code proposée par excel. Si vous avez une piste à me don ner
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. Maniaquer ie me
sirez-vous.... certes... mais le but est tellement proche...

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

Emma






Avatar
Mgr Banni
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
http://www.dailydoseofexcel.com/archives/2006/02/05/in-cell-charting/)


ouf!!!

en voilà une brochette ... tu ne fréquentes pas que l'enregistreur!
C'est sûr que dans cette page il y a les cadors mondiaux.



Avatar
Trirème
( tu peux en créer d'autres en mettant un nouveau nom et "Physique
Chimie" à la place de "Français" par exemple)


ou encore "Catéchisme", n'est-ce pas Mgr ?
O:-)

Avatar
LSteph
:o))

N'écoutes pas trop Emma , sinon il te mènera en bateau, d'ailleurs
il va bien plus vite que nous, mais c'est parce qu'il a une troisième
rame!
T'as de la chance que j'ai les mains occupées à la tenir... cette 3ème

rame...
... Mince, le garde-chiourme... j'y retourne



1 2 3