Comment entrer une date avec VBA sous Excel

Grobibi34 Messages postés 83 Statut Membre -  
Grobibi34 Messages postés 83 Statut Membre -
Bonjour, tout le monde.

Je suis toujours en train de réaliser mon petit outil pour éditer un planning de façon automatique.

Pour entrer les date de début et les dates de fin du travaux j'utilisai jusqu'à maintenant le controle MonthView pour pouvoir récupérer ces dates avec la fonction :

Range("B3").Value = MonthView1.Value

Je vien de me rendre compte que ce contrôle ne marché pas sur tout les PC.

Je voulais donc savoir si il était possible d'enregistrer mon document Excel avec ce controle.

Sinon j'avais penser à un système simple de textbox, où l'utilisateur devra utiliser la syntaxe suivante:

jj/mm/aaaa

Le problème c'est que Excel est développer par des américains et lui il comprend mm/jj/aaaa ce qui est plutot contraignant.

Merci pour toutes vos remarques et réponses

Cordialement

Grobibi34
Configuration: Windows XP
Internet Explorer 6.0

3 réponses

  1. madjon6 Messages postés 270 Statut Membre 79
     
    Bonjour,

    Je souhaite rentrer également une date en vba dans un fichier Excel dans un msgbox

    Merci pour votre aide
    0
  2. LePierre Messages postés 249 Statut Membre 338
     
    bonjour
    j'utilise le contrôle supplémentaire "Contrôle Calendrier 10.0" que je place dans un UserForm nommé "Grille_Calendrier" avec un bouton "OK" et un "Quitter"

    Voici le code à placer dans le UserForm :
    Private Sub OK_Click()
    If Grille_Calendrier.Calendar1.Day = 0 Then
    Beep
    Exit Sub
    End If
    Me.Hide
    End Sub

    Private Sub Quitter_Click()
    Grille_Calendrier.Calendar1.Day = 0
    Me.Hide
    End Sub

    Private Sub UserForm_Activate()
    'Initialisation à la date du jour
    Grille_Calendrier.Calendar1.Day = Day(Date)
    Grille_Calendrier.Calendar1.Month = Month(Date)
    Grille_Calendrier.Calendar1.Year = Year(Date)
    Grille_Calendrier.Caption = "Choisissez une date et appuyez sur OK "
    End Sub

    Voici le code à placer dans un module:
    Sub test_calendrier()
    Grille_Calendrier.Show
    Jour = Grille_Calendrier.Calendar1.Day
    Mois = Grille_Calendrier.Calendar1.Month
    An = Grille_Calendrier.Calendar1.Year
    Unload Grille_Calendrier

    'MsgBox ("Vous avez choisi le : " & Jour & "/" & Mois & "/" & An)
    If Jour <> 0 Then
    Cells(11, 7).Value = CDate(Jour & "/" & Mois & "/" & An)
    Else
    Cells(11, 7).Value = ""
    End If
    Beep
    End Sub
    0
    1. Grobibi34 Messages postés 83 Statut Membre 30
       
      Oui merci Lepierre j'arrive à faire marché ta fonction, sur mon PC mais elle ne s'adapte pas non plus à toutes les machines comme ma fonction MonthView...

      Donc pour moi se n'est pas la meilleur solution, je ne vois que une façon de procéder, une textbox... mais j'ai toujours le meme problème excel inverse le jour et le mois.

      Merci encore pour ta participation Lepierre

      Cordialement

      Grobibi34
      0
      1. LePierre Messages postés 249 Statut Membre 338 > Grobibi34 Messages postés 83 Statut Membre
         
        j'avais récupéré je ne sais ou un fichier nommé MPDatePicker.xls (réalisé par Michel Pierron) qui utilise un calendrier réalisé de toute pièce dans un UserForm.
        Comment t'envoyer ce fichier ?
        0
      2. Grobibi34 Messages postés 83 Statut Membre 30 > LePierre Messages postés 249 Statut Membre
         
        Avec https://www.cjoint.com/ si ton document fais moin de 500ko sinon je te ferai parvenir mon adresse perso
        0
  3. Grobibi34 Messages postés 83 Statut Membre 30
     
    Wouhaou, alors là c'est du VBA de haut vol...

    Je suis pas sur d'avoir les compétences requises pour me servir de sa... je vais essayer de l'adapter à mon document.

    Merci LePierre pour tes réponses et pour le temps que tu me consacres.

    Cordialement

    grobibi34
    0