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

barre d outils

1 réponse
Avatar
STEPH B
Bonjour
je voudrais qu'a louverture d un fichier le code vba m ajoute une barre
d'outils avec 2007 2008 2009 2010
et lorsque je clik sur une année il mouvre le répertoire de chaque année....

j'aimerais si possible pouvoit configurer moi meme le répertoire de
destination sachant qu'il pourrait changer dans le futur.

merci

1 réponse

Avatar
Hervé
Bonsoir,
A mettre dans le module du classeur :

Private Sub Workbook_Open()

CreerBarre

End Sub

'si nécessaire de supprimer à la fermeture
Private Sub Workbook_BeforeClose(Cancel As Boolean)

On Error Resume Next
Application.CommandBars("MaBarre").Delete
On Error GoTo 0

End Sub

A mettre dans un module standard :

Sub CreerBarre()

Dim Barre As CommandBar
Dim Ctrl As CommandBarComboBox

'supprime la barre afin de la recréer
On Error Resume Next
Application.CommandBars("MaBarre").Delete
On Error GoTo 0

'ajoute la barre
Set Barre = Application.CommandBars.Add("MaBarre", msoBarTop)

With Barre
Set Ctrl = .Controls.Add(msoControlDropdown)
.Name = "Barre perso"
.Visible = True
End With

'ajoute un combobox avec les années voulues
With Ctrl
.AddItem "2007"
.AddItem "2008"
.AddItem "2009"
.AddItem "2010"
.OnAction = "OuvrirClasseur"
.TooltipText = "Sélectionner une année"
End With

Set Barre = Nothing
Set Ctrl = Nothing

End Sub

Sub OuvrirClasseur()

Dim Chemin As String
Dim Annee As String

'ouvre l'explorateur sur le dossier correspondant
With CommandBars.ActionControl
Annee = .List(.ListIndex)
End With

Chemin = "D:Dossier Années" & Annee

With Application.FileDialog(1)

.InitialFileName = Chemin
.Title = "Année " & Annee
.AllowMultiSelect = False
.InitialView = 2
.Show

'si un fichier est choisi, retourne le
'chemin complet (pour le test, un MsgBox)
If .SelectedItems.Count = 1 Then
'MsgBox .SelectedItems(1)
Workbooks.Open .SelectedItems(1)
End If

End With

End Sub



Hervé.



"STEPH B" a écrit dans le message de
news:4bbee464$0$2963$
Bonjour
je voudrais qu'a louverture d un fichier le code vba m ajoute une barre
d'outils avec 2007 2008 2009 2010
et lorsque je clik sur une année il mouvre le répertoire de chaque
année....

j'aimerais si possible pouvoit configurer moi meme le répertoire de
destination sachant qu'il pourrait changer dans le futur.

merci