Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Access
Access Forum d'entraide sur Microsoft Access. Avant de poster -> La F.A.Q Access
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 23/05/2011, 19h14   #1
Candidat au titre de Membre du Club
 
Inscription : mai 2003
Messages : 25
Détails du profil
Informations forums :
Inscription : mai 2003
Messages : 25
Points : 12
Points : 12
Par défaut Gestion planning V1 : ne s ouvre pas sans enregistrement

Bonjour a tous,

j ai decide de me lancer dans la realisation du planning de Jean Ballat (un grand merci d ailleurs) et tout fonctionne parfaitement quand j ai des donnees correspondant a la date du mois filte.

Si je vide la table planning, apparait le message "run time error 3021 : no current record".
Code :
strNomSalleEnCours = .Fields(0)
.

Si je vide la table planning dans la base exemple, je n ai pas le probleme, mais je ne vois aucun difference dans le code.

Mon recordset s affiche tres bien avec debug print. Je suis un peu perdu...

Code :
1
2
3
4
5
6
7
8
9
10
Public Const cstPlanning As String = "SELECT T_ActivitesModif.Activite, T_planning.Dateplanning," _
                    & "IIf(IsNull([Intitulemodif]),Null,[Intitulemodif] & "" - Niveau : "") AS Modif, " _
                    & "T_Produits.Nomproduit,T_modifs.codeproduit,T_modifs.codeactivite,T_modifs.coderesponsable," _
                    & "T_modifs.DatestageFin,T_activitesmodif.IDactivite, T_planning.Quantieme," _
                    & "T_respmodif.Responsable FROM (T_respmodif INNER JOIN (T_Produits " _
                    & "INNER JOIN (T_ActivitesModif INNER JOIN T_modifs ON " _
                    & "T_ActivitesModif.IDactivite = T_modifs.Codeactivite)" _
                    & "ON T_Produits.CodeProduit = T_modifs.Codeproduit) " _
                    & "ON T_respmodif.IDrespmodif = T_modifs.Coderesponsable) " _
                    & "INNER JOIN T_planning ON T_modifs.Codemodif = T_planning.CodeStage"
Merci pour votre aide
ericain est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/05/2011, 00h47   #2
Candidat au titre de Membre du Club
 
Inscription : mai 2003
Messages : 25
Détails du profil
Informations forums :
Inscription : mai 2003
Messages : 25
Points : 12
Points : 12
j oubliais de preciser, il y a bien un controle .EOF (en vert) mais il intervient apres la zone d erreur (en rouge). Si j insers un .BOF auparavant, la base marche a vide mais pas avec des donnees : le message d erreur intervient plus loin dans le code (en violet)... Pour ca je commence a regarder du cote de ma requete SQL.

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
Set rsPlanning = CurrentDb.OpenRecordset(cstPlanning & strSqlWherePlanning)
       ' Ouverture du jeu d'enregistrements
       With rsPlanning
            ' Récupère le nom de la salle réservée dans le premier enregistrement rsPlanning
            
           strNomSalleEnCours = .Fields(0)            ' Début de la boucle de traitement des salles
            For intCompteurLignes = 0 To 9
                ' Début de la boucle de traitement des pavés du planning
               For intCompteurColonnes = 1 To 31
                    ' Incrémentation de la date -> Passe à la colonne suivante de la zone planning
                    varDateTraitee = DateAdd("d", intCompteurColonnes - 1, varDateDebutPlanning)
                    ' Test de contrôle de lecture de la table des données à afficher dans le planning
                    ' Si le test est vrai, il n'y a plus de réservation à noter dans la plage de date sélectionnée
                    ' On saute donc directement au dessin d'un carré Blanc ou Jaune (si varDateTraitee = date d'un weekend)
                    MsgBox (strNomSalleEnCours & " " & boolEOFPlanning)
                    If boolEOFPlanning = True Then
                        ' Branchement à l'étiquette "Reprise"
                        ' Dessine que les plages blanches ou jaunes
                        GoTo Reprise
                    Else
If .Fields(0) <> Forms("F_Planning").Controls("lblNomSalle" & intCompteurLignes + 1).Caption Then
                            GoTo Reprise
                        Else
ericain est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 13h59.


 
 
 
 
Partenaires

Hébergement Web