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

VBA Access Discussion :

Boucle For/Next et While/Wend qui plante Access [AC-2010]


Sujet :

VBA Access

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Novembre 2010
    Messages
    154
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2010
    Messages : 154
    Points : 193
    Points
    193
    Par défaut Boucle For/Next et While/Wend qui plante Access
    Bonjour tous,

    J'ai un Form dans lequel j'ai 12 TxtBox (nommés M0,M1 .....M11) correspondant aux 12 mois de l'année.
    Ils sont positionnés horizontalement en bas de mon Form.
    La TextBox la plus à gauche (M0) doit correpondre au mois actuel. Et je souhaite que tous les TxtBox se mettent à jour sur OpenForm en fonction du mois actuel.
    J'ai donc écris ceci :
    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
    Private Sub Form_Open(Cancel As Integer)
     
        Dim MsEncour As Long
        Dim AnEncour As Long
        Dim i As Integer
        Dim m As Integer
        Dim a As Integer
        Dim VarAn1 As Integer
        Dim VarAn2 As Integer
     
        MsEncour = Me.T         'Month(Now())
        AnEncour = Year(Now())
        VarAn1 = 12 - MsEncour             ' Nb de mois restant année en cour
        VarAn2 = 12 - (MsEncour - 1)              ' Nb de mois à venir année N+1
     
            For i = 0 To VarAn1
                Me.Controls("M" & i).Value = StrConv(MonthName(MsEncour + i), 3)
                    While m = 0
                        For a = VarAn2 To 11
                            m = m + 1
                            Me.Controls("M" & a).Value = StrConv(MonthName(m), 3)
                        Next a
                    Wend
            Next i
     
    End Sub
    Il semblerait que ça fonctionne sauf que .... je ne peux pas ouvrir mon objet Formulaire normalement : Access plante carrément.
    Je peux apparement l'ouvrir d'abord en mode création et rebasculer en mode affichage. Mais .... ça reste périlleux.
    Qu'ai-je donc codé de compliqué sachant qu'aucune erreur n'est signalée ?

    Merci d'avance.

  2. #2
    Expert éminent sénior

    Avatar de Tofalu
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Octobre 2004
    Messages
    9 501
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Octobre 2004
    Messages : 9 501
    Points : 32 311
    Points
    32 311
    Par défaut
    Bonjour

    Plus simplement :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Private Sub Commande13_Click()
    Dim i As Integer
    For i = 0 To 11
        Me.Controls("M" & i) = Format(DateAdd("m", i, Now), "mmm")
    Next i
    End Sub

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Novembre 2010
    Messages
    154
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2010
    Messages : 154
    Points : 193
    Points
    193
    Par défaut
    Bonjour Tofalu,

    Ben oui !!!

    Il ne m'est pas venu du tout à l'idée d'utiliser DateAdd().

    Merci pour cette réponse rapide.

    Bonne journée.

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

Discussions similaires

  1. boucle "for" dans "do while"
    Par oranoutan dans le forum C#
    Réponses: 13
    Dernier message: 05/06/2007, 21h13
  2. boucle for next ? peut être mais comment
    Par caro2552 dans le forum VBA Access
    Réponses: 11
    Dernier message: 07/02/2007, 20h26
  3. [VB.net] Boucle for next avec un tableau
    Par grand_prophete dans le forum Windows Forms
    Réponses: 4
    Dernier message: 31/05/2006, 11h08
  4. [VB6] Problème contrôle Timer et boucle For-Next ...
    Par Stéphane BEHMENBURG dans le forum VB 6 et antérieur
    Réponses: 6
    Dernier message: 01/12/2005, 17h36
  5. Réponses: 3
    Dernier message: 03/11/2005, 19h22

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