Renommer bouton Classeur
Bonsoir le forum,
Dans le fichier joint, je voudrais mettre sur 2 lignes
Onglets => police 18 & couleur rouge
Nouvelle Année => police 16 couleur bleu
Macro => Sub RenommerBoutonClasseur() dans le fichier
Mais je n'y arrive pas
Peut-on placer => Application.ScreenUpdating = False et à quel endroit?
Merci d'avance
Bien cordialement
Bonjour,
à tester,
Sub RenommerBoutonClasseur()
Dim w As Worksheet, o As Shape
For Each w In Worksheets
For Each o In w.Shapes
If InStr(1, o.TextFrame.Characters.Text, "Vides") > 0 Then
With o.TextFrame
.Characters.Text = "Onglets" & Chr(10) & "Nouvelle Année"
.Characters(1, 7).Font.Color = RGB(255, 0, 0)
.Characters(1, 7).Font.Size = 18
.Characters(9, 22).Font.Color = RGB(0, 0, 255)
.Characters(9, 22).Font.Size = 16
' .Characters.Font.Name = "Garamond"
' .HorizontalAlignment = xlHAlignCenter
' .VerticalAlignment = xlVAlignCenter
End With
End If
Next o
Next w
End SubBonjour sabV
Merci Super
Ça fonctionne bien
On ne pourrait pas remplacer?
RGB(255, 0, 0) par =3 (rouge)
RGB(0, 0, 255) par 5 (bleu)
Si je le fait le texte vient noir
Peut-on placer => Application.ScreenUpdating = False et à quel endroit?
Si j'oublie d'ouvrir toutes les feuilles peut-on le lui faire dire?
Je m'excuse de toutes ces demandes
Merci pour d'éventuels retours
Bon 8 mai
Bien cordialement
Bonjour sabV et le forum
Modifs macro ça fonctionne
Il ne reste plus qu'à faire ouvrir tout le classeur
A+ peut-être
Encore merci
Bien cordialement
Sub RenommerBoutonClasseur()
Dim w As Worksheet, o As Shape
For Each w In Worksheets
For Each o In w.Shapes
If InStr(1, o.TextFrame.Characters.Text, "Vides") > 0 Then
With o.TextFrame
.Characters.Text = "Onglets" & Chr(10) & "Nouvelle Année"
.Characters(Start:=1, Length:=7).Font.ColorIndex = 3
.Characters(1, 7).Font.Size = 18
.Characters(Start:=9, Length:=22).Font.ColorIndex = 5
.Characters(9, 22).Font.Size = 16
End With
End If
Next o
Next w
End Sub
Bonjour,
à tester,
Sub RenommerBoutonClasseur() Dim w As Worksheet, o As Shape For Each w In Worksheets For Each o In w.Shapes If InStr(1, o.TextFrame.Characters.Text, "Vides") > 0 Then With o.TextFrame .Characters.Text = "Onglets" & Chr(10) & "Nouvelle Année" .Characters(1, 7).Font.Color = RGB(255, 0, 0) .Characters(1, 7).Font.Size = 18 .Characters(9, 22).Font.Color = RGB(0, 0, 255) .Characters(9, 22).Font.Size = 16 ' .Characters.Font.Name = "Garamond" ' .HorizontalAlignment = xlHAlignCenter ' .VerticalAlignment = xlVAlignCenter End With End If Next o Next w End Sub
Merci sabV
Compléter macro et tout fonctionne super bien
Un grand merci à toi
Bonne fin de 8 mai
Cordialement
Bonjour,
Tu peux utiliser les index de couleurs de la palette, en remplaçant Color par ColorIndex.
Il est préférable avec les versions d'Excel à partir de 2007, d'utiliser Color plutôt que ColorIndex pour affecter une couleur en lui affectant une valeur de type Long renvoyée par la fonction RGB (pour les 8 couleurs de base, VBA dispose de constantes, vbRed et vbBlue au cas particulier, que tu peux utiliser). Mais si tu travailles avec Excel 2003, qui ne peut afficher que les couleurs de la palette, ColorIndex demeure indiqué...
Cordialement.
Bonsoir MFerrand
Merci pour la précision
Encore une demande car moi et le VBA!!!
Dans le fichier joint si je veux ajouter => (Afficher Tous les Mois) sur 3 lignes => Voir onglet janvier 2018
Pourrais-tu STP me faire la macro pour un exemple. presque fait mais ça accroche
Merci pour ton éventuel retour
Bien cordialement à toi.
Bonjour al87 , MFerrand,
Dans le fichier joint si je veux ajouter => (Afficher Tous les Mois) sur 3 lignes => Voir onglet janvier 2018
à tester,
Sub RenommerBoutonClasseur()
Dim w As Worksheet, o As Shape
For Each w In Worksheets
For Each o In w.Shapes
If InStr(1, o.TextFrame.Characters.Text, "Vides") > 0 Then
With o.TextFrame
.Characters.Text = "Onglets" & Chr(10) & "Nouvelle Année" & Chr(10) & "Afficher" & Chr(10) & "Tous" & Chr(10) & "les mois"
.Characters(Start:=1, Length:=7).Font.ColorIndex = 3
.Characters(1, 7).Font.Size = 18
.Characters(Start:=9, Length:=15).Font.ColorIndex = 5
.Characters(9, 15).Font.Size = 16
End With
End If
Next o
Next w
End SubBonjour sabV
Bonjour le forum
Merci pour ton implication
Bien cordialement
Voici la macro qui fonctionne
Sub RenommerBoutonClasseur()
Dim w As Worksheet, o As Shape
For Each w In Worksheets
For Each o In w.Shapes
If InStr(1, o.TextFrame.Characters.Text, "Onglets") > 0 Then
With o.TextFrame
.Characters.Text = "Onglets" & Chr(10) & "Nouvelle Année" & Chr(10) & "(Afficher Tous les Mois)"
.Characters(Start:=1, Length:=7).Font.ColorIndex = 3
.Characters(1, 7).Font.Size = 18
.Characters(Start:=9, Length:=15).Font.ColorIndex = 5
.Characters(9, 15).Font.Size = 16
.Characters(Start:=24, Length:=24).Font.ColorIndex = 3
.Characters(24, 24).Font.Size = 16
End With
End If
Next o
Next w
End Sub