OVH Cloud OVH Cloud

Control calendrier...

8 réponses
Avatar
Albator V
Bonjour a tous,

j'ai cree un userform avec un control calendrier. sur
certain pc de mon boulot, le control activex n'est pas
installe, donc a louverture il y a un message derreur.

est il possible, a louverture dun fichier, de verifier si
le calendrier est installe, sil l'est, la macro se lance
normalement, sinon ouvrir un autre userform, virer le
calendrier du userform...

merci davance

8 réponses

Avatar
Daniel
Bonjour.
Est-ce que le code suivant répond à ton attente ?
Private Sub UserForm_Initialize()
On Error GoTo QuoiFaireEnCasDErreur
Calendar2.Visible = True
UserForm1.Show
Exit Sub
QuoiFaireEnCasDErreur:
UserForm2.Show
End Sub
Cordialement.
Daniel
"Albator V" a écrit dans le message de
news: 2a2c01c50dc1$cf916a30$
Bonjour a tous,

j'ai cree un userform avec un control calendrier. sur
certain pc de mon boulot, le control activex n'est pas
installe, donc a louverture il y a un message derreur.

est il possible, a louverture dun fichier, de verifier si
le calendrier est installe, sil l'est, la macro se lance
normalement, sinon ouvrir un autre userform, virer le
calendrier du userform...

merci davance


Avatar
anomymousA
bonjour,


vérifier avant l'ouverture du fichier que MSCAL.OCX existe dans la
bibliothèque de controles avant l'ouverture du fichier contenant le controle
( sur mon PC il est dans Program FilesMicrosoft OfficeOffice).
J'ai essayé de simuler l'absence de ce controle dans la bibliothèque et de
tester si le workbook_Open précède l'affichage du message d'erreur . Ce n'est
pas le cas.
Si je devais connaitre la même difficulté que toi, je conditionnerais
l'ouverture de mon fichier contenant mon userform via un autre fichier qui
lui testerait si le controle existe.
S'il existe une autre solution, je suis preneur.


A+



Bonjour a tous,

j'ai cree un userform avec un control calendrier. sur
certain pc de mon boulot, le control activex n'est pas
installe, donc a louverture il y a un message derreur.

est il possible, a louverture dun fichier, de verifier si
le calendrier est installe, sil l'est, la macro se lance
normalement, sinon ouvrir un autre userform, virer le
calendrier du userform...

merci davance



Avatar
Albator V
j'ai essaye un truc com ca mais ca ne fonctionne pas..

a louverture du fichier il me met : impossible de charger
le objet car il n'est pas disponible sur cette machine.
(eh oui ya meme une faute de francais).

me suis peut etre mal exprimer mais normalement il ne se
passe rien a louverture du fichier (aucune macro).

donc il me met ce message, et quand je lance la macro, il
me le remet et me dirige vers le code vba a cet endroit
(fleche).

Private Sub UserForm_Initialize()
On Error GoTo QuoiFaireEnCasDErreur

Application.ScreenUpdating = False

Sheets("Matrice").Copy Before:=Sheets(1)
Sheets("Matrice (2)").Visible = True
Sheets("Matrice (2)").Activate

InfoP.NewDate = Date

InfoP.NewDate.SelStart = 0
InfoP.NewDate.SelLength = Len(NewDate.Text)
InfoP.NewDate.SetFocus

==> InfoP.Calendrier.Value = Date <==

QuoiFaireEnCasDErreur:
Calendrier.Visible = False

End Sub
-----Message d'origine-----
Bonjour.
Est-ce que le code suivant répond à ton attente ?
Private Sub UserForm_Initialize()
On Error GoTo QuoiFaireEnCasDErreur
Calendar2.Visible = True
UserForm1.Show
Exit Sub
QuoiFaireEnCasDErreur:
UserForm2.Show
End Sub
Cordialement.
Daniel
"Albator V" a
écrit dans le message de

news: 2a2c01c50dc1$cf916a30$
Bonjour a tous,

j'ai cree un userform avec un control calendrier. sur
certain pc de mon boulot, le control activex n'est pas
installe, donc a louverture il y a un message derreur.

est il possible, a louverture dun fichier, de verifier
si


le calendrier est installe, sil l'est, la macro se
lance


normalement, sinon ouvrir un autre userform, virer le
calendrier du userform...

merci davance



.




Avatar
anomymousA
re,

eh oui, l'objet ne peut être chargé puisqu'il n'existe pas sur le PC. Voir
ma réponse dans le même fil.
Peut-être y aurait-il une solution si tu livrais avec ton produit le .OCX
correspondant mais je n'ai pas trouvé (mais pas beaucoup cherché) comment
rajouter 1 controle supplémentaire dans la liste des controles.

A+


j'ai essaye un truc com ca mais ca ne fonctionne pas..

a louverture du fichier il me met : impossible de charger
le objet car il n'est pas disponible sur cette machine.
(eh oui ya meme une faute de francais).

me suis peut etre mal exprimer mais normalement il ne se
passe rien a louverture du fichier (aucune macro).

donc il me met ce message, et quand je lance la macro, il
me le remet et me dirige vers le code vba a cet endroit
(fleche).

Private Sub UserForm_Initialize()
On Error GoTo QuoiFaireEnCasDErreur

Application.ScreenUpdating = False

Sheets("Matrice").Copy Before:=Sheets(1)
Sheets("Matrice (2)").Visible = True
Sheets("Matrice (2)").Activate

InfoP.NewDate = Date

InfoP.NewDate.SelStart = 0
InfoP.NewDate.SelLength = Len(NewDate.Text)
InfoP.NewDate.SetFocus

==> InfoP.Calendrier.Value = Date <= >
QuoiFaireEnCasDErreur:
Calendrier.Visible = False

End Sub
-----Message d'origine-----
Bonjour.
Est-ce que le code suivant répond à ton attente ?
Private Sub UserForm_Initialize()
On Error GoTo QuoiFaireEnCasDErreur
Calendar2.Visible = True
UserForm1.Show
Exit Sub
QuoiFaireEnCasDErreur:
UserForm2.Show
End Sub
Cordialement.
Daniel
"Albator V" a
écrit dans le message de

news: 2a2c01c50dc1$cf916a30$
Bonjour a tous,

j'ai cree un userform avec un control calendrier. sur
certain pc de mon boulot, le control activex n'est pas
installe, donc a louverture il y a un message derreur.

est il possible, a louverture dun fichier, de verifier
si


le calendrier est installe, sil l'est, la macro se
lance


normalement, sinon ouvrir un autre userform, virer le
calendrier du userform...

merci davance



.







Avatar
Albator V
comment tester si un control existe en vba alors ?

-----Message d'origine-----
bonjour,


vérifier avant l'ouverture du fichier que MSCAL.OCX
existe dans la

bibliothèque de controles avant l'ouverture du fichier
contenant le controle

( sur mon PC il est dans Program FilesMicrosoft
OfficeOffice).

J'ai essayé de simuler l'absence de ce controle dans la
bibliothèque et de

tester si le workbook_Open précède l'affichage du
message d'erreur . Ce n'est

pas le cas.
Si je devais connaitre la même difficulté que toi, je
conditionnerais

l'ouverture de mon fichier contenant mon userform via un
autre fichier qui

lui testerait si le controle existe.
S'il existe une autre solution, je suis preneur.


A+



Bonjour a tous,

j'ai cree un userform avec un control calendrier. sur
certain pc de mon boulot, le control activex n'est pas
installe, donc a louverture il y a un message derreur.

est il possible, a louverture dun fichier, de verifier
si


le calendrier est installe, sil l'est, la macro se
lance


normalement, sinon ouvrir un autre userform, virer le
calendrier du userform...

merci davance

.





Avatar
anomymousA
re,

le plus simple est de faire une recherche du fichier sur le disque par le
nom complet quand on le connait donc du style
If Dir("D:Program FilesMicrosoft OfficeOfficeMSCAL.OCX") <> "" Then
MsgBox "trouvé"

si le répertoire est inconnu, il faut faire une recherche sur l'ensemble des
répertoire.
Pour ce faire, sur le site de Frédéric Sigonneau, tu trouveras des exemples
de différentes manière d'y parvenir.

A+


comment tester si un control existe en vba alors ?

-----Message d'origine-----
bonjour,


vérifier avant l'ouverture du fichier que MSCAL.OCX
existe dans la

bibliothèque de controles avant l'ouverture du fichier
contenant le controle

( sur mon PC il est dans Program FilesMicrosoft
OfficeOffice).

J'ai essayé de simuler l'absence de ce controle dans la
bibliothèque et de

tester si le workbook_Open précède l'affichage du
message d'erreur . Ce n'est

pas le cas.
Si je devais connaitre la même difficulté que toi, je
conditionnerais

l'ouverture de mon fichier contenant mon userform via un
autre fichier qui

lui testerait si le controle existe.
S'il existe une autre solution, je suis preneur.


A+



Bonjour a tous,

j'ai cree un userform avec un control calendrier. sur
certain pc de mon boulot, le control activex n'est pas
installe, donc a louverture il y a un message derreur.

est il possible, a louverture dun fichier, de verifier
si


le calendrier est installe, sil l'est, la macro se
lance


normalement, sinon ouvrir un autre userform, virer le
calendrier du userform...

merci davance

.








Avatar
Albator V
ok merci encore
-----Message d'origine-----
re,

le plus simple est de faire une recherche du fichier
sur le disque par le

nom complet quand on le connait donc du style
If Dir("D:Program FilesMicrosoft
OfficeOfficeMSCAL.OCX") <> "" Then

MsgBox "trouvé"

si le répertoire est inconnu, il faut faire une
recherche sur l'ensemble des

répertoire.
Pour ce faire, sur le site de Frédéric Sigonneau, tu
trouveras des exemples

de différentes manière d'y parvenir.

A+


comment tester si un control existe en vba alors ?

-----Message d'origine-----
bonjour,


vÃf©rifier avant l'ouverture du fichier que
MSCAL.OCX



existe dans la
bibliothÃf¨que de controles avant l'ouverture du
fichier



contenant le controle
( sur mon PC il est dans Program FilesMicrosoft
OfficeOffice).

J'ai essayÃf© de simuler l'absence de ce controle
dans la



bibliothÃf¨que et de
tester si le workbook_Open prÃf©cÃf¨de l'affichage
du



message d'erreur . Ce n'est
pas le cas.
Si je devais connaitre la mÃfªme difficultÃf© que
toi, je



conditionnerais
l'ouverture de mon fichier contenant mon userform via
un



autre fichier qui
lui testerait si le controle existe.
S'il existe une autre solution, je suis preneur.


A+



Bonjour a tous,

j'ai cree un userform avec un control calendrier.
sur




certain pc de mon boulot, le control activex n'est
pas




installe, donc a louverture il y a un message
derreur.





est il possible, a louverture dun fichier, de
verifier




si
le calendrier est installe, sil l'est, la macro se
lance


normalement, sinon ouvrir un autre userform, virer
le




calendrier du userform...

merci davance

.




.







Avatar
Clément Marcotte
Bonjour,

Sub ajoutecalendrier()
On Error GoTo camarchepas
ActiveWorkbook.VBProject.References.AddFromGuid
"{8E27C92E-1264-101C-8A2F-040224009C02}", 7, 0
Exit Sub
camarchepas:
MsgBox "Le contrôle calendrier n'est pas disponible sur cette machine"
End Sub

"Albator V" a écrit dans le
message de news:2a2c01c50dc1$cf916a30$
Bonjour a tous,

j'ai cree un userform avec un control calendrier. sur
certain pc de mon boulot, le control activex n'est pas
installe, donc a louverture il y a un message derreur.

est il possible, a louverture dun fichier, de verifier si
le calendrier est installe, sil l'est, la macro se lance
normalement, sinon ouvrir un autre userform, virer le
calendrier du userform...

merci davance