Académique Documents
Professionnel Documents
Culture Documents
Net et Access
Isaac Wayisovia Mbumba, Mbumba Isaac
EBAUCHE
PROGRAMMATION
VB.NET ET
MICROSOFT
ACCESS
Destinée aux Etudiants L1
(LMD) Math- Info, Unikis.
Isaac MBUMBA, W.
Ass. Unikis, Math-Info.
VISUAL BASIC.NET ET BASE DE DONNEES
ACCES
Cette petite esquisse qui est à votre disposition chers étudiants, n’est qu’un début d’un long
périple que vous êtes convié à parcourir pour la réussite de votre formation. Loin d’affirmer
ici avoir abordé la totalité de la chose, sachez que la programmation est trop vaste,
comparable à un océan dont chacun est appelé en s’accaparer un verre d’eau, via cet exemple
nous cherchons juste à vous initier aux bases, vous pousser à comprendre comment s’écrivent
les codes dans en VB.Net en communication avec SGBD Access, nous ne voudrions pas que
vous puissiez faire comme la plupart, ses derniers bloquent le code au lieu de voir de près ce
que fait le code et chercher à implémenter dans sa propre logique.
Nous pensons bien qu’après sa mise en pratique, l’étudiant volera au moins de ses propres
ailes, nous allons plus nous marteler coté code, quant au graphique, vos préoccupations
seront les bienvenues
Problème : l’Unikis voudrait mettre en place un logiciel, qui permettra d’enregistrer ses
étudiants, un étudiant est identifié par son Matricule, Nom, Sa date de Naissance, son Lieu de
Naissance, et son sexe. Le logiciel devra permettre de Modifier les informations, supprimer,
rechercher, imprimer la liste des Etudiants (Trop simple).
Pour besoin fonctionnel et ergonomique, n’importe qui ne devrait avoir accès au logiciel, nous
devrions aussi intégrer l’authentication, l’utilisateur saisira son nom et son mot de passe.
Résolution
Partant du problème nous n’avons que deux tables (compte et étudiant, chacune ayant ses
propriétés déjà signalées), nous n’allons pas faire trop d’analyse sur le système d’information
car nous pensons que l’étudiant a déjà les prérequis en Méthode d’analyse ou conception
(UML OU MERISE, etc.)
Nous allons directement dans Access pour créations de nos tables, Access vient dans le paquet
Microsoft Office, il suffit que celui-ci soit installé pour que vous ayez Access dans votre
ordinateur. (Pour notre cas, nous utilisons Microsoft Office 2016)
p. 1
Pour ouvrir Access, rendez-vous dans Menu démarrer (Windows 10…), Tapez Access, valider
votre choix
Nommez votre
base de
données, la
nôtre s’appelle
« Compte »
Access s’ouvre,
allez dans
menu créer-
création d’une
table, nommez
la table et
commencez à
renseigner sur les champs et leurs types (les types et nombre de champs doivent correspondre
avec ceux qui seront à saisir dans VB.net)
p. 2
Après avoir fini avec la création de sa base des données (Etudiant) en Accès, ladite base de
données contient deux tables (compte et étudiant), nous pouvons nous permettre d’aller
maintenant vers notre environnement de développement (Visual Studio) et utiliser VB.net
Visual studio est une suite de logiciels de développement pour Windows et Mac Os, conçue
par Microsoft, sa dernière version en date de cette rédaction s’appelle Visual Studio 2022, une
panoplie de langages en son sein, C++, C Sharp, Visual Basic.NET, J…
Pour notre cas, nous allons programmer en Visual Basic.NET (2012), tout en maintenant notre
logique, partant du fait que la Base de données est déjà créée ; et sachant que nous avons
déjà Visual Studio installé dans notre ordinateur, nous allons lancer Visual Studio, Pour ce,
allez dans Menu démarrer, tapez Visual Studio, au démarrage, choisissez votre langage de
programmation.
Donnez un nom significatif au projet, la localisation du projet est par défaut dans Mes
documents, Visual Studio 2012 (Pour ce cas) – Project.
Rappel, nous avions deux tables dans Access (Compte, Etudiant) raison pour laquelle nous
allons d’abord commencer par la création deux formulaires correspondants à nos tables
p. 3
1. Formulaire Compte
Consignes : Avant d’accéder au programme il est impérieux que l’utilisateur renseigne sur ses
identifiants (Nom et Mot de passe), s’il fournit les identifiants différents à ceux qui y sont
préalablement, qu’il n’ait pas accès au logiciel,
Nota bene : les écrits colorés en vert sont des commentaires, nous les avons insérés pour une
meilleure compréhension du code, ça n’a aucun effet sur l’exécution du logiciel.
p. 4
'cette variable nous servira à compter les enregistrements
x = 0
max = jeued.Tables("Compte").Rows.Count
'Affecterdonnees()
' on ferme la connexion
inscript.Close()
End Sub
End Sub
S’il insère les identifiants enregistrés dans la table de la base des données, il passe au
deuxième formulaire permettant d’enregistrer l’Etudiant
p. 5
Nous avons essayé de mixer nos
outils pour n’est pas resté dans le
statuquo, vous comprendrez que
nous avons l’outil textbox, date and
time, combobox… et les boutons
nous permettant d’ordonner
certaines tâches, juste en voyant,
nous pouvons enregistrer, lire
l’enregistrement suivant,
précédent, supprimer un
enregistrement, modifier,
rechercher un Etudiant, voir la liste
'Espace de nom des variables globales à déclarer avant d'utiliser une base des données
OLDB
Imports System.Data.OleDb
Imports System.Data
p. 6
'Je déclare la requête qui est en SQL permettant d'insérer les données dans Ma
table, à Noter que le champ en vb doivent correspondre avec ceux se trouvant dans
access
enregistrer.CommandText = "insert into Isra values ('" & TextBox1.Text & "',
'" & TextBox2.Text & "', '" & DateTimePicker1.Value.Date & "', '" & TextBox3.Text &
"', '" & ComboBox1.Text & "')"
enregistrer.Connection = inscript
enregistrer.CommandType = CommandType.Text
MsgBox("Vous êtes enregistés avec succès")
enregistrer.ExecuteNonQuery()
'Pour tout initialiser
inscript.Close()
Button2_Click(sender, e)
End Sub
'LORSQU'ON CLIQUE AU BOUTON NOUVEAU
'Pour Initialiser tous mes champs sur le formulaire
Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
TextBox1.Text = ""
TextBox2.Text = ""
TextBox3.Text = ""
ComboBox1.Text = ""
DateTimePicker1.Text = ""
TextBox1.Focus()
End Sub
'PROCEDURE AFFECTATION DES DONNEES VENANT DE NOTRE BASE DE DONNEES DANS NOS CHAMPS
Private Sub Affecterdonnees()
TextBox1.Text = jeued.Tables("Isra").Rows(x).Item(0)
TextBox2.Text = jeued.Tables("Isra").Rows(x).Item(1)
DateTimePicker1.Text = jeued.Tables("Isra").Rows(x).Item(2)
TextBox3.Text = jeued.Tables("Isra").Rows(x).Item(3)
ComboBox1.Text = jeued.Tables("Isra").Rows(x).Item(4)
End Sub
'LORSQU'ON CLIC AU BOUTTON SUIVANT
Private Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click
If x < max - 1 Then
x = x + 1
Affecterdonnees()
Else
Button3.Enabled = False
End If
End Sub
'LORSQU'ON CLIC AU BOUTTON PRECEDENT
Private Sub Button4_Click(sender As Object, e As EventArgs) Handles Button4.Click
If x > 0 Then
x = x - 1
Affecterdonnees()
Else
Button4.Enabled = False
End If
End Sub
'LORSQU'ON CLIC AU BOUTTON SUPPRIMER
Private Sub Button5_Click(sender As Object, e As EventArgs) Handles Button5.Click
Dim cmd As New OleDbCommand
inscript.Open()
'La requête de suppression des données partant d'un critère Where
cmd.CommandText = "DELETE * FROM Isra Where Matricule='" & TextBox1.Text & "'"
p. 7
Dim reponse As MsgBoxResult = MsgBox("Etes vous sûr de vouloir supprimer cet
enregistrement?", MsgBoxStyle.YesNo, "Suppression Citation")
If reponse = MsgBoxResult.Yes Then
cmd.Connection = inscript
cmd.CommandType = CommandType.Text
cmd.ExecuteNonQuery()
Button2_Click(sender, e)
End If
End Sub
'LORSQU'ON CLIC AU BOUTTON MODIFIER
Private Sub Button6_Click(sender As Object, e As EventArgs) Handles Button6.Click
Dim cmd As New OleDbCommand
inscript.Open()
'La requête de mise à jour des données
cmd.CommandText = "UPDATE Isra SET Nom='" & TextBox2.Text & "', DateNaiss='" &
DateTimePicker1.Value.Date & "', LieuNaiss= '" & TextBox3.Text & "', Sexe= '" &
ComboBox1.Text & "' Where Matricule= '" & TextBox1.Text & "'"
cmd.Connection = inscript
Dim reponse As MsgBoxResult = MsgBox("Etes vous sûr de vouloir supprimer cet
enregistrement?", MsgBoxStyle.YesNo, "Suppression Citation")
If reponse = MsgBoxResult.Yes Then
cmd.Connection = inscript
cmd.CommandType = CommandType.Text
cmd.ExecuteNonQuery()
Button2_Click(sender, e)
End If
End Sub
'LORSQU'ON CLIC AU BOUTTON RECHERCHE
Private Sub Button7_Click(sender As Object, e As EventArgs) Handles Button7.Click
Dim elt As String
elt = InputBox("saisissez votre numero d'enregistrement")
Dim recherche As New OleDbCommand
inscript.Open()
'La requête de selection des données partant d'un critère Where
recherche.CommandText = "select * from Isra where Matricule ='" & elt & "'"
recherche.Connection = inscript
Dim lectrech As OleDbDataReader = recherche.ExecuteReader
If lectrech.Read = True Then
TextBox1.Text = lectrech.Item(0)
TextBox2.Text = lectrech.Item(1)
DateTimePicker1.Text = lectrech.Item(2)
TextBox3.Text = lectrech.Item(3)
ComboBox1.Text = lectrech.Item(4)
Else
MsgBox("vous n'êtes pas enregistré dans notre base de données")
End If
inscript.Close()
End Sub
'LORSQU'ON CLIC AU BOUTTON VOIR POUR PARCOURRIR LE RAPPORT DES ETUDIANTS
ENREGISTRES
Private Sub Button8_Click(sender As Object, e As EventArgs) Handles Button8.Click
Me.Hide()
Form2.Show()
End Sub
p. 8
Jusque là on peut se dire avoir finis avec nos deux tables, comptes et enregistrement, mais en
information un logiciel doit respecter ses critères (entrée, traitement, sortie), nous avons tenu
compte que de deux, quant à la sortie, nous faisons recourt au DataGridview (un autre outil
VB.net)
Voici le formulaire
ayant DataGridView
régénérant les
données se trouvant
dans notre base des
données, table
Etudiant, nous
voyons tous nos
étudiant enregistrés
Un problème se pose, tout bon logiciel devrait produire un Etat de sortie (Rapport à imprimer
via une imprimante), Une notion importance intervient de même, le Crystal Report (VS)
partant des connaissances en notre possession seul Visual Studio 2008 en avait déjà lors de
son installation, on ne l’installait plus comme partie tierce, contrairement avec la version
2012, il est recommandé de télécharger cet outil enfin de l’utiliser
(http://www.sap.com/cmp/td/sap-Crystal-report-visual-studio) après son téléchargement,
vous passez à son installation, ce n’est qu’après qu’il pourra figurer parmi les outils Visual
Basic.Net, on l’utilise comme n’importe quel outil
Pour son utilisation, nous pensons vous faire plus comprendre lors des explications à
l’auditoire (on vous épargne des plusieurs détails qui paraitront superflus jusqu’ ici)
p. 9
CODE DE DATAGRIDVIEW
Imports System.Data.OleDb
Imports System.Data
End Sub
End Sub
p. 10
Lorsqu’on clic sur Rapport, voici ce que nous avons comme résultat
Nous sommes arrivés à la fin de notre étude qui avait pour but principal, initier l’étudiant aux
bases de la programmation VB.net ayant pour SGBD (Système de Gestion de Base de données)
Access, nous pensons avoir fait l’essentiel et former le socle pour vous étudiants, à vous la
suite.
Meilleure compréhension
p. 11