- Forum
- Logiciels
- Microsoft Office
- Excel
- Macros et VBA Excel
- VBA Modifier Propriété Shape
+ Répondre à la discussion
Discussion :
Sujet :
Macros et VBA Excel
- Outils de la discussion
- Afficher une version imprimable
- S'abonner à cette discussion…
- Affichage
- Choisir le mode hybride
- Choisir le mode arborescent
frto0
Membre averti
- Inscrit en
- Avril 2010
- Messages
- 43
VBA Modifier Propriété Shape
Bonjour,
Dans une fenêtre vérrouillée, je crée des shapes que l'utilisateur peut être amené à bouger.
Vu que la feuille est vérouillée, il faut que les propritées "Vérrouillé" et "Text Vérouillé" soit désactivées pour pouvoir faire ce que je veux.Dans le code j'arrive bien a travaillé sur mon élément, par contre je ne vois pas comment accéder aux propriétés "Vérrouillé" et "Text Vérouillé"
MerciCode : Sélectionner tout -Visualiser dans une fenêtre à part 1
2
3
4
5
6
7
8
9
10
11
12
13f.Shapes(NomShape).Fill.ForeColor.RGB = RGB(221, 217, 195) f.Shapes(NomShape).TextFrame.Characters.Text = TextVrai f.Shapes(NomShape).TextFrame.Characters(Start:=1, Length:=LongText).Font.Bold = False f.Shapes(NomShape).TextFrame.Characters(Start:=1, Length:=LongText).Font.Color = RGB(0, 0, 0) f.Shapes(NomShape).TextFrame.Characters(Start:=1, Length:=LongText).Font.Size = 12 'Dimmensionnement en point f.Shapes(NomShape).Height = 14 f.Shapes(NomShape).Width = 50 'On repositionne à la place par défaut car pas de bouton à gérer f.Shapes(NomShape).Top = ValTop f.Shapes(NomShape).Left = ValLeft
Salut,
Pour ce qui est de la protection (code obtenu avec l'enregistreur de macro.
on remplace le msoFalse par msoTrue pour activer la protection.Code : Sélectionner tout -Visualiser dans une fenêtre à part ActiveSheet.Shapes("Rectangle 3").Locked = msoFalse
En espérant que cela t'aidera.
Jean-Philippe André
Rédacteur/Modérateur
SAlut,
en utilisant l'enregistreur de macro et en extrapolant je trouve ceci :
Code : Sélectionner tout -Visualiser dans une fenêtre à part 1
2
3Selection.PrintObject = msoFalse 'msoTrueSelection.Locked = msoFalseSelection.LockedText = msoTrue
Cycle de vie d'un bon programme :
1/ ça fonctionne 2/ ça s'optimise 3/ ça se refactorisePas de question technique par MP, je ne réponds pas
Mes ouvrages :
Migrer les applications VBA Access et VBA Excel vers la Power Platform
Apprendre à programmer avec Access 2016, Access 2019 et 2021Apprendre à programmer avec VBA Excel
Prise en main de Dynamics 365 Business CentralCoffrets disponibles de mes ouvrages : https://www.editions-eni.fr/jean-philippe-andre
Pensez à consulter la FAQ Excel et la FAQ AccessDerniers tutos
Excel et les paramètres régionaux
Les fichiers Excel binaires : xlsb,frto0
Membre averti
- Inscrit en
- Avril 2010
- Messages
- 43
Merci pour vos réponses :
Pour Selection.Locked = msoFalse, c'est OK par contre les 2 autres ça ne change rien.J'ai bien essayé de faire les manips avec l'enregistreur de Macro comme vous avez fait, mais rien de ce que je modifie en objet est enregistré.
Est que vous savez si c'est une option qq part?Jean-Philippe André
Rédacteur/Modérateur
Bizarre, j'ai bien les cases qui se cochent et decochent...
Quel est ton code exact stp ?
Cycle de vie d'un bon programme :
1/ ça fonctionne 2/ ça s'optimise 3/ ça se refactorisePas de question technique par MP, je ne réponds pas
Mes ouvrages :
Migrer les applications VBA Access et VBA Excel vers la Power Platform
Apprendre à programmer avec Access 2016, Access 2019 et 2021Apprendre à programmer avec VBA Excel
Prise en main de Dynamics 365 Business CentralCoffrets disponibles de mes ouvrages : https://www.editions-eni.fr/jean-philippe-andre
Pensez à consulter la FAQ Excel et la FAQ AccessDerniers tutos
Excel et les paramètres régionaux
Les fichiers Excel binaires : xlsb,frto0
Membre averti
- Inscrit en
- Avril 2010
- Messages
- 43
Je suis d'accord c'est bizarre.
Je suis en Excel 2007, j'ai bien vu d'autre personne confronté au pb et apparemment en 2007 l'enregistreur de Macro ne fonctionne pas sur les Shapes.Mon code :
Dans l'explorateur d'objet sous VBA, on ne retrouve pas la propriété LockedText alors qu'on a bien la Locked.Code : Sélectionner tout -Visualiser dans une fenêtre à part 1
2
3
4
5Set TmpShape = f.Shapes.AddTextbox(msoTextOrientationHorizontal, ValLeft, ValTop, 100, 40) TmpShape.Name = NomShape TmpShape.PrintObject = msoFalse 'msoTrue TmpShape.Locked = msoFalse TmpShape.LockedText = msoFalse
MERCI
+ Répondre à la discussion
- Forum
- Logiciels
- Microsoft Office
- Excel
- Macros et VBA Excel
- VBA Modifier Propriété Shape
«Discussion précédente|Discussion suivante»
Discussions similaires
-
[WD-2013][VBA] Modifier propriétés d'un autre document ouvert
Par skyart dans le forum VBA Word
Réponses: 2
Dernier message: 31/03/2017, 21h01
-
modifier en vba les propriétés d'un updown d'une feuille excel
Par AlfredKr dans le forum Macros et VBA Excel
Réponses: 2
Dernier message: 18/02/2012, 12h05
-
Modifier propriété <source base> d'une requête par VBA ou SQL?
Par 1010titi dans le forum Requêtes et SQL.
Réponses: 9
Dernier message: 26/11/2008, 21h16
-
[vba]modifier un caratère dans une string
Par megapacman dans le forum Access
Réponses: 1
Dernier message: 11/04/2006, 18h12
-
[VBA] Les propriétés de cellule dans Excel
Par Kylen dans le forum API, COM et SDKs
Réponses: 6
Dernier message: 05/07/2004, 23h02
Partager
Partager
- Nous contacter
- Developpez.com
- Haut de page