La procédure pour insérer un tel contrôle est plutôt ceci
dans un module standard. Pour que le contrôle apparaisse
sur la feuille, Excel doit passer en "mode création" et revenir
en "mode normal". C'est ce que fait la macro : "Mode_Création"
Et pour situer le contrôle dans la feuille, tu utilises les références
des propriétés "top" et "left" d'une cellule de ton choix. Ceci va
devenir le coin supérieur gauche du contrôle.
'------------------------------
Sub test()
With Worksheets("Feuil1") 'Nom de la feuille à adapter
.OLEObjects.Add(ClassType:="MSComCtl2.MonthView.2", _
Link:úlse, DisplayAsIcon:úlse, _
Left:=.Range("A10").Left, _
Top:=.Range("A10").Top).Visible = True
Mode_Création
End With
End Sub
'------------------------------
Sub Mode_Création()
With ThisWorkbook.VBProject.VBE.CommandBars
With .FindControl(ID:!2)
.Enabled = True
.Execute
End With
.FindControl(ID:!2).Execute
End With
End Sub
'------------------------------
--
MichD
--------------------------------------------
"michdenis" a écrit dans le message de groupe de
discussion : i725nf$8jg$
Bonjour,
L'appellation du contrôle : "Microsoft Monthview Control 6.0 (Sp6)
Tu peux utiliser ce contrôle : "Microsoft Date And Timer Picker Control
6.0 (Sp6)
ou "Calendar Control 1X.0"
Pour insérer le contrôle à un endroit désiré dans la feuille, j'ai utilisé
la référence à la cellule de mon choix, propriété Top and Left de la
cellule.
'---------------------------------
Sub test()
With Worksheets("Feuil1")
.OLEObjects.Add ClassType:="MSComCtl2.MonthView.2", _
Link:úlse, DisplayAsIcon:úlse, _
Left:=.Range("A10").Left, _
Top:=.Range("A10").Top
.Range("A1").Select
End With
End Sub
'---------------------------------
--
MichD
--------------------------------------------
"Chris Col" a écrit dans le message de groupe de
discussion :
4c947261$0$8979$
Bonjour à tous,
Quelqu'un aurait-il un exemple d'utilisation directe de Monthview control
dans une feuille ce calcul (Excel 2010) sans passer par l'insertion dans
un
UserForm ?
Il est en effet possible d'insérer directement ce contrôle sur la feuille
par :
Développeur, Insérer, Autres contrôles.
- Si je positionne le calendrier au milieu de la page par exemple, dés que
je quitte le mode création
un second calendrier apparait en haut à gauche de la page et c'est ce
dernier qui est actif.
Le premier inséré reste visible et inutile.
- Si j'enregistre la macro d'insertion cela donne :
Sub Macro1()
ActiveSheet.OLEObjects.Add(ClassType:="MSComCtl2.MonthView.2",
Link:úlse _
, DisplayAsIcon:úlse, Left:F5, Top:.75, Width:6.5,
Height:= _
156).Select
End Sub
Comment la modifier pour fixer la cellule liée et rendre le contrôle
immédiatement
utilisable car Excel reste en mode création.
Ce n'est pas un réel besoin, c'est juste pour comprendre et apprendre.
Merci d'avance.
Cc.
La procédure pour insérer un tel contrôle est plutôt ceci
dans un module standard. Pour que le contrôle apparaisse
sur la feuille, Excel doit passer en "mode création" et revenir
en "mode normal". C'est ce que fait la macro : "Mode_Création"
Et pour situer le contrôle dans la feuille, tu utilises les références
des propriétés "top" et "left" d'une cellule de ton choix. Ceci va
devenir le coin supérieur gauche du contrôle.
'------------------------------
Sub test()
With Worksheets("Feuil1") 'Nom de la feuille à adapter
.OLEObjects.Add(ClassType:="MSComCtl2.MonthView.2", _
Link:úlse, DisplayAsIcon:úlse, _
Left:=.Range("A10").Left, _
Top:=.Range("A10").Top).Visible = True
Mode_Création
End With
End Sub
'------------------------------
Sub Mode_Création()
With ThisWorkbook.VBProject.VBE.CommandBars
With .FindControl(ID:!2)
.Enabled = True
.Execute
End With
.FindControl(ID:!2).Execute
End With
End Sub
'------------------------------
--
MichD
--------------------------------------------
"michdenis" <michdenis@hotmail.com> a écrit dans le message de groupe de
discussion : i725nf$8jg$1@speranza.aioe.org...
Bonjour,
L'appellation du contrôle : "Microsoft Monthview Control 6.0 (Sp6)
Tu peux utiliser ce contrôle : "Microsoft Date And Timer Picker Control
6.0 (Sp6)
ou "Calendar Control 1X.0"
Pour insérer le contrôle à un endroit désiré dans la feuille, j'ai utilisé
la référence à la cellule de mon choix, propriété Top and Left de la
cellule.
'---------------------------------
Sub test()
With Worksheets("Feuil1")
.OLEObjects.Add ClassType:="MSComCtl2.MonthView.2", _
Link:úlse, DisplayAsIcon:úlse, _
Left:=.Range("A10").Left, _
Top:=.Range("A10").Top
.Range("A1").Select
End With
End Sub
'---------------------------------
--
MichD
--------------------------------------------
"Chris Col" <chris.col@free.fr> a écrit dans le message de groupe de
discussion :
4c947261$0$8979$426a34cc@news.free.fr...
Bonjour à tous,
Quelqu'un aurait-il un exemple d'utilisation directe de Monthview control
dans une feuille ce calcul (Excel 2010) sans passer par l'insertion dans
un
UserForm ?
Il est en effet possible d'insérer directement ce contrôle sur la feuille
par :
Développeur, Insérer, Autres contrôles.
- Si je positionne le calendrier au milieu de la page par exemple, dés que
je quitte le mode création
un second calendrier apparait en haut à gauche de la page et c'est ce
dernier qui est actif.
Le premier inséré reste visible et inutile.
- Si j'enregistre la macro d'insertion cela donne :
Sub Macro1()
ActiveSheet.OLEObjects.Add(ClassType:="MSComCtl2.MonthView.2",
Link:úlse _
, DisplayAsIcon:úlse, Left:F5, Top:.75, Width:6.5,
Height:= _
156).Select
End Sub
Comment la modifier pour fixer la cellule liée et rendre le contrôle
immédiatement
utilisable car Excel reste en mode création.
Ce n'est pas un réel besoin, c'est juste pour comprendre et apprendre.
Merci d'avance.
Cc.
La procédure pour insérer un tel contrôle est plutôt ceci
dans un module standard. Pour que le contrôle apparaisse
sur la feuille, Excel doit passer en "mode création" et revenir
en "mode normal". C'est ce que fait la macro : "Mode_Création"
Et pour situer le contrôle dans la feuille, tu utilises les références
des propriétés "top" et "left" d'une cellule de ton choix. Ceci va
devenir le coin supérieur gauche du contrôle.
'------------------------------
Sub test()
With Worksheets("Feuil1") 'Nom de la feuille à adapter
.OLEObjects.Add(ClassType:="MSComCtl2.MonthView.2", _
Link:úlse, DisplayAsIcon:úlse, _
Left:=.Range("A10").Left, _
Top:=.Range("A10").Top).Visible = True
Mode_Création
End With
End Sub
'------------------------------
Sub Mode_Création()
With ThisWorkbook.VBProject.VBE.CommandBars
With .FindControl(ID:!2)
.Enabled = True
.Execute
End With
.FindControl(ID:!2).Execute
End With
End Sub
'------------------------------
--
MichD
--------------------------------------------
"michdenis" a écrit dans le message de groupe de
discussion : i725nf$8jg$
Bonjour,
L'appellation du contrôle : "Microsoft Monthview Control 6.0 (Sp6)
Tu peux utiliser ce contrôle : "Microsoft Date And Timer Picker Control
6.0 (Sp6)
ou "Calendar Control 1X.0"
Pour insérer le contrôle à un endroit désiré dans la feuille, j'ai utilisé
la référence à la cellule de mon choix, propriété Top and Left de la
cellule.
'---------------------------------
Sub test()
With Worksheets("Feuil1")
.OLEObjects.Add ClassType:="MSComCtl2.MonthView.2", _
Link:úlse, DisplayAsIcon:úlse, _
Left:=.Range("A10").Left, _
Top:=.Range("A10").Top
.Range("A1").Select
End With
End Sub
'---------------------------------
--
MichD
--------------------------------------------
"Chris Col" a écrit dans le message de groupe de
discussion :
4c947261$0$8979$
Bonjour à tous,
Quelqu'un aurait-il un exemple d'utilisation directe de Monthview control
dans une feuille ce calcul (Excel 2010) sans passer par l'insertion dans
un
UserForm ?
Il est en effet possible d'insérer directement ce contrôle sur la feuille
par :
Développeur, Insérer, Autres contrôles.
- Si je positionne le calendrier au milieu de la page par exemple, dés que
je quitte le mode création
un second calendrier apparait en haut à gauche de la page et c'est ce
dernier qui est actif.
Le premier inséré reste visible et inutile.
- Si j'enregistre la macro d'insertion cela donne :
Sub Macro1()
ActiveSheet.OLEObjects.Add(ClassType:="MSComCtl2.MonthView.2",
Link:úlse _
, DisplayAsIcon:úlse, Left:F5, Top:.75, Width:6.5,
Height:= _
156).Select
End Sub
Comment la modifier pour fixer la cellule liée et rendre le contrôle
immédiatement
utilisable car Excel reste en mode création.
Ce n'est pas un réel besoin, c'est juste pour comprendre et apprendre.
Merci d'avance.
Cc.
La procédure pour insérer un tel contrôle est plutôt ceci
dans un module standard. Pour que le contrôle apparaisse
sur la feuille, Excel doit passer en "mode création" et revenir
en "mode normal". C'est ce que fait la macro : "Mode_Création"
Et pour situer le contrôle dans la feuille, tu utilises les références
des propriétés "top" et "left" d'une cellule de ton choix. Ceci va
devenir le coin supérieur gauche du contrôle.
'------------------------------
Sub test()
With Worksheets("Feuil1") 'Nom de la feuille à adapter
.OLEObjects.Add(ClassType:="MSComCtl2.MonthView.2", _
Link:úlse, DisplayAsIcon:úlse, _
Left:=.Range("A10").Left, _
Top:=.Range("A10").Top).Visible = True
Mode_Création
End With
End Sub
'------------------------------
Sub Mode_Création()
With ThisWorkbook.VBProject.VBE.CommandBars
With .FindControl(ID:!2)
.Enabled = True
.Execute
End With
.FindControl(ID:!2).Execute
End With
End Sub
'------------------------------
--
MichD
--------------------------------------------
"michdenis" a écrit dans le message de groupe de
discussion : i725nf$8jg$
Bonjour,
L'appellation du contrôle : "Microsoft Monthview Control 6.0 (Sp6)
Tu peux utiliser ce contrôle : "Microsoft Date And Timer Picker Control
6.0 (Sp6)
ou "Calendar Control 1X.0"
Pour insérer le contrôle à un endroit désiré dans la feuille, j'ai utilisé
la référence à la cellule de mon choix, propriété Top and Left de la
cellule.
'---------------------------------
Sub test()
With Worksheets("Feuil1")
.OLEObjects.Add ClassType:="MSComCtl2.MonthView.2", _
Link:úlse, DisplayAsIcon:úlse, _
Left:=.Range("A10").Left, _
Top:=.Range("A10").Top
.Range("A1").Select
End With
End Sub
'---------------------------------
--
MichD
--------------------------------------------
"Chris Col" a écrit dans le message de groupe de
discussion :
4c947261$0$8979$
Bonjour à tous,
Quelqu'un aurait-il un exemple d'utilisation directe de Monthview control
dans une feuille ce calcul (Excel 2010) sans passer par l'insertion dans
un
UserForm ?
Il est en effet possible d'insérer directement ce contrôle sur la feuille
par :
Développeur, Insérer, Autres contrôles.
- Si je positionne le calendrier au milieu de la page par exemple, dés que
je quitte le mode création
un second calendrier apparait en haut à gauche de la page et c'est ce
dernier qui est actif.
Le premier inséré reste visible et inutile.
- Si j'enregistre la macro d'insertion cela donne :
Sub Macro1()
ActiveSheet.OLEObjects.Add(ClassType:="MSComCtl2.MonthView.2",
Link:úlse _
, DisplayAsIcon:úlse, Left:F5, Top:.75, Width:6.5,
Height:= _
156).Select
End Sub
Comment la modifier pour fixer la cellule liée et rendre le contrôle
immédiatement
utilisable car Excel reste en mode création.
Ce n'est pas un réel besoin, c'est juste pour comprendre et apprendre.
Merci d'avance.
Cc.
La procédure pour insérer un tel contrôle est plutôt ceci
dans un module standard. Pour que le contrôle apparaisse
sur la feuille, Excel doit passer en "mode création" et revenir
en "mode normal". C'est ce que fait la macro : "Mode_Création"
Et pour situer le contrôle dans la feuille, tu utilises les références
des propriétés "top" et "left" d'une cellule de ton choix. Ceci va
devenir le coin supérieur gauche du contrôle.
'------------------------------
Sub test()
With Worksheets("Feuil1") 'Nom de la feuille à adapter
.OLEObjects.Add(ClassType:="MSComCtl2.MonthView.2", _
Link:úlse, DisplayAsIcon:úlse, _
Left:=.Range("A10").Left, _
Top:=.Range("A10").Top).Visible = True
Mode_Création
End With
End Sub
'------------------------------
Sub Mode_Création()
With ThisWorkbook.VBProject.VBE.CommandBars
With .FindControl(ID:!2)
.Enabled = True
.Execute
End With
.FindControl(ID:!2).Execute
End With
End Sub
'------------------------------
--
MichD
--------------------------------------------
"michdenis" <michdenis@hotmail.com> a écrit dans le message de groupe de
discussion : i725nf$8jg$1@speranza.aioe.org...
Bonjour,
L'appellation du contrôle : "Microsoft Monthview Control 6.0 (Sp6)
Tu peux utiliser ce contrôle : "Microsoft Date And Timer Picker Control
6.0 (Sp6)
ou "Calendar Control 1X.0"
Pour insérer le contrôle à un endroit désiré dans la feuille, j'ai utilisé
la référence à la cellule de mon choix, propriété Top and Left de la
cellule.
'---------------------------------
Sub test()
With Worksheets("Feuil1")
.OLEObjects.Add ClassType:="MSComCtl2.MonthView.2", _
Link:úlse, DisplayAsIcon:úlse, _
Left:=.Range("A10").Left, _
Top:=.Range("A10").Top
.Range("A1").Select
End With
End Sub
'---------------------------------
--
MichD
--------------------------------------------
"Chris Col" <chris.col@free.fr> a écrit dans le message de groupe de
discussion :
4c947261$0$8979$426a34cc@news.free.fr...
Bonjour à tous,
Quelqu'un aurait-il un exemple d'utilisation directe de Monthview control
dans une feuille ce calcul (Excel 2010) sans passer par l'insertion dans
un
UserForm ?
Il est en effet possible d'insérer directement ce contrôle sur la feuille
par :
Développeur, Insérer, Autres contrôles.
- Si je positionne le calendrier au milieu de la page par exemple, dés que
je quitte le mode création
un second calendrier apparait en haut à gauche de la page et c'est ce
dernier qui est actif.
Le premier inséré reste visible et inutile.
- Si j'enregistre la macro d'insertion cela donne :
Sub Macro1()
ActiveSheet.OLEObjects.Add(ClassType:="MSComCtl2.MonthView.2",
Link:úlse _
, DisplayAsIcon:úlse, Left:F5, Top:.75, Width:6.5,
Height:= _
156).Select
End Sub
Comment la modifier pour fixer la cellule liée et rendre le contrôle
immédiatement
utilisable car Excel reste en mode création.
Ce n'est pas un réel besoin, c'est juste pour comprendre et apprendre.
Merci d'avance.
Cc.
La procédure pour insérer un tel contrôle est plutôt ceci
dans un module standard. Pour que le contrôle apparaisse
sur la feuille, Excel doit passer en "mode création" et revenir
en "mode normal". C'est ce que fait la macro : "Mode_Création"
Et pour situer le contrôle dans la feuille, tu utilises les références
des propriétés "top" et "left" d'une cellule de ton choix. Ceci va
devenir le coin supérieur gauche du contrôle.
'------------------------------
Sub test()
With Worksheets("Feuil1") 'Nom de la feuille à adapter
.OLEObjects.Add(ClassType:="MSComCtl2.MonthView.2", _
Link:úlse, DisplayAsIcon:úlse, _
Left:=.Range("A10").Left, _
Top:=.Range("A10").Top).Visible = True
Mode_Création
End With
End Sub
'------------------------------
Sub Mode_Création()
With ThisWorkbook.VBProject.VBE.CommandBars
With .FindControl(ID:!2)
.Enabled = True
.Execute
End With
.FindControl(ID:!2).Execute
End With
End Sub
'------------------------------
--
MichD
--------------------------------------------
"michdenis" a écrit dans le message de groupe de
discussion : i725nf$8jg$
Bonjour,
L'appellation du contrôle : "Microsoft Monthview Control 6.0 (Sp6)
Tu peux utiliser ce contrôle : "Microsoft Date And Timer Picker Control
6.0 (Sp6)
ou "Calendar Control 1X.0"
Pour insérer le contrôle à un endroit désiré dans la feuille, j'ai utilisé
la référence à la cellule de mon choix, propriété Top and Left de la
cellule.
'---------------------------------
Sub test()
With Worksheets("Feuil1")
.OLEObjects.Add ClassType:="MSComCtl2.MonthView.2", _
Link:úlse, DisplayAsIcon:úlse, _
Left:=.Range("A10").Left, _
Top:=.Range("A10").Top
.Range("A1").Select
End With
End Sub
'---------------------------------
--
MichD
--------------------------------------------
"Chris Col" a écrit dans le message de groupe de
discussion :
4c947261$0$8979$
Bonjour à tous,
Quelqu'un aurait-il un exemple d'utilisation directe de Monthview control
dans une feuille ce calcul (Excel 2010) sans passer par l'insertion dans
un
UserForm ?
Il est en effet possible d'insérer directement ce contrôle sur la feuille
par :
Développeur, Insérer, Autres contrôles.
- Si je positionne le calendrier au milieu de la page par exemple, dés que
je quitte le mode création
un second calendrier apparait en haut à gauche de la page et c'est ce
dernier qui est actif.
Le premier inséré reste visible et inutile.
- Si j'enregistre la macro d'insertion cela donne :
Sub Macro1()
ActiveSheet.OLEObjects.Add(ClassType:="MSComCtl2.MonthView.2",
Link:úlse _
, DisplayAsIcon:úlse, Left:F5, Top:.75, Width:6.5,
Height:= _
156).Select
End Sub
Comment la modifier pour fixer la cellule liée et rendre le contrôle
immédiatement
utilisable car Excel reste en mode création.
Ce n'est pas un réel besoin, c'est juste pour comprendre et apprendre.
Merci d'avance.
Cc.
Private Sub MonthView1_DateClick(ByVal DateClicked As Date)
Range("A1") = DateClicked
End Sub
Utilise quelque chose comme ceci dans le module feuille où tu as inséré le
contrôle
Tu choisis la cellule de ton choix où tu veux insérer la date
'------------------------------
Private Sub MonthView1_DateClick(ByVal DateClicked As Date)
With Range("A1")
'le format date que tu veux
.NumberFormat = "dddd, d mmmm yyyy"
.Value = DateClicked
End With
End Sub
'------------------------------
--
MichD
--------------------------------------------
"Chris Col" a écrit dans le message de groupe de
discussion :
4c94bb97$0$13377$
Salut MichD et merci,
Le Sub Mode_Création renvoi l'erreur d'exécution '1004':
Erreur définie par l'application ou par l'objet.
Le calendrier s'insère bien sur la feuille mais le
. . . _Date_Click(. . . reste inopérant.
Cc.La procédure pour insérer un tel contrôle est plutôt ceci
dans un module standard. Pour que le contrôle apparaisse
sur la feuille, Excel doit passer en "mode création" et revenir
en "mode normal". C'est ce que fait la macro : "Mode_Création"
Et pour situer le contrôle dans la feuille, tu utilises les références
des propriétés "top" et "left" d'une cellule de ton choix. Ceci va
devenir le coin supérieur gauche du contrôle.
'------------------------------
Sub test()
With Worksheets("Feuil1") 'Nom de la feuille à adapter
.OLEObjects.Add(ClassType:="MSComCtl2.MonthView.2", _
Link:úlse, DisplayAsIcon:úlse, _
Left:=.Range("A10").Left, _
Top:=.Range("A10").Top).Visible = True
Mode_Création
End With
End Sub
'------------------------------
Sub Mode_Création()
With ThisWorkbook.VBProject.VBE.CommandBars
With .FindControl(ID:!2)
.Enabled = True
.Execute
End With
.FindControl(ID:!2).Execute
End With
End Sub
'------------------------------
--
MichD
--------------------------------------------
"michdenis" a écrit dans le message de groupe de
discussion : i725nf$8jg$
Bonjour,
L'appellation du contrôle : "Microsoft Monthview Control 6.0 (Sp6)
Tu peux utiliser ce contrôle : "Microsoft Date And Timer Picker Control
6.0 (Sp6)
ou "Calendar Control 1X.0"
Pour insérer le contrôle à un endroit désiré dans la feuille, j'ai
utilisé
la référence à la cellule de mon choix, propriété Top and Left de la
cellule.
'---------------------------------
Sub test()
With Worksheets("Feuil1")
.OLEObjects.Add ClassType:="MSComCtl2.MonthView.2", _
Link:úlse, DisplayAsIcon:úlse, _
Left:=.Range("A10").Left, _
Top:=.Range("A10").Top
.Range("A1").Select
End With
End Sub
'---------------------------------
--
MichD
--------------------------------------------
"Chris Col" a écrit dans le message de groupe de
discussion :
4c947261$0$8979$
Bonjour à tous,
Quelqu'un aurait-il un exemple d'utilisation directe de Monthview control
dans une feuille ce calcul (Excel 2010) sans passer par l'insertion dans
un
UserForm ?
Il est en effet possible d'insérer directement ce contrôle sur la feuille
par :
Développeur, Insérer, Autres contrôles.
- Si je positionne le calendrier au milieu de la page par exemple, dés
que
je quitte le mode création
un second calendrier apparait en haut à gauche de la page et c'est ce
dernier qui est actif.
Le premier inséré reste visible et inutile.
- Si j'enregistre la macro d'insertion cela donne :
Sub Macro1()
ActiveSheet.OLEObjects.Add(ClassType:="MSComCtl2.MonthView.2",
Link:úlse _
, DisplayAsIcon:úlse, Left:F5, Top:.75, Width:6.5,
Height:= _
156).Select
End Sub
Comment la modifier pour fixer la cellule liée et rendre le contrôle
immédiatement
utilisable car Excel reste en mode création.
Ce n'est pas un réel besoin, c'est juste pour comprendre et apprendre.
Merci d'avance.
Cc.
Private Sub MonthView1_DateClick(ByVal DateClicked As Date)
Range("A1") = DateClicked
End Sub
Utilise quelque chose comme ceci dans le module feuille où tu as inséré le
contrôle
Tu choisis la cellule de ton choix où tu veux insérer la date
'------------------------------
Private Sub MonthView1_DateClick(ByVal DateClicked As Date)
With Range("A1")
'le format date que tu veux
.NumberFormat = "dddd, d mmmm yyyy"
.Value = DateClicked
End With
End Sub
'------------------------------
--
MichD
--------------------------------------------
"Chris Col" <chris.col@free.fr> a écrit dans le message de groupe de
discussion :
4c94bb97$0$13377$426a34cc@news.free.fr...
Salut MichD et merci,
Le Sub Mode_Création renvoi l'erreur d'exécution '1004':
Erreur définie par l'application ou par l'objet.
Le calendrier s'insère bien sur la feuille mais le
. . . _Date_Click(. . . reste inopérant.
Cc.
La procédure pour insérer un tel contrôle est plutôt ceci
dans un module standard. Pour que le contrôle apparaisse
sur la feuille, Excel doit passer en "mode création" et revenir
en "mode normal". C'est ce que fait la macro : "Mode_Création"
Et pour situer le contrôle dans la feuille, tu utilises les références
des propriétés "top" et "left" d'une cellule de ton choix. Ceci va
devenir le coin supérieur gauche du contrôle.
'------------------------------
Sub test()
With Worksheets("Feuil1") 'Nom de la feuille à adapter
.OLEObjects.Add(ClassType:="MSComCtl2.MonthView.2", _
Link:úlse, DisplayAsIcon:úlse, _
Left:=.Range("A10").Left, _
Top:=.Range("A10").Top).Visible = True
Mode_Création
End With
End Sub
'------------------------------
Sub Mode_Création()
With ThisWorkbook.VBProject.VBE.CommandBars
With .FindControl(ID:!2)
.Enabled = True
.Execute
End With
.FindControl(ID:!2).Execute
End With
End Sub
'------------------------------
--
MichD
--------------------------------------------
"michdenis" <michdenis@hotmail.com> a écrit dans le message de groupe de
discussion : i725nf$8jg$1@speranza.aioe.org...
Bonjour,
L'appellation du contrôle : "Microsoft Monthview Control 6.0 (Sp6)
Tu peux utiliser ce contrôle : "Microsoft Date And Timer Picker Control
6.0 (Sp6)
ou "Calendar Control 1X.0"
Pour insérer le contrôle à un endroit désiré dans la feuille, j'ai
utilisé
la référence à la cellule de mon choix, propriété Top and Left de la
cellule.
'---------------------------------
Sub test()
With Worksheets("Feuil1")
.OLEObjects.Add ClassType:="MSComCtl2.MonthView.2", _
Link:úlse, DisplayAsIcon:úlse, _
Left:=.Range("A10").Left, _
Top:=.Range("A10").Top
.Range("A1").Select
End With
End Sub
'---------------------------------
--
MichD
--------------------------------------------
"Chris Col" <chris.col@free.fr> a écrit dans le message de groupe de
discussion :
4c947261$0$8979$426a34cc@news.free.fr...
Bonjour à tous,
Quelqu'un aurait-il un exemple d'utilisation directe de Monthview control
dans une feuille ce calcul (Excel 2010) sans passer par l'insertion dans
un
UserForm ?
Il est en effet possible d'insérer directement ce contrôle sur la feuille
par :
Développeur, Insérer, Autres contrôles.
- Si je positionne le calendrier au milieu de la page par exemple, dés
que
je quitte le mode création
un second calendrier apparait en haut à gauche de la page et c'est ce
dernier qui est actif.
Le premier inséré reste visible et inutile.
- Si j'enregistre la macro d'insertion cela donne :
Sub Macro1()
ActiveSheet.OLEObjects.Add(ClassType:="MSComCtl2.MonthView.2",
Link:úlse _
, DisplayAsIcon:úlse, Left:F5, Top:.75, Width:6.5,
Height:= _
156).Select
End Sub
Comment la modifier pour fixer la cellule liée et rendre le contrôle
immédiatement
utilisable car Excel reste en mode création.
Ce n'est pas un réel besoin, c'est juste pour comprendre et apprendre.
Merci d'avance.
Cc.
Private Sub MonthView1_DateClick(ByVal DateClicked As Date)
Range("A1") = DateClicked
End Sub
Utilise quelque chose comme ceci dans le module feuille où tu as inséré le
contrôle
Tu choisis la cellule de ton choix où tu veux insérer la date
'------------------------------
Private Sub MonthView1_DateClick(ByVal DateClicked As Date)
With Range("A1")
'le format date que tu veux
.NumberFormat = "dddd, d mmmm yyyy"
.Value = DateClicked
End With
End Sub
'------------------------------
--
MichD
--------------------------------------------
"Chris Col" a écrit dans le message de groupe de
discussion :
4c94bb97$0$13377$
Salut MichD et merci,
Le Sub Mode_Création renvoi l'erreur d'exécution '1004':
Erreur définie par l'application ou par l'objet.
Le calendrier s'insère bien sur la feuille mais le
. . . _Date_Click(. . . reste inopérant.
Cc.La procédure pour insérer un tel contrôle est plutôt ceci
dans un module standard. Pour que le contrôle apparaisse
sur la feuille, Excel doit passer en "mode création" et revenir
en "mode normal". C'est ce que fait la macro : "Mode_Création"
Et pour situer le contrôle dans la feuille, tu utilises les références
des propriétés "top" et "left" d'une cellule de ton choix. Ceci va
devenir le coin supérieur gauche du contrôle.
'------------------------------
Sub test()
With Worksheets("Feuil1") 'Nom de la feuille à adapter
.OLEObjects.Add(ClassType:="MSComCtl2.MonthView.2", _
Link:úlse, DisplayAsIcon:úlse, _
Left:=.Range("A10").Left, _
Top:=.Range("A10").Top).Visible = True
Mode_Création
End With
End Sub
'------------------------------
Sub Mode_Création()
With ThisWorkbook.VBProject.VBE.CommandBars
With .FindControl(ID:!2)
.Enabled = True
.Execute
End With
.FindControl(ID:!2).Execute
End With
End Sub
'------------------------------
--
MichD
--------------------------------------------
"michdenis" a écrit dans le message de groupe de
discussion : i725nf$8jg$
Bonjour,
L'appellation du contrôle : "Microsoft Monthview Control 6.0 (Sp6)
Tu peux utiliser ce contrôle : "Microsoft Date And Timer Picker Control
6.0 (Sp6)
ou "Calendar Control 1X.0"
Pour insérer le contrôle à un endroit désiré dans la feuille, j'ai
utilisé
la référence à la cellule de mon choix, propriété Top and Left de la
cellule.
'---------------------------------
Sub test()
With Worksheets("Feuil1")
.OLEObjects.Add ClassType:="MSComCtl2.MonthView.2", _
Link:úlse, DisplayAsIcon:úlse, _
Left:=.Range("A10").Left, _
Top:=.Range("A10").Top
.Range("A1").Select
End With
End Sub
'---------------------------------
--
MichD
--------------------------------------------
"Chris Col" a écrit dans le message de groupe de
discussion :
4c947261$0$8979$
Bonjour à tous,
Quelqu'un aurait-il un exemple d'utilisation directe de Monthview control
dans une feuille ce calcul (Excel 2010) sans passer par l'insertion dans
un
UserForm ?
Il est en effet possible d'insérer directement ce contrôle sur la feuille
par :
Développeur, Insérer, Autres contrôles.
- Si je positionne le calendrier au milieu de la page par exemple, dés
que
je quitte le mode création
un second calendrier apparait en haut à gauche de la page et c'est ce
dernier qui est actif.
Le premier inséré reste visible et inutile.
- Si j'enregistre la macro d'insertion cela donne :
Sub Macro1()
ActiveSheet.OLEObjects.Add(ClassType:="MSComCtl2.MonthView.2",
Link:úlse _
, DisplayAsIcon:úlse, Left:F5, Top:.75, Width:6.5,
Height:= _
156).Select
End Sub
Comment la modifier pour fixer la cellule liée et rendre le contrôle
immédiatement
utilisable car Excel reste en mode création.
Ce n'est pas un réel besoin, c'est juste pour comprendre et apprendre.
Merci d'avance.
Cc.
La Macro "mode_création" qui plante empêche d'aller plus loin.
le DateClicked est donc toujours inopérant.
Cc.
La Macro "mode_création" qui plante empêche d'aller plus loin.
le DateClicked est donc toujours inopérant.
Cc.
La Macro "mode_création" qui plante empêche d'aller plus loin.
le DateClicked est donc toujours inopérant.
Cc.
bonjour Chris,
la macro plante sur quel ligne de la macro "mode_création" ?
isabelle
Le 2010-09-18 12:02, Chris Col a écrit :La Macro "mode_création" qui plante empêche d'aller plus loin.
le DateClicked est donc toujours inopérant.
Cc.
bonjour Chris,
la macro plante sur quel ligne de la macro "mode_création" ?
isabelle
Le 2010-09-18 12:02, Chris Col a écrit :
La Macro "mode_création" qui plante empêche d'aller plus loin.
le DateClicked est donc toujours inopérant.
Cc.
bonjour Chris,
la macro plante sur quel ligne de la macro "mode_création" ?
isabelle
Le 2010-09-18 12:02, Chris Col a écrit :La Macro "mode_création" qui plante empêche d'aller plus loin.
le DateClicked est donc toujours inopérant.
Cc.
La Macro "mode_création" qui plante empêche d'aller plus loin.
le DateClicked est donc toujours inopérant.
Cc.
La Macro "mode_création" qui plante empêche d'aller plus loin.
le DateClicked est donc toujours inopérant.
Cc.
La Macro "mode_création" qui plante empêche d'aller plus loin.
le DateClicked est donc toujours inopérant.
Cc.
La Macro "mode_création" qui plante empêche d'aller plus loin.
le DateClicked est donc toujours inopérant.
Cc.
La Macro "mode_création" qui plante empêche d'aller plus loin.
le DateClicked est donc toujours inopérant.
Cc.
La Macro "mode_création" qui plante empêche d'aller plus loin.
le DateClicked est donc toujours inopérant.
Cc.
Sub Mode_Création()
With ThisWorkbook.VBProject.VBE.CommandBars
With .FindControl(ID:!2)
.Enabled = True
.Execute
End With
.FindControl(ID:!2).Execute
End With
End Sub
Sub Mode_Création()
With ThisWorkbook.VBProject.VBE.CommandBars
With .FindControl(ID:!2)
.Enabled = True
.Execute
End With
.FindControl(ID:!2).Execute
End With
End Sub
Sub Mode_Création()
With ThisWorkbook.VBProject.VBE.CommandBars
With .FindControl(ID:!2)
.Enabled = True
.Execute
End With
.FindControl(ID:!2).Execute
End With
End Sub