Calendrier marche sur 2007, pas sur 2003 ??

chikkybamby

XLDnaute Nouveau
Bonjour à tous,

Je suis en train de travailler sur un fichier de suivi. En gros c'est une base de données, dans laquelle sont recensées des ... personnes, qui font des ... choses :) (Vous comprendrez que je ne peux pas trop en dire, profession oblige ^^)

Un fichier simplifié est joint en ZiP. Le fait est que je l'ai fait sur 2007 et qu'il marche très bien, mais que sur 2003, le code VBA bug.

En gros, il y a 2 colonnes dans lesquelles sont renseignées les dates d'inscription dans le fichier et de passage en jury.
Sur 2007, lorsque l'on clique sur l'une de ces cases de dates, un calendrier apparait automatiquement pour choisir la bonne date. C'est très pratique et très efficace sur 2007. Mais sur excel 2003, rien à faire, il semble que le calendrier (calendar1) ne réfère à rien.

Je ne sais pas quoi faire !!

Voici ledit code :

"Option Explicit

Private Sub Calendar1_Click()
ActiveCell.Value = Calendar1.Value
Calendar1.Visible = False

End Sub


Private Sub Worksheet_SelectionChange(ByVal target As Range)
If target.Column = 4 Or target.Column = 5 And target.Row >= 1 And target.Row <= 226 Then
Calendar1.Visible = True
Calendar1.Top = ActiveCell.Top
Calendar1.Left = ActiveCell.Left + ActiveCell.Width
Else
Calendar1.Visible = False
End If

End Sub"

J'ai en fait l'impression que le userform calendar n'existe pas dans mon excel 2003... ça semble étrange, mais là où j'ai trouvé "controlcalendar 12" sur excel 2007, je n'ai pas trouvé de "controlcalendar" sur mon excel 2003 !

Merci d'avance pour votre aide !

Anatole
 

Pièces jointes

  • Suivi.zip
    22.6 KB · Affichages: 80
  • Suivi.zip
    22.6 KB · Affichages: 79
  • Suivi.zip
    22.6 KB · Affichages: 78

ChTi160

XLDnaute Barbatruc
Re : Calendrier marche sur 2007, pas sur 2003 ??

Bonjour Cumulare
Bonjour Pierrejean(content de pouvoir te saluer)
Bonjour le Fil,Le Forum
En ouvrant le fichier dans xl2010 , j'ai moi aussi eu un problème avec les ActiveCell.Top et ActiveCell.Left
j'ai mis ceci dans la procédure(Remplacement de ActiveCell par Target)

VB:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
UserForm1.Top =Target.Top + 100
UserForm1.Left =Target.Offset(0, 1).Left + 25
UserForm1.Show
End Sub
Puis dans Classe1
VB:
Private Sub groupebouton_Click()
With Worksheets("BDD")
ActiveCell = CDate(groupebouton.Caption & "/" & UserForm1.ComboBox2 & "/" & UserForm1.ComboBox1)
End With
Unload UserForm1
End Sub

Bonne journée
Amicalement
Jean Marie
 
Dernière édition:

Cumulare

XLDnaute Nouveau
Re : Calendrier marche sur 2007, pas sur 2003 ??

Bonjour Pierre-Jean
L'ancien code est le suivant:

1. Initialisation de la fenêtre
Private Sub UserForm_Initialize()

If FlagIniExe = False Then
If Hour(Now) >= 4 And Hour(Now) <= 11 Then
DateDeb = Now() - 1
I = 3
UF_DatePoste.Opt_P3.Value = 1
ElseIf Hour(Now) >= 12 And Hour(Now) <= 20 Then
DateDeb = Now
I = 1
UF_DatePoste.Opt_P1.Value = 1
Else
DateDeb = Now
I = 2
UF_DatePoste.Opt_P2.Value = 1
End If

UF_DatePoste.Calendar1.Value = Left(DateDeb, 10)
End If
End Sub

2. Ecriture sur un fichier temporaire de données récupérées de ma BD

Private Sub B_DatePoste_Click()
DéclarVar
Application.ScreenUpdating = False
Application.GoTo "z_clear_Tmp"
Set ZoneEnCours_1 = Selection
ZoneEnCours_1.Clear

Application.GoTo "Z_ClearTmp_Q"
Set ZoneEnCours_1 = Selection
ZoneEnCours_1.Clear

DateRech = Calendar1.Value
If Opt_P1 = True Then PosteRechTxt = "P1"
If Opt_P2 = True Then PosteRechTxt = "P2"
If Opt_P3 = True Then PosteRechTxt = "P3"

Application.GoTo "CritDatePosteFours"
ActiveCell.Offset(1, 0) = DateRech
ActiveCell.Offset(1, 1) = PosteRechTxt

FiltreDatePosteTmp "CritDatePosteFours"

Application.GoTo "CritDatePosteQ"
ActiveCell.Offset(1, 0) = ">" & DateRech - 8
ActiveCell.Offset(1, 1) = "<=" & DateRech

FiltreDatePosteTmpQ "CritDatePosteQ"


FiltreDatePosteTmp30 "CritDatePosteFours"


UF_DatePoste.Hide
F_Cal.Calculate
F_F34x0.Calculate
F_Prod.Calculate
F_F34x0.Select

End Sub


Cela fait partie d'une série de macro dont je ne suis pas le géniteur

Tu penses que je peux utiliser la méthode calendrier d'Excel 2010 pour faire la même chose?
Merci de ton avis
 

Cumulare

XLDnaute Nouveau
Re : Calendrier marche sur 2007, pas sur 2003 ??

Bonjour Jean Marie
Merci de ta réponse
En fait, le message d'erreur que me renvoie VBA est :
Erreur de compilation
membre de méthode ou de donnée introuvable

Il me semblait que c'était plutôt un problème de calendrier?
Je comprends le code dans les grandes lignes mais je ne suis pas comme toi et Pierre Jean des pros de la programmation VBA
Merci à tous les deux
 

Roland_M

XLDnaute Barbatruc
Re : Calendrier marche sur 2007, pas sur 2003 ??

Bonjour à tous,

pour chikkibamby,
ci-joint ton classeur "suivi" dans lequel j'ai mis mon calendrier autonome qui fonctionnera partout sans problème
à essayer et dire quoi !?

EDIT:

horreur, malheur, je ne suis pas réveillé ce matin !
je viens seulement de m'apercevoir que pour chikkibamby son post#1 date de 2009 :confused::eek::mad:
 

Pièces jointes

  • Copie de Suivi.xls
    153.5 KB · Affichages: 34
  • Copie de Suivi.xls
    153.5 KB · Affichages: 43
  • Copie de Suivi.xls
    153.5 KB · Affichages: 44
Dernière édition:

Cumulare

XLDnaute Nouveau
Re : Calendrier marche sur 2007, pas sur 2003 ??

Bonjour Roland
ta macro boghe sur l'instruction
Dim CaseJR As Control,
du programme de décalration des variables
LE motif est Projet ou bibliothèque introuvable
Même si cela date de 2009 , cela m'intéresse pour mon propre code
 

Cumulare

XLDnaute Nouveau
Re : Calendrier marche sur 2007, pas sur 2003 ??

Merci Chti160

Cela m'a aidé par ailleurs d'utiliser l'instruction target plutôt que activcell
Par contre, j'ai toujours le mêm b avec mon calendrier.
Je vais coder celui de Pierre Jean pour voir si je peux l'insérer dans ma macro.
a l'heure actuelle, j'ai réglémon problème en passant la date par une cellule: c'est moins PRO mais cela marche!
Autre question est-ce que qqun sait que quel complement, bibliothéque il faut activer sur EXCEL 2010 pour faire fonctionner l'instruction Left("chaine de caractère"; nb)?
Merci d'avance
 

Roland_M

XLDnaute Barbatruc
Re : Calendrier marche sur 2007, pas sur 2003 ??

Bonjour,

Bonjour Roland
ta macro boghe sur l'instruction
Dim CaseJR As Control,
du programme de décalration des variables
LE motif est Projet ou bibliothèque introuvable
Même si cela date de 2009 , cela m'intéresse pour mon propre code


attention avant toute chose il faut bien vérifier d'où vient le problème !!!

mon calendrier est toujours d'actualité.
2009 c'est la date du post# d'un forumeur.

ensuite il ne bug pas, il n'y a aucun souci à ce niveau.
c'est certainement une référence manquante du classeur même de l'auteur.

comme tu dis:
"LE motif est Projet ou bibliothèque introuvable"

es-tu allé voir dans l'éditeur vb et regarder dans outils références...
tu y verras certainement la référence MANQUANT: Microsoft Calendar Control 9.0
ce calendrier est présent sur la feuille mais invisible ! je l'ai vu depuis le code feuille !
il n'est pas d'origine de mon code calendrier car je ne me sert pas de référence !
en tout cas si ce n'est pas cette référence tu dois avoir un autre problème dans ce genre !

EDIT:
refais un essai avec ce même classeur de chikkibamby mais nettoyé.
et bien entendu toujours avec mon calendrier.
 

Pièces jointes

  • Copie de Suivi(2).xls
    150 KB · Affichages: 30
Dernière édition:

Cumulare

XLDnaute Nouveau
Re : Calendrier marche sur 2007, pas sur 2003 ??

Bonjour Roland
Merci de ton message privé qui me remet sur mon pb de calendrier
Oui, en effet c'était bien la bibliothèsque introuvable car manquante!J'ai décoché et tout est rentré dans l'ordre!
Oublier mon problème d'instruction left (x,y) car j'avais un pb de déclaration de variable; rien de plus!
Pour régler temporairement mon pb, j'avais pris le calendrier de Microsoft avec le contrôle Date& Time picker!
Mais, je vais greffer ton calendrier dans mon code pour y ajouter d'autres boutons et avoir un contrôle plus personnalisé!
Merci à tous pour votre aide!
 

Discussions similaires

Statistiques des forums

Discussions
312 864
Messages
2 093 014
Membres
105 607
dernier inscrit
Grospsdresbois