IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Calendrier sous Excel 2007 [XL-2007]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé Avatar de babybell
    Homme Profil pro
    Retraité Bancaire
    Inscrit en
    Septembre 2008
    Messages
    495
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : Retraité Bancaire
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Septembre 2008
    Messages : 495
    Par défaut Calendrier sous Excel 2007
    Amis du forum bonjour
    Sous Excel 2003, j'avais une procédure qui m'affichait un calendrier suite à la sélection d'une cellule .
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    Option Explicit
    Dim Usf As Object
    Sub LancementProcedure()
     
        Dim X As Object
        Dim NomMonthView As String
     
        NomMonthView = "MonthView1"
        'Lance la procédure de création du userform et du contrôle MonthView
        Set X = UserForm_Et_MonthView_Dynamique(NomMonthView)
     
        'Affichage userform
        X.Show
     
        'Suppression du userform après la fermeture
        ThisWorkbook.VBProject.VBComponents.Remove Usf
        Set Usf = Nothing
    End Sub
     
    Function UserForm_Et_MonthView_Dynamique(NomObjet As String) As Object
     
        Dim Obj As Object
        Dim j As Integer
        'Création UserForm
        Set Usf = ThisWorkbook.VBProject.VBComponents.Add(3)
        With Usf
            .Properties("Caption") = "               Calendrier"
            .Properties("Width") = 135
            .Properties("Height") = 140
        End With
     
        'Création du contrôle MonthView
        Set Obj = Usf.Designer.Controls.Add("MSComCtl2.MonthView.2")
     
        With Obj
            .Left = 0: .top = 0: .Width = 150: .Height = 140
            .Name = NomObjet
            .ForeColor = &HC000C0
            .TitleBackColor = &HFFFFFF
        End With
     
     
        'Ajout de la procédure évènementielle DateClick du contrôle MonthView
        With Usf.CodeModule
     
            j = .CountOfLines
            .insertlines j + 1, "Sub " & NomObjet & "_DateClick(ByVal DateClicked As Date)"
            'Insère la date dans la cellule active
            .insertlines j + 2, "   ActiveCell = DateClicked"
            'Option pour refermer l'userform après l'insertion de la date.
            .insertlines j + 3, "   Unload Me"
            .insertlines j + 4, "End Sub"
        End With
     
        VBA.UserForms.Add (Usf.Name)
        Set UserForm_Et_MonthView_Dynamique = UserForms(UserForms.Count - 1)
     
    End Function
    Sous Excel, cela ne fonctionne pas. Quelqu'un aurait-il une idée à me proposer pour que cela fonctionne ? Je l'en remercie d'avance.

  2. #2
    Expert confirmé
    Homme Profil pro
    aucune
    Inscrit en
    Septembre 2011
    Messages
    8 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Septembre 2011
    Messages : 8 208
    Par défaut
    Bonjour,

    Est-ce que tu peux créer manuellement un contrôle MonthView sur un userform ?

  3. #3
    Invité
    Invité(e)
    Par défaut Bonjour, regarde ça
    au début des années 2000, dans le cadre de la loi antitrust, Microsoft c'est vue condamnée pour concurrences déloyale, il fournissait gratuitement des contrôles dit de niveau 2.

    depuis des application 2003 ne fonctionne plus.
    Fichiers attachés Fichiers attachés

  4. #4
    Expert confirmé
    Homme Profil pro
    aucune
    Inscrit en
    Septembre 2011
    Messages
    8 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Septembre 2011
    Messages : 8 208
    Par défaut
    Bonjour,

    Le contrôle MonthView figure toujours dans le fichier mscomct2.ocx.

  5. #5
    Invité
    Invité(e)
    Par défaut
    Ok mais dans le doute, j'ais mis cette solution!

    dommage,babybell ,que tu pas mis ta solution histoire de!
    Dernière modification par AlainTech ; 01/01/2014 à 17h54. Motif: Fusion de 2 messages

  6. #6
    Membre éclairé Avatar de babybell
    Homme Profil pro
    Retraité Bancaire
    Inscrit en
    Septembre 2008
    Messages
    495
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 70
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : Retraité Bancaire
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Septembre 2008
    Messages : 495
    Par défaut
    Bonsoir à tous

    je suis en train de travailler dessus, car la solution proposée ne m'allait pas entièrement, un UserForm qui en appelle un autre, je voudrais l'éviter. j'essaye de faire comme ma solution précédente, à savoir le userform du bon mois qui apparait lorsqu'on sélectionne une cellule.

  7. #7
    Membre averti
    Inscrit en
    Mars 2008
    Messages
    38
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 38
    Par défaut
    salut babybel,

    je pense qu'il faut juste installer le MSCOMCT2.OCX et le meme code devrait fonctionné! j'avais eu le meme soucis il y a quelques mois.
    voici un lien avec explication d'installation.
    http://excel.developpez.com/telechar...0-MSCOMCT2-OCX

    j'espère que cela va t'aider!
    bonne soirée et bonne année

  8. #8
    Invité
    Invité(e)
    Par défaut
    Bonjour, ce n'était que pour l'exemple car le calendrier fonctionne indépendamment d'un UserForm:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    MsgBox Calendard.Chargement
    mais tu la bien adapté.

    bien sur je ne revendique pas la propriété intellectuelle de ce code et pourtant c'est le cas, un petit merci

    Citation Envoyé par babybell Voir le message
    Bonsoir à tous

    je suis en train de travailler dessus, car la solution proposée ne m'allait pas entièrement, un UserForm qui en appelle un autre, je voudrais l'éviter. j'essaye de faire comme ma solution précédente, à savoir le userform du bon mois qui apparait lorsqu'on sélectionne une cellule.
    Dernière modification par Invité ; 05/01/2014 à 12h47.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Lenteurs de macros VBA sous Excel 2007 vs Excel 2003
    Par nicotab dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 06/11/2007, 18h47
  2. FileSearch sous Excel 2007
    Par laurent.mario dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 22/10/2007, 19h01
  3. Enregistrer des fichier en DBF sous Excel 2007
    Par filigane dans le forum Excel
    Réponses: 1
    Dernier message: 20/09/2007, 10h56
  4. Une fonction sous Excel 2007 ne fonctionne pas sous Excel 2003
    Par Dryss51 dans le forum Macros et VBA Excel
    Réponses: 14
    Dernier message: 27/07/2007, 08h09
  5. [VBA] VBA sous Excel 2007
    Par tangjuncn dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 28/02/2007, 16h06

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo