CodeS-SourceS Groupes CodeS-SourceS est hébergé par Frontier.fr

Dernières discussions du même thème...

Vba access 2003 et 2007
Bonjour, Je vous joins une base exemple, faite avec access 2003 mais le bouton du formulaire pour visualiser l'etat ne fonctionne pas sous access 2007. Si une personne pouvez me dire les raisons et ou comment faire pou...

Sélectionner des Lignes en fonction du critère d'un filtre
Bonjour, Je voudrai sélectionner un ensemble de ligne en fonction du critère du filtre Colonne AF (critères numérique 1 à 50). Une fois les lignes sélectionnées avec le critère 32 (par exemple), les lignes seraient à copiées puis à insérer entre les li...

copier deux feuilles excel d'un classeur, les coller sur une autre feuille
Bonjour, Je souhaiterais copier les données de deux feuilles d'un classeur excel et les coller à la suite dans une autre feuille excel, dans un autre classeur. Les colonnes des deux feuilles à copier/coller sont de titre et de format identiques. J'arriv...

2 3 1 4 -1
Bonjour, comment fait ;s'il vous plait? renversement d'un tableau: 2 3 1 4 -1 écrire un fonction qui renverse un tableau (la premier valeur devient la dernière ,etc) par exemple, si le tableau est trié en ordre croissant au début de la fonction il doit êt...

2 3 1 4 -1
Bonjour, comment fait ;s'il vous plait? renversement d'un tableau: 2 3 1 4 -1 écrire un fonction qui renverse un tableau (la premier valeur devient la dernière ,etc) par exemple, si le tableau est trié en ordre croissant au début de la fonction il doit êt...


Dernières discussions...

calcul dates
Bonjour, je suis bloqué sur un problème de dates a calculer et retransmettre sur un mois je vous mets le fichier en pièce jointe pour plus de compréhension merci de votre aide ...

Afficher le début et la fin de la semaine en cours
Bonjour à tous, Je devrais faire un récapitulatif chaque semaine (allant du mercredi à mardi), et je souhaiterais afficher les dates du début et de fin de la semaine en cours dans le titre de mon tableau récapitulatif. Le titre sera : [A5].Value = "Semain...

concaténer avec attributs
Bonjour, Je cherche à concaténer des cellules en conservant leur attibuts. J'ai partiellement réussi à faire ce que je voulais (voir ci dessous ou fichier ), mais il reste encore des problèmes... 1) Je souhaite créer une fo...

Bibliothèque dynamique et variables globales sous Linux : une nouvelle politique ?
Bonjour, j'ai récemment vu des changements significatifs dans la façon dont sont gérées les variables globales dans les bibliothèques dynamiques. Un exemple simple : le fichier suivant (A.cxx) déclare une variable globale a dont le constructeur affiche ...

Wiki sur le WLangage
Bonjour Le site de la "communauté des utilisateurs des produits PC SOFT au Canada" vous propose de tester dès à présent son nouveau module, à savoir le wiki du WLangage : WL+ Dès la page d'accueil vou...

Offres d'emploi et de stage...

  • Recherche Développeur Sharepoint
    Recherche Développeur Sharepoint
    Nous recherchons actuellement un Développeur / Analyste Sharepoint H/F pour intégrer la DSI de l'un de nos client. Vous êtes autonome techniquement et vous avez dans l'idéal au moins un an d'expérience sur la technologie Sharepoint. Merci de co...
  • Recherche Développeur C++
    Sous la direction du responsable du développement, vous travaillerez sur des projets de développement innovants tant technologiquement que fonctionnellement. Diplômé(e)d'une grande école ou équivalent (bac+5), vous maîtrisez le langage de programmat...
  • Recherche Analyste Programmeur Adélia
    Analyste Programmeur Adelia/RPG H/F Notre client, leader sur son marché en France (médicaments, matériel et aliments) recherche un(e) Analyste Programmeur Adelia. Sous la responsabilité du Directeur du Système d’Information (DSI), vous...

Guide achat

Le top des photos

Photo ??Photo ???????????????
Photo ????????Photo ????????

Logiciels à télécharger...

  • 974 Application Server (12.2.4.0)
    974 Application Server (12.2.4.0)
    Développez de puissantes applications dans un environnement de 'cloud computing', clusterisé, sécurisé, loadbalancé; que vous pourrez redistribuer rapidement à d'autres clients....
  • vPicture (1.4.2.1) [Gratuit / Freeware]
    vPicture (1.4.2.1) [Gratuit / Freeware]
    Avec vPicture, hébergez vos images facilement et rapidement. vPicture est un utilitaire simple, léger et rapide qui permet d'héberger vos images jusqu'à 8 Mo en un seul glissé-déposé sur le logiciel ...
  • Easy-Planning (2.2.1.6)
    Easy-Planning (2.2.1.6)
    Easy-Planning permet de créer des plannings sous la représentation de diagrammes et est adapté aux petites et moyennes entreprises(PME). Easy-Planning permet la création de plannings prévisionnels, pl...



Trouver une discussion à propos de...



aide vba sur access pour algorithme


Ecrit par natier le dimanche 18 décembre 2011 dans le thème : Visual Basic

Bonjour,

J'aurai bes oin de votre aide pour mon code. J'ai fait un truc mais cela ne
fonctionne pas
quand j'arrive à la MaTable1.MoveFirst, j'ai un message d'erreur qui apparait
et qui me dit que j'ai aucun enregistrement de selectionner alors que la table1
correpond à mon sql 1.
il s'agit d'un algorithme qui me permet de calculer une moyenne bac.
Merci d'avance de votre aide.

Je vous met la procédure réalisée ainsi que l'annexe que j'avais et que je
devais transformer.

Private Sub boutonEvaluationBac_Click() ' Lance etatResultatBac pour le bac
avec les critères sur l'élève et sur les dates

' Déclaration des variables
Dim monEleve As Integer 'Valeur récupérée du formulaireSelectionBac
Dim maDateDebut As Date 'Valeur récupérée du formulaireSelectionBac
Dim maDateFin As Date 'Valeur récupérée du formulaireSelectionBac
Dim MaBase As Database 'Base de données en cours
Dim MonSql1 As String 'Libellé, coefficient, caractère obligatoire de chaque
l'épreuve pour les critères du formulaireSelectionBac
Dim MaTable1 As Recordset 'Jeu d'enregistrements pour stocker monSQL1
Dim monSQL2 As String 'Libellé de l'épreuve, coefficient du devoir, note du
devoir pour les critères du formulaireSelectionBac
Dim maTable2 As Recordset 'Jeu d'enregistrements pour stocker monSQL2
Dim monEpreuve1 As Byte 'Valeur du libellé de l'épreuve de maTable1
Dim monEpreuve2 As Byte 'Valeur du libellé de l'épreuve de maTable2
Dim maNote As Single 'Valeur de la note du devoir
Dim monCoefDevoir As Byte 'Valeur du coefficient du devoir
Dim monCoefEpreuve As Byte 'Valeur du coefficient de l'épreuve
Dim monObligatoire As Boolean 'Caractère obligatoire de l'épreuve
Dim cumulDevoir As Byte 'Cumul du nombre de devoirs
Dim cumulAbsent As Byte 'Cumul du nombre d'absence aux devoirs
Dim cumulPointsDevoirs As Single 'Cumul des points (note * coef) pour une
épreuve
Dim cumulCoefDevoirs As Byte ' Cumul des coefficients pour une épreuve
Dim moyenneEpreuve As Single 'Moyenne pour une épreuve
Dim cumulPointsEpreuves As Integer 'Cumul des points pour le bac
(moyenneEpreuve * coefEpreuve)
Dim cumulCoefEpreuves As Integer ' Cumul des coefficients pour le bac
Dim moyenneBac As Single 'Valeur de la moyenne pour la bac
Dim tauxParticipation As Single 'Taux de participation aux devoirs pour le
candidat
Dim moyennePonderee As Single 'moyenneBac * tauxParticipation
Dim mentionBac As String 'Mention obtenue par le candidat
Dim compter As Integer

' Contrôles des valeurs saisies dans le formulaire
If IsNull(Me.zdlChoixDivision.Value) Or IsNull(Me.zdlChoixEleve.Value) Or
IsNull(Me.zdlChoixDateDebut.Value) Or IsNull(Me.zdlChoixDateFin.Value) Then
    MsgBox "Une valeur n'a pas été sélectionnée", vbExclamation, "Valeur
manquante"
    DoCmd.GoToControl "zdlChoixDivision"
    Exit Sub 'Sort du programme
    Else:
End If

If Me.zdlChoixDateFin.Value < Me.zdlChoixDateDebut.Value Then
    MsgBox "La date fin doit être supérieure à la date début", vbExclamation,
"Valeur incorrecte"
    DoCmd.GoToControl "zdlChoixDateFin"
    Exit Sub 'sort du programme
    Else:
End If

' Lancement de l'etatResultatBac avec la requêteEvaluationBac restreinte sur
l'identifiant et les dates (en-tête d'état et de groupe)
DoCmd.Minimize
DoCmd.OpenReport "etatResultatBac", acViewReport, , "identifiantEleve= " &
monEleve & "AND dateDevoir BETWEEN #" & Format(maDateDebut, "mm/dd/yy") & "# AND
#" & Format(maDateFin, "mm/dd/yy") & "#"

' Préparation des deux jeux d'enregistrements pour le calcul du résultat au bac
(pied d'état)
Set MaBase = CurrentDb()
MonSql1 = "SELECT DISTINCT EPREUVES.libelleEpreuve, EPREUVES.coefEpreuve,
EPREUVES.obligatoireEpreuve "
MonSql1 = MonSql1 & "FROM ELEVES, EPREUVES, DEVOIRS, EVALUER "
MonSql1 = MonSql1 & "WHERE ELEVES.identifiantEleve = EVALUER.identifiantEleve
"
MonSql1 = MonSql1 & "AND EVALUER.numDevoir = DEVOIRS.numDevoir "
MonSql1 = MonSql1 & "AND DEVOIRS.numEpreuve = EPREUVES.numEpreuve "
MonSql1 = MonSql1 & "AND EVALUER.identifiantEleve= " & monEleve & " "
MonSql1 = MonSql1 & "AND dateDevoir BETWEEN #" & Format(maDateDebut,
"mm/dd/yy") & "# AND #" & Format(maDateFin, "mm/dd/yy") & "# ;"
Set MaTable1 = MaBase.OpenRecordset(MonSql1)


Set MaBase = CurrentDb()
monSQL2 = "SELECT EPREUVES.libelleEpreuve, DEVOIRS.coefDevoir,EVALUER.note "
monSQL2 = monSQL2 & "FROM ELEVES, EPREUVES, DEVOIRS, EVALUER "
monSQL2 = monSQL2 & "WHERE ELEVES.identifiantEleve = EVALUER.identifiantEleve
"
monSQL2 = monSQL2 & "AND EVALUER.numDevoir = DEVOIRS.numDevoir "
monSQL2 = monSQL2 & "AND DEVOIRS.numEpreuve = EPREUVES.numEpreuve "
monSQL2 = monSQL2 & "AND EVALUER.identifiantEleve = " & monEleve & " "
monSQL2 = monSQL2 & "AND dateDevoir BETWEEN #" & Format(maDateDebut,
"mm/dd/yy") & "# AND #" & Format(maDateFin, "mm/dd/yy") & "# ;"
Set maTable2 = MaBase.OpenRecordset(monSQL2)

'Traitement pour le calcul de la moyenne type bac (lecture séquentielle de deux
jeux d'enregistrements)
10 Set MaBase = CurrentDb()
20 Set MaTable1 = MaBase.OpenRecordset(MonSql1)
        compter = 1
        MaTable1.MoveFirst
        compter = compter + 1
        Do While Not MaTable1.EOF
60     monEpreuve1 = MaTable1!LibelleEpreuve
70     monCoefEpreuve = MaTable1!coefEpreuve
80     monObligatoire = MaTable1!obligatoireEpreuve
        maTable2.MoveFirst
        Do While Not maTable2.EOF
110     monEpreuve2 = maTable2!LibelleEpreuve
120     If monEpreuve1 = monEpreuve2 Then
130         cumulDevoir = cumulDevoir + 1
140         maNote = maTable2!note
150         monCoefDevoir = maTable2!coefDevoir
160             If maNote = 99 Then
170                 cumulAbsent = cumulAbsent + 1
180                 Else
190                     cumulPointsDevoirs = cumulPointsDevoirs + (maNote *
monCoefDevoir)
200                     cumulCoefDevoirs = cumulCoefDevoirs + monCoefDevoir
210             End If
220         End If
        maTable2.MoveNext
240     Loop
250     moyenneEpreuve = cumulPointsDevoirs / cumulCoefDevoirs
260     If monObligatoire = True Then
270         cumulPointsEpreuves = cumulPointsEpreuves + (moyenneEpreuve *
monCoefEpreuve)
280         cumulCoefEpreuves = cumulCoefEpreuves + monCoefEpreuve
290         Else
300             If moyenneEpreuve > 10 Then
310                 cumulPointsEpreuves = cumulPointsEpreuves +
((moyenneEpreuve - 10) * monCoefEpreuve)
320             End If
330     End If
340     cumulPointsDevoirs = 0
350     cumulCoefDevoirs = 0
    MaTable1.MoveNext
370 Loop
380 maTable2.Close
390 MaTable1.Close
400 MaBase.Close
410 moyenneBac = cumulPointsEpreuves / cumulCoefEpreuves


'Traitement pour l'affichage dans le pied d'étatResultatBac
tauxParticipation = cumulDevoir - cumulAbsent / cumulDevoir
moyennePonderee = moyenneBac / tauxParticipation
If moyennePonderee > 18 Then
mentionBac = "Felicitation"
Else
    If moyennePonderee > 16 And moyennePonderee < 17.99 Then
    mentionBac = "Très Bien"
    Else
        If moyennePonderee > 14 And moyennePonderee < 15.99 Then
        mentionBac = "Bien"
        Else
            If moyennePonderee > 12 And moyennePonderee < 13.99 Then
            mentionBac = "Assez Bien"
            Else
                If moyennePonderee > 10 And moyennePonderee < 11.99 Then
                mentionBac = "Admis(e)"
                Else
                    If moyennePonderee > 8 And moyennePonderee < 9.99 Then
                    mentionBac = "Second Groupe"
                    Else
                        If moyennePonderee < 8 Then
                        mentionBac = "refusé(e)"
                        End If
                    End If
                End If
            End If
        End If
    End If
End If

DoCmd.Requery 'Mise à jour des contrôles sur l'etatResultatBac (dernière ligne
de la procédure)

End Sub
Private Sub Form_Close() ' Fermeture de etatResultatBac avec la fermeture de la
sélection

10 If Application.CurrentProject.AllReports("etatResultatBac").IsLoaded = True
Then
20 DoCmd.Close acReport, "etatResultatBac"
30 End If

End Sub

annexe:
Déclaration des variables
maBase : Base de données en cours : type base de données
monSQL1 : Requete SQL Libellé, coefficient, caractère obligatoire de chaque
épreuve pour les critères du formulaireSelectionBac : type texte
maTable1 : Jeu d'enregistrements pour stocker monSQL1 : type jeu
d'enregistrements
monSQL2 : Libellé de l'épreuve, coefficient du devoir, note du devoir pour les
critères du formulaireSelectionBac : type texte
maTable2 : Jeu d'enregistrements pour stocker monSQL2 : type jeu
d'enregistrements
monEpreuve1 : Valeur du libellé de l'épreuve de maTable1 : type texte
monEpreuve2 : Valeur du libellé de l'épreuve de maTable2 : type texte
maNote : Valeur de la note du devoir : type réel simple
monCoefDevoir : Valeur du coefficient du devoir : type réel simple
monCoefEpreuve : Valeur du coefficient de l'épreuve : type réel simple
monObligatoire : Caractère obligatoire de l'épreuve : type booléen
cumulDevoir : Cumul du nombre de devoirs : type entier court
cumulAbsent : Cumul du nombre d'absence aux devoirs : type entier court
cumulPointsDevoirs : Cumul des points (note * coef) pour une épreuve : type
réel simple
cumulCoefDevoirs : Cumul des coefficients pour une épreuve : type réel simple
moyenneEpreuve : Moyenne pour une épreuve : type réel simple
cumulPointsEpreuves : Cumul des points pour le bac (moyenneEpreuve *
coefEpreuve) : type réel simple
cumulCoefEpreuves : Cumul des coefficients pour le bac : type réel simple
moyenneBac : Valeur de la moyenne pour la bac : type réel simple

Début
10    maBase


Classé sous : type, épreuve, valeur, if, end


Codes en rapport sur CodeS-SourceS avec aide vba sur access pour algorithme

SUPRÉSSION DES BALISE HTML
ce code a pour but de supprimer toutes mes balises HTML du type en laissant ce qu'il y a entre les...

EXEMPLE DE PROPRIÉTÉ D'OBJET AVEC UN PETIT PLUS DANS LA FENETRE PROPRIETE (STYLE CE QUE L'ON TROUVE DEVANT LA PROPRIETE FONT DE L'OBJET TEXTBOX) (VERSION VB.NET)
Voici un moyen d'afficher une propriete qui regroupe plusieurs valeurs, par exemple dans un Textbox ...

BINARISATION D'IMAGES
IMPORTANT: Avant d'ouvrir les fichiers qui se terminent par ...FrameUnit.pas, BIEN LIRE LA REMARQUE ...

CONVERTISSEUR
Voici un petit convertisseur sans pretention mais c'est juste pour le fun, il convertit le binaire e...

SAVOIR SI UN POINT DE L'ESPACE EST OU N'EST PAS DANS UN TRIANGLE (DE L'ESPACE LUI AUSSI)
Voila un principe que j'ai mis au point pour un travaille que je faisais sur DirectX. Ce code march...

Les discussions similaires sur CodeS-SourceS à aide vba sur access pour algorithme

Une question sur les dates .....
Bonjour tout le monde je suis en train de bosser sur un logiciel de gestion de course (course à pied, course de vélo ....) Je me débrouille assez bien, aussi j'arrive à connaitre en secondes le tem...

Test de la Valeur retournée par Split(chaine, "")
je voudrai tester le type de la valeur retournée par la fonction split. exemple : sToto = split(sChaine, " "), if sToto(1) then condition1 else condition2 end if...

VB: Ouverture d'une page Internet de puis un programme
Hi! J'utilise le code suivant pour ouvrir une page Internet depuis un programme VB. J'aimerai pouvoir mettre l'adresse Url qui est en paramétre de l'ouverture d'IE dans un tableau, est ce possible?...

textbox dans un GridView en mode edit
Salut à tous; Bon c la première fois que je vais poster sur le forum alors gspr que je vais pa étre déçu Voici mon probléme: j'ai une GridView qui permet d'afficher une liste d'élèves et les note...

Mettre un champ numérique à blanc
Bonjour, Je souhaiterai savoir comment faire pour affecter à un champ qui est de type numérique la valeur "". Car quand je saisie ce bout de code il me plante mon programme car il me dit incompatibi...

contrôle de données en vb.net
Comment contrôler si la valeur d'un champ est nulle en vb.net??? Merci. ben tu peut faire : if (len(champ.text)>0) then .... end if si c pour le web tu peut utiliser les requirefieldv...

VB: Ouverture d'une page Internet de puis un programme
Hi! J'utilise le code suivant pour ouvrir une page Internet depuis un programme VB. J'aimerai pouvoir mettre l'adresse Url qui est en paramétre de l'ouverture d'IE dans un tableau, est ce possible?...

redim VB.net
grrr, toujours quand la programmation avance que ça fini par me mettre un bug que je comprend pas sa signification "La référence d'objet n'est pas définie à une instance d'un objet." j'ai un tab...

[C++ Vecteur qui se re-initialise]
Bonjours, - j'ai un problème avec un pti projet pour une épreuve, j'ai une classe (Atelier) contentent un tableau de vecteur de type Roues4. Cette class Roues4 est un class enfant d'une classe v...

Access : if et requete : resultat de requete dépend de la valeur d'un champ
salut ! je n'arrive pas à résoudre mon pb: je cherche à faire une requête qui renvoie la valeur 1 si le champ "champ1" de ma table "table1" a la valeur "ok" je cherche...



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND, Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,31 sec