J'ai une comboBox dans une feuille avec les 12 mois de l'année.
Dans mon applic j'ai également une BO perso nommée « EMMARGEMENT ».
Je voulais faire en sorte que ma ComboBox ne soit plus dans la feuille mais
dans la BO.
Bon alors ça c'est fait grâce au forum. Il y a quelques temps on m'a donné
ce joli code qui fonctionne à merveille :
Set ComboMois = Application.CommandBars("EMARGEMENT").Controls. _
Add(msoControlComboBox, , , 1)
With ComboMois
.Caption = "Liste des MOIS à afficher"
For i = 1 To [ListMois].Count
.AddItem [ListMois].Item(i)
Next
.Text = .List(1)
.OnAction = "test"
End With
Donc ce code me crée bien la combo avec la liste des 12 mois issue d'une
liste nommée [ListMois].
A l'époque j'avais un peu lâché l'affaire et aujourd'hui je rame un poil, je
m'explique.
*OnAction* me déclenche bien mon code mais je voudrais pouvoir récupérer la
valeur ListIndex de la combo pour que la macro en question s'exécute en
fonction de cette valeur . Avec une combo "normale" je sais faire , mais là
je plante.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
anonymousA
Bonjour,
Actioncontrol, actioncontrol, actioncontrol
A+
Bonjour la communauté,
J'ai une comboBox dans une feuille avec les 12 mois de l'année.
Dans mon applic j'ai également une BO perso nommée « EMMARGEMENT ».
Je voulais faire en sorte que ma ComboBox ne soit plus dans la feuille mais dans la BO.
Bon alors ça c'est fait grâce au forum. Il y a quelques temps on m'a donné ce joli code qui fonctionne à merveille :
Set ComboMois = Application.CommandBars("EMARGEMENT").Controls. _
Add(msoControlComboBox, , , 1)
With ComboMois
.Caption = "Liste des MOIS à afficher"
For i = 1 To [ListMois].Count
.AddItem [ListMois].Item(i)
Next
.Text = .List(1)
.OnAction = "test"
End With
Donc ce code me crée bien la combo avec la liste des 12 mois issue d'une liste nommée [ListMois].
A l'époque j'avais un peu lâché l'affaire et aujourd'hui je rame un poil, je m'explique.
*OnAction* me déclenche bien mon code mais je voudrais pouvoir récupérer la valeur ListIndex de la combo pour que la macro en question s'exécute en fonction de cette valeur . Avec une combo "normale" je sais faire , mais là je plante.
Une idée ? Un conseil ?
Désolé d'avoir été un peu long.... :-((
D'avance merci
Cordialement.
Marc
Bonjour,
Actioncontrol, actioncontrol, actioncontrol
A+
Bonjour la communauté,
J'ai une comboBox dans une feuille avec les 12 mois de l'année.
Dans mon applic j'ai également une BO perso nommée « EMMARGEMENT ».
Je voulais faire en sorte que ma ComboBox ne soit plus dans la feuille mais
dans la BO.
Bon alors ça c'est fait grâce au forum. Il y a quelques temps on m'a donné
ce joli code qui fonctionne à merveille :
Set ComboMois = Application.CommandBars("EMARGEMENT").Controls. _
Add(msoControlComboBox, , , 1)
With ComboMois
.Caption = "Liste des MOIS à afficher"
For i = 1 To [ListMois].Count
.AddItem [ListMois].Item(i)
Next
.Text = .List(1)
.OnAction = "test"
End With
Donc ce code me crée bien la combo avec la liste des 12 mois issue d'une
liste nommée [ListMois].
A l'époque j'avais un peu lâché l'affaire et aujourd'hui je rame un poil, je
m'explique.
*OnAction* me déclenche bien mon code mais je voudrais pouvoir récupérer la
valeur ListIndex de la combo pour que la macro en question s'exécute en
fonction de cette valeur . Avec une combo "normale" je sais faire , mais là
je plante.
J'ai une comboBox dans une feuille avec les 12 mois de l'année.
Dans mon applic j'ai également une BO perso nommée « EMMARGEMENT ».
Je voulais faire en sorte que ma ComboBox ne soit plus dans la feuille mais dans la BO.
Bon alors ça c'est fait grâce au forum. Il y a quelques temps on m'a donné ce joli code qui fonctionne à merveille :
Set ComboMois = Application.CommandBars("EMARGEMENT").Controls. _
Add(msoControlComboBox, , , 1)
With ComboMois
.Caption = "Liste des MOIS à afficher"
For i = 1 To [ListMois].Count
.AddItem [ListMois].Item(i)
Next
.Text = .List(1)
.OnAction = "test"
End With
Donc ce code me crée bien la combo avec la liste des 12 mois issue d'une liste nommée [ListMois].
A l'époque j'avais un peu lâché l'affaire et aujourd'hui je rame un poil, je m'explique.
*OnAction* me déclenche bien mon code mais je voudrais pouvoir récupérer la valeur ListIndex de la combo pour que la macro en question s'exécute en fonction de cette valeur . Avec une combo "normale" je sais faire , mais là je plante.
Une idée ? Un conseil ?
Désolé d'avoir été un peu long.... :-((
D'avance merci
Cordialement.
Marc
anonymousA
en imaginant que ta barre de commande s'appelle MaBarre et ton control commandbarcombobox s'appelle MyCtr&l4. dans ce qui suit récupère dans le Onaction associé la valeur de ce qui est dans le combobox
With Application.CommandBars("MaBarre").Controls("MyCtr&l4") essai = .list(.ListIndex) End With
A+
Bonjour,
Actioncontrol, actioncontrol, actioncontrol
A+
Bonjour la communauté,
J'ai une comboBox dans une feuille avec les 12 mois de l'année.
Dans mon applic j'ai également une BO perso nommée « EMMARGEMENT ».
Je voulais faire en sorte que ma ComboBox ne soit plus dans la feuille mais dans la BO.
Bon alors ça c'est fait grâce au forum. Il y a quelques temps on m'a donné ce joli code qui fonctionne à merveille :
Set ComboMois = Application.CommandBars("EMARGEMENT").Controls. _
Add(msoControlComboBox, , , 1)
With ComboMois
.Caption = "Liste des MOIS à afficher"
For i = 1 To [ListMois].Count
.AddItem [ListMois].Item(i)
Next
.Text = .List(1)
.OnAction = "test"
End With
Donc ce code me crée bien la combo avec la liste des 12 mois issue d'une liste nommée [ListMois].
A l'époque j'avais un peu lâché l'affaire et aujourd'hui je rame un poil, je m'explique.
*OnAction* me déclenche bien mon code mais je voudrais pouvoir récupérer la valeur ListIndex de la combo pour que la macro en question s'exécute en fonction de cette valeur . Avec une combo "normale" je sais faire , mais là je plante.
Une idée ? Un conseil ?
Désolé d'avoir été un peu long.... :-((
D'avance merci
Cordialement.
Marc
en imaginant que ta barre de commande s'appelle MaBarre et ton control
commandbarcombobox s'appelle MyCtr&l4. dans ce qui suit récupère dans le
Onaction associé la valeur de ce qui est dans le combobox
With Application.CommandBars("MaBarre").Controls("MyCtr&l4")
essai = .list(.ListIndex)
End With
A+
Bonjour,
Actioncontrol, actioncontrol, actioncontrol
A+
Bonjour la communauté,
J'ai une comboBox dans une feuille avec les 12 mois de l'année.
Dans mon applic j'ai également une BO perso nommée « EMMARGEMENT ».
Je voulais faire en sorte que ma ComboBox ne soit plus dans la feuille
mais
dans la BO.
Bon alors ça c'est fait grâce au forum. Il y a quelques temps on m'a
donné
ce joli code qui fonctionne à merveille :
Set ComboMois = Application.CommandBars("EMARGEMENT").Controls. _
Add(msoControlComboBox, , , 1)
With ComboMois
.Caption = "Liste des MOIS à afficher"
For i = 1 To [ListMois].Count
.AddItem [ListMois].Item(i)
Next
.Text = .List(1)
.OnAction = "test"
End With
Donc ce code me crée bien la combo avec la liste des 12 mois issue d'une
liste nommée [ListMois].
A l'époque j'avais un peu lâché l'affaire et aujourd'hui je rame un
poil, je
m'explique.
*OnAction* me déclenche bien mon code mais je voudrais pouvoir
récupérer la
valeur ListIndex de la combo pour que la macro en question s'exécute en
fonction de cette valeur . Avec une combo "normale" je sais faire ,
mais là
je plante.
en imaginant que ta barre de commande s'appelle MaBarre et ton control commandbarcombobox s'appelle MyCtr&l4. dans ce qui suit récupère dans le Onaction associé la valeur de ce qui est dans le combobox
With Application.CommandBars("MaBarre").Controls("MyCtr&l4") essai = .list(.ListIndex) End With
A+
Bonjour,
Actioncontrol, actioncontrol, actioncontrol
A+
Bonjour la communauté,
J'ai une comboBox dans une feuille avec les 12 mois de l'année.
Dans mon applic j'ai également une BO perso nommée « EMMARGEMENT ».
Je voulais faire en sorte que ma ComboBox ne soit plus dans la feuille mais dans la BO.
Bon alors ça c'est fait grâce au forum. Il y a quelques temps on m'a donné ce joli code qui fonctionne à merveille :
Set ComboMois = Application.CommandBars("EMARGEMENT").Controls. _
Add(msoControlComboBox, , , 1)
With ComboMois
.Caption = "Liste des MOIS à afficher"
For i = 1 To [ListMois].Count
.AddItem [ListMois].Item(i)
Next
.Text = .List(1)
.OnAction = "test"
End With
Donc ce code me crée bien la combo avec la liste des 12 mois issue d'une liste nommée [ListMois].
A l'époque j'avais un peu lâché l'affaire et aujourd'hui je rame un poil, je m'explique.
*OnAction* me déclenche bien mon code mais je voudrais pouvoir récupérer la valeur ListIndex de la combo pour que la macro en question s'exécute en fonction de cette valeur . Avec une combo "normale" je sais faire , mais là je plante.
Une idée ? Un conseil ?
Désolé d'avoir été un peu long.... :-((
D'avance merci
Cordialement.
Marc
Excel...lent
Salut anonymousA,
Merci de t'être penché sur mon sort...
J'ai regardé ActionControl dans l'aide VBA et j'y ai trouvé un exemple qui semble intéressant pour les boutons qui se trouve également dans ma BO.
Ceci étant je ne suis pas certain d'avoir tout compris au code que tu m'a fournit.
Je l'ai donc mis dans la macro ( Sub test ) que je lance avec la propriété Onaction de ma combo, mais ça plante.
erreur d'exécution '5' avec en surbrillance cette ligne de ton code : With Application.CommandBars("EMARGEMENT").Controls("ComboMois")
Peux-tu m'aider et m'expliquer ce que je ne fais pas comme il faut?
Merci.
Cordialement.
Marc
Salut anonymousA,
Merci de t'être penché sur mon sort...
J'ai regardé ActionControl dans l'aide VBA et j'y ai trouvé un exemple qui
semble intéressant pour les boutons qui se trouve également dans ma BO.
Ceci étant je ne suis pas certain d'avoir tout compris au code que tu m'a
fournit.
Je l'ai donc mis dans la macro ( Sub test ) que je lance avec la propriété
Onaction de ma combo, mais ça plante.
erreur d'exécution '5' avec en surbrillance cette ligne de ton code :
With Application.CommandBars("EMARGEMENT").Controls("ComboMois")
Peux-tu m'aider et m'expliquer ce que je ne fais pas comme il faut?
J'ai regardé ActionControl dans l'aide VBA et j'y ai trouvé un exemple qui semble intéressant pour les boutons qui se trouve également dans ma BO.
Ceci étant je ne suis pas certain d'avoir tout compris au code que tu m'a fournit.
Je l'ai donc mis dans la macro ( Sub test ) que je lance avec la propriété Onaction de ma combo, mais ça plante.
erreur d'exécution '5' avec en surbrillance cette ligne de ton code : With Application.CommandBars("EMARGEMENT").Controls("ComboMois")
Peux-tu m'aider et m'expliquer ce que je ne fais pas comme il faut?
Merci.
Cordialement.
Marc
anonymousA
Bonjour,
Je pense que tu dois avoir une erreur de désignation soit de la barre de commandes soit du controle, soit des 2.
Pour le principe , par contre, ce que je t'ai envoyé est valide. Ci-dessous, un exemple complet
Dim MyBar As CommandBar Dim MyCtrl4 As CommandBarComboBox
On Error Resume Next
Application.CommandBars("MaBarre").Delete
On Error GoTo 0
Set MyBar = Application.CommandBars.Add(Name:="MaBarre", Position:=msoBarFloating, Temporary:=True)
Set MyCtrl4 = MyBar.Controls.Add(msoControlComboBox, , , , True)
With MyCtrl4 .Caption = "MyCtr&l4" .Width = 170 .DropDownLines = 0 .DropDownWidth = -1 For Each c In Range("A2:A20") .AddItem c.Value Next .OnAction = "procMyCtrl4" End With
End Sub
Sub procMyCtrl4()
MsgBox "c'est la procédure déclenchée par MyCtrl4 " With Application.CommandBars("MaBarre").Controls("MyCtr&l4") essai = .List(.ListIndex) End With MsgBox essai
End Sub
A+
Salut anonymousA,
Merci de t'être penché sur mon sort...
J'ai regardé ActionControl dans l'aide VBA et j'y ai trouvé un exemple qui semble intéressant pour les boutons qui se trouve également dans ma BO.
Ceci étant je ne suis pas certain d'avoir tout compris au code que tu m'a fournit.
Je l'ai donc mis dans la macro ( Sub test ) que je lance avec la propriété Onaction de ma combo, mais ça plante.
erreur d'exécution '5' avec en surbrillance cette ligne de ton code : With Application.CommandBars("EMARGEMENT").Controls("ComboMois")
Peux-tu m'aider et m'expliquer ce que je ne fais pas comme il faut?
Merci.
Cordialement.
Marc
Bonjour,
Je pense que tu dois avoir une erreur de désignation soit de la barre de
commandes soit du controle, soit des 2.
Pour le principe , par contre, ce que je t'ai envoyé est valide.
Ci-dessous, un exemple complet
Dim MyBar As CommandBar
Dim MyCtrl4 As CommandBarComboBox
On Error Resume Next
Application.CommandBars("MaBarre").Delete
On Error GoTo 0
Set MyBar = Application.CommandBars.Add(Name:="MaBarre",
Position:=msoBarFloating, Temporary:=True)
Set MyCtrl4 = MyBar.Controls.Add(msoControlComboBox, , , , True)
With MyCtrl4
.Caption = "MyCtr&l4"
.Width = 170
.DropDownLines = 0
.DropDownWidth = -1
For Each c In Range("A2:A20")
.AddItem c.Value
Next
.OnAction = "procMyCtrl4"
End With
End Sub
Sub procMyCtrl4()
MsgBox "c'est la procédure déclenchée par MyCtrl4 "
With Application.CommandBars("MaBarre").Controls("MyCtr&l4")
essai = .List(.ListIndex)
End With
MsgBox essai
End Sub
A+
Salut anonymousA,
Merci de t'être penché sur mon sort...
J'ai regardé ActionControl dans l'aide VBA et j'y ai trouvé un exemple qui
semble intéressant pour les boutons qui se trouve également dans ma BO.
Ceci étant je ne suis pas certain d'avoir tout compris au code que tu m'a
fournit.
Je l'ai donc mis dans la macro ( Sub test ) que je lance avec la propriété
Onaction de ma combo, mais ça plante.
erreur d'exécution '5' avec en surbrillance cette ligne de ton code :
With Application.CommandBars("EMARGEMENT").Controls("ComboMois")
Peux-tu m'aider et m'expliquer ce que je ne fais pas comme il faut?
Je pense que tu dois avoir une erreur de désignation soit de la barre de commandes soit du controle, soit des 2.
Pour le principe , par contre, ce que je t'ai envoyé est valide. Ci-dessous, un exemple complet
Dim MyBar As CommandBar Dim MyCtrl4 As CommandBarComboBox
On Error Resume Next
Application.CommandBars("MaBarre").Delete
On Error GoTo 0
Set MyBar = Application.CommandBars.Add(Name:="MaBarre", Position:=msoBarFloating, Temporary:=True)
Set MyCtrl4 = MyBar.Controls.Add(msoControlComboBox, , , , True)
With MyCtrl4 .Caption = "MyCtr&l4" .Width = 170 .DropDownLines = 0 .DropDownWidth = -1 For Each c In Range("A2:A20") .AddItem c.Value Next .OnAction = "procMyCtrl4" End With
End Sub
Sub procMyCtrl4()
MsgBox "c'est la procédure déclenchée par MyCtrl4 " With Application.CommandBars("MaBarre").Controls("MyCtr&l4") essai = .List(.ListIndex) End With MsgBox essai
End Sub
A+
Salut anonymousA,
Merci de t'être penché sur mon sort...
J'ai regardé ActionControl dans l'aide VBA et j'y ai trouvé un exemple qui semble intéressant pour les boutons qui se trouve également dans ma BO.
Ceci étant je ne suis pas certain d'avoir tout compris au code que tu m'a fournit.
Je l'ai donc mis dans la macro ( Sub test ) que je lance avec la propriété Onaction de ma combo, mais ça plante.
erreur d'exécution '5' avec en surbrillance cette ligne de ton code : With Application.CommandBars("EMARGEMENT").Controls("ComboMois")
Peux-tu m'aider et m'expliquer ce que je ne fais pas comme il faut?
Merci.
Cordialement.
Marc
anonymousA
Ben j'ai bien relu ton POST , et effectivement EMMARGEMENT et EMARGEMENT sont écrits 2 fois différemment dans ce POST. S'agit-il d'une erreur de frappe ou d'une réalité ? A toi de voir
A+
Salut anonymousA,
Merci de t'être penché sur mon sort...
J'ai regardé ActionControl dans l'aide VBA et j'y ai trouvé un exemple qui semble intéressant pour les boutons qui se trouve également dans ma BO.
Ceci étant je ne suis pas certain d'avoir tout compris au code que tu m'a fournit.
Je l'ai donc mis dans la macro ( Sub test ) que je lance avec la propriété Onaction de ma combo, mais ça plante.
erreur d'exécution '5' avec en surbrillance cette ligne de ton code : With Application.CommandBars("EMARGEMENT").Controls("ComboMois")
Peux-tu m'aider et m'expliquer ce que je ne fais pas comme il faut?
Merci.
Cordialement.
Marc
Ben j'ai bien relu ton POST , et effectivement EMMARGEMENT et
EMARGEMENT sont écrits 2 fois différemment dans ce POST. S'agit-il d'une
erreur de frappe ou d'une réalité ? A toi de voir
A+
Salut anonymousA,
Merci de t'être penché sur mon sort...
J'ai regardé ActionControl dans l'aide VBA et j'y ai trouvé un exemple qui
semble intéressant pour les boutons qui se trouve également dans ma BO.
Ceci étant je ne suis pas certain d'avoir tout compris au code que tu m'a
fournit.
Je l'ai donc mis dans la macro ( Sub test ) que je lance avec la propriété
Onaction de ma combo, mais ça plante.
erreur d'exécution '5' avec en surbrillance cette ligne de ton code :
With Application.CommandBars("EMARGEMENT").Controls("ComboMois")
Peux-tu m'aider et m'expliquer ce que je ne fais pas comme il faut?
Ben j'ai bien relu ton POST , et effectivement EMMARGEMENT et EMARGEMENT sont écrits 2 fois différemment dans ce POST. S'agit-il d'une erreur de frappe ou d'une réalité ? A toi de voir
A+
Salut anonymousA,
Merci de t'être penché sur mon sort...
J'ai regardé ActionControl dans l'aide VBA et j'y ai trouvé un exemple qui semble intéressant pour les boutons qui se trouve également dans ma BO.
Ceci étant je ne suis pas certain d'avoir tout compris au code que tu m'a fournit.
Je l'ai donc mis dans la macro ( Sub test ) que je lance avec la propriété Onaction de ma combo, mais ça plante.
erreur d'exécution '5' avec en surbrillance cette ligne de ton code : With Application.CommandBars("EMARGEMENT").Controls("ComboMois")
Peux-tu m'aider et m'expliquer ce que je ne fais pas comme il faut?
Merci.
Cordialement.
Marc
michdenis
Tout ce qui suit dans un module Standard :
'----------------------------- Sub CréerBarreOutils()
Dim MBar As CommandBar Dim Ct As CommandBarControl
On Error Resume Next Application.CommandBars("EMARGEMENT").Delete If Err <> 0 Then Err = 0 Set MBar = Application.CommandBars.Add("EMARGEMENT")
Set Ct = Application.CommandBars("EMARGEMENT").Controls. _ Add(msoControlComboBox, , , 1) With Ct .Caption = "Liste des MOIS à afficher" For i = 1 To 12 .AddItem Format(DateSerial(2006, i, 1), "MMMM") Next .Text = .List(1) .OnAction = "test" End With
With MBar .Visible = True .Enabled = True 'Pour positionner la nouvelle barre d'outils 'à l'extrémité de la barre d'outils Standard(optionnel) .Position = msoBarTop .Left = Application.CommandBars("Standard").Width .RowIndex = Application.CommandBars("Standard").RowIndex End With
Set Ct = Nothing: Set MBar = Nothing
End Sub
'----------------------------- Sub test()
Dim LeMois As String LeMois = Application.CommandBars("EMARGEMENT").Controls(1).Text
'Attention -> sensible à la casse ! Select Case LeMois Case Is = "janvier" MsgBox 1 'Action à déclencher selon le mois Case Is = "février" MsgBox 2 '.../ etc pour le reste des mois End Select
End Sub '-----------------------------
"Excel...lent" a écrit dans le message de news:
Salut anonymousA,
Concernant le nom de la BO c'est une faute de frappe.
Ce que j'ai fait j'ai changé les noms de ma BO et de ma ComboBox comme ceux qui sont dans ton code et cela plante pareil et à la même ligne, celle là :
With Application.CommandBars("MaBarre").Controls("MyCtrl4")
Par contre j'ai remarqué quelque chose lorsque je saisissais ton code "procMyCtrl4". Quand je saisis la 3è ligne :
essai = .List(.ListIndex)
quand je tape le point [.] juste avant "List" , VBA ne me propose pas dans sa liste la fonction "LIST".
Curieux non ?
Pour info j'utilise EXCEL 2000 (9.0.2812) avec VBA 6.3.
Merci de ton aide et ta patience.
Cordialement.
Marc
Tout ce qui suit dans un module Standard :
'-----------------------------
Sub CréerBarreOutils()
Dim MBar As CommandBar
Dim Ct As CommandBarControl
On Error Resume Next
Application.CommandBars("EMARGEMENT").Delete
If Err <> 0 Then Err = 0
Set MBar = Application.CommandBars.Add("EMARGEMENT")
Set Ct = Application.CommandBars("EMARGEMENT").Controls. _
Add(msoControlComboBox, , , 1)
With Ct
.Caption = "Liste des MOIS à afficher"
For i = 1 To 12
.AddItem Format(DateSerial(2006, i, 1), "MMMM")
Next
.Text = .List(1)
.OnAction = "test"
End With
With MBar
.Visible = True
.Enabled = True
'Pour positionner la nouvelle barre d'outils
'à l'extrémité de la barre d'outils Standard(optionnel)
.Position = msoBarTop
.Left = Application.CommandBars("Standard").Width
.RowIndex = Application.CommandBars("Standard").RowIndex
End With
Set Ct = Nothing: Set MBar = Nothing
End Sub
'-----------------------------
Sub test()
Dim LeMois As String
LeMois = Application.CommandBars("EMARGEMENT").Controls(1).Text
'Attention -> sensible à la casse !
Select Case LeMois
Case Is = "janvier"
MsgBox 1 'Action à déclencher selon le mois
Case Is = "février"
MsgBox 2
'.../ etc pour le reste des mois
End Select
End Sub
'-----------------------------
"Excel...lent" <vpco@free.fr> a écrit dans le message de news:
OtxsoH2zGHA.4796@TK2MSFTNGP06.phx.gbl...
Salut anonymousA,
Concernant le nom de la BO c'est une faute de frappe.
Ce que j'ai fait j'ai changé les noms de ma BO et de ma ComboBox comme ceux
qui sont dans ton code et cela plante pareil et à la même ligne, celle là :
With Application.CommandBars("MaBarre").Controls("MyCtrl4")
Par contre j'ai remarqué quelque chose lorsque je saisissais ton code
"procMyCtrl4". Quand je saisis la 3è ligne :
essai = .List(.ListIndex)
quand je tape le point [.] juste avant "List" , VBA ne me propose pas dans
sa liste la fonction "LIST".
Curieux non ?
Pour info j'utilise EXCEL 2000 (9.0.2812) avec VBA 6.3.
'----------------------------- Sub CréerBarreOutils()
Dim MBar As CommandBar Dim Ct As CommandBarControl
On Error Resume Next Application.CommandBars("EMARGEMENT").Delete If Err <> 0 Then Err = 0 Set MBar = Application.CommandBars.Add("EMARGEMENT")
Set Ct = Application.CommandBars("EMARGEMENT").Controls. _ Add(msoControlComboBox, , , 1) With Ct .Caption = "Liste des MOIS à afficher" For i = 1 To 12 .AddItem Format(DateSerial(2006, i, 1), "MMMM") Next .Text = .List(1) .OnAction = "test" End With
With MBar .Visible = True .Enabled = True 'Pour positionner la nouvelle barre d'outils 'à l'extrémité de la barre d'outils Standard(optionnel) .Position = msoBarTop .Left = Application.CommandBars("Standard").Width .RowIndex = Application.CommandBars("Standard").RowIndex End With
Set Ct = Nothing: Set MBar = Nothing
End Sub
'----------------------------- Sub test()
Dim LeMois As String LeMois = Application.CommandBars("EMARGEMENT").Controls(1).Text
'Attention -> sensible à la casse ! Select Case LeMois Case Is = "janvier" MsgBox 1 'Action à déclencher selon le mois Case Is = "février" MsgBox 2 '.../ etc pour le reste des mois End Select
End Sub '-----------------------------
"Excel...lent" a écrit dans le message de news:
Salut anonymousA,
Concernant le nom de la BO c'est une faute de frappe.
Ce que j'ai fait j'ai changé les noms de ma BO et de ma ComboBox comme ceux qui sont dans ton code et cela plante pareil et à la même ligne, celle là :
With Application.CommandBars("MaBarre").Controls("MyCtrl4")
Par contre j'ai remarqué quelque chose lorsque je saisissais ton code "procMyCtrl4". Quand je saisis la 3è ligne :
essai = .List(.ListIndex)
quand je tape le point [.] juste avant "List" , VBA ne me propose pas dans sa liste la fonction "LIST".
Curieux non ?
Pour info j'utilise EXCEL 2000 (9.0.2812) avec VBA 6.3.
Merci de ton aide et ta patience.
Cordialement.
Marc
Excel...lent
Salut anonymousA,
Concernant le nom de la BO c'est une faute de frappe.
Ce que j'ai fait j'ai changé les noms de ma BO et de ma ComboBox comme ceux qui sont dans ton code et cela plante pareil et à la même ligne, celle là :
With Application.CommandBars("MaBarre").Controls("MyCtrl4")
Par contre j'ai remarqué quelque chose lorsque je saisissais ton code "procMyCtrl4". Quand je saisis la 3è ligne :
essai = .List(.ListIndex)
quand je tape le point [.] juste avant "List" , VBA ne me propose pas dans sa liste la fonction "LIST".
Curieux non ?
Pour info j'utilise EXCEL 2000 (9.0.2812) avec VBA 6.3.
Merci de ton aide et ta patience.
Cordialement.
Marc
Salut anonymousA,
Concernant le nom de la BO c'est une faute de frappe.
Ce que j'ai fait j'ai changé les noms de ma BO et de ma ComboBox comme ceux
qui sont dans ton code et cela plante pareil et à la même ligne, celle là :
With Application.CommandBars("MaBarre").Controls("MyCtrl4")
Par contre j'ai remarqué quelque chose lorsque je saisissais ton code
"procMyCtrl4". Quand je saisis la 3è ligne :
essai = .List(.ListIndex)
quand je tape le point [.] juste avant "List" , VBA ne me propose pas dans
sa liste la fonction "LIST".
Curieux non ?
Pour info j'utilise EXCEL 2000 (9.0.2812) avec VBA 6.3.
Concernant le nom de la BO c'est une faute de frappe.
Ce que j'ai fait j'ai changé les noms de ma BO et de ma ComboBox comme ceux qui sont dans ton code et cela plante pareil et à la même ligne, celle là :
With Application.CommandBars("MaBarre").Controls("MyCtrl4")
Par contre j'ai remarqué quelque chose lorsque je saisissais ton code "procMyCtrl4". Quand je saisis la 3è ligne :
essai = .List(.ListIndex)
quand je tape le point [.] juste avant "List" , VBA ne me propose pas dans sa liste la fonction "LIST".
Curieux non ?
Pour info j'utilise EXCEL 2000 (9.0.2812) avec VBA 6.3.
Merci de ton aide et ta patience.
Cordialement.
Marc
Excel...lent
Salut Denis,
Toujours content de te lire.
Bon comment dire, heu.... Ben tu as tapé juste ça fonctionne au poil ( comme d' habitude oserais-je dire ) !
Merci à toi pour m'avoir un peu beaucoup mâché le boulot.
Amicordialement.
Marc
P.S : Merci beaucoup à toi aussi AnonymousA
Salut Denis,
Toujours content de te lire.
Bon comment dire, heu.... Ben tu as tapé juste ça fonctionne au poil ( comme
d' habitude oserais-je dire ) !
Merci à toi pour m'avoir un peu beaucoup mâché le boulot.