Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

CARNET D'ADRESSE


Information sur la source

Catégorie :Base de Donnees Source .NET ( DotNet ) Classé sous : database, datagridview, filtre, Recherche, Login Niveau : Débutant Date de création : 08/10/2008 Date de mise à jour : 24/10/2008 03:55:28 Vu / téléchargé: 5 376 / 730

Note :
Aucune note

Commentaire sur cette source (4)
Ajouter un commentaire et/ou une note

Description

C'est une application qui traite de l'enregistrement, de la suppression ou de la modification de données stockées dans une base access. Une module de recherche par nom et par ville a été implémentée ainsi que le defilement des enregistrements. Le login= Ams et le mot de passe= Diop.Ceci est la 3e source que je publie dans ce site.
 

Source

  • Public Class LoginForm1
  • Private Sub OK_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles OK.Click
  • Dim o As New ClassCarnet
  • Dim ch As String = o.Chemin
  • Dim db As String = o.DB
  • o.cnstr(ch, db)
  • o.Connection()
  • Dim tbl As String = "MotPass"
  • Dim sql As String = "select * from MotPass"
  • o.Dts_Dta_Dtt_Create(tbl, sql)
  • Dim i As Integer
  • o.RowNber(i)
  • o.txtbox(User, "Login", i)
  • o.txtbox(Psw, "MotPass", i)
  • If Me.UserTxt.Text <> "" And Me.PswTxt.Text <> "" Then '
  • If UserTxt.Text = User.Text And PswTxt.Text = Psw.Text Then
  • Me.Close()
  • Form1.Show()
  • Else
  • MsgBox("Erreur, veuillez recommencer")
  • End If
  • Else
  • MsgBox("Erreur, veuillez recommencer")
  • End If
  • End Sub
  • Private Sub Cancel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Cancel.Click
  • Me.Close()
  • Application.Exit()
  • End Sub
  • Private Sub LoginForm1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
  • User.Hide()
  • User.Clear()
  • Psw.Hide()
  • End Sub
  • End Class
  • '---------------------------------------------------------------------------------------------------------------------------
  • Imports System
  • Imports System.Data
  • Imports System.Data.OleDb
  • Public Class Form1
  • Public DB As String = "C_Adresse.mdb;"
  • Public Chemin As String = "Provider=Microsoft.Jet.OLEDB.4.0;" & _
  • "Data Source=" & Application.StartupPath & "\" & DB
  • Public cn As New OleDbConnection
  • Dim Cmd As New OleDbCommand
  • Dim Dts As New DataSet
  • Dim Dtt As New DataTable
  • Dim rd As OleDbDataReader
  • Dim Dta As New OleDbDataAdapter(Cmd)
  • ' Déclaration Objet DataRow (ligne)
  • Dim Dtrw As DataRow
  • Dim Dtv As New DataView
  • Dim sql As String
  • Dim strcn As String
  • Private CmdB As OleDbCommandBuilder
  • 'Numéro de la ligne en cours
  • Dim RowNumber As Integer
  • Private Sub connection(ByVal Chemin As String)
  • Dim cn As New OleDbConnection
  • cn.ConnectionString = Chemin
  • Try
  • 'commande
  • cn.Open() ' ouverture de la connxion
  • Catch ex As Exception
  • MsgBox(ex.Message)
  • End ' quitter l'application
  • End Try
  • End Sub
  • Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
  • Me.txtRech.Visible = False
  • Me.Btn_rech.Visible = False
  • Me.Visible = False
  • Me.Hide()
  • Accueil.ShowDialog()
  • Chemin = "Provider=Microsoft.Jet.OLEDB.4.0;" & _
  • "Data Source=" & Application.StartupPath & "\" & DB
  • cn.ConnectionString = Chemin
  • Try
  • 'commande
  • cn.Open() ' ouverture de la connxion
  • Catch ex As Exception
  • MsgBox(ex.Message)
  • End ' quitter l'application
  • End Try
  • 'Initialisation de l'instruction SQL
  • sql = "SELECT * FROM Carnet"
  • 'Instancer un objet Commande & connexion de l'objet Command
  • Cmd = New OleDbCommand(sql, cn)
  • Cmd.CommandText = sql
  • Cmd.Connection = cn
  • 'Instancer un objet Adapter
  • Dta = New OleDbDataAdapter(Cmd)
  • 'Avec l'aide de la propriété Fill du DataAdapter charger leDataset()
  • Dta.Fill(Dts, "Carnet")
  • 'Mettre dans un Objet DataTable une table du DataSet
  • Dtt = Dts.Tables("Carnet")
  • Dtv = Dts.Tables("Carnet").DefaultView
  • Dtv.AllowEdit = True
  • DataGridView1.DataSource = Dtv
  • If RowNumber < 0 Then Exit Sub
  • ''Lors de l'ouverture de la BD, s'il n'y a aucun enregistrement
  • If RowNumber > Dtt.Rows.Count - 1 Then Exit Sub
  • 'Dtt.Rows(Numéro de lignes).Item( Nom de colonne) donne
  • Me.Carnet_ref.Text = Dtt.Rows(RowNumber).Item("Carnet_ref")
  • Me.Carnet_NomPren.Text = Dtt.Rows(RowNumber).Item("Carnet_NomPren") '
  • Me.Carnet_DateNaiss.Text = Dtt.Rows(RowNumber).Item("Carnet_DateNaiss") '
  • Me.Carnet_Adresse.Text = Dtt.Rows(RowNumber).Item("Carnet_Adresse") '
  • Me.Carnet_Ville.Text = Dtt.Rows(RowNumber).Item("Carnet_Ville") '
  • Me.Carnet_CP.Text = Dtt.Rows(RowNumber).Item("Carnet_CP") '
  • Me.Carnet_Pays.Text = Dtt.Rows(RowNumber).Item("Carnet_Pays") '
  • Me.Carnet_Tél.Text = Dtt.Rows(RowNumber).Item("Carnet_Tél") '
  • Me.Btn_Aj.Enabled = False
  • '-------------------------
  • With Me.DataGridView1
  • 'Une ligne sur 2 en bleue
  • .RowsDefaultCellStyle.BackColor = Color.White
  • .AlternatingRowsDefaultCellStyle.BackColor = Color.Blue
  • 'Interdir la selection de plusieurs cellules
  • .MultiSelect = True
  • 'Empeche la saisie dans les cellules (en faite, le permet par
  • 'programmation)
  • .EditMode = DataGridViewEditMode.EditProgrammatically
  • End With
  • 'Gestion des en-têtes de colonne
  • With DataGridView1.ColumnHeadersDefaultCellStyle '
  • .BackColor = Color.Red 'ça marche pas!!??
  • .ForeColor = Color.Blue
  • .Font = New Font(DataGridView1.Font, FontStyle.Italic) ' en gras
  • End With
  • ''--------------------------
  • 'Dim cn1 As New OleDbConnection(Chemin)
  • 'Dim rd1 As OleDbDataReader
  • 'Dim sql1 As String
  • 'Try
  • ' cn1.Open()
  • 'Catch ex As Exception
  • ' MsgBox(ex.Message)
  • 'End Try
  • 'sql1 = "SELECT Carnet.Carnet_NomPren FROM Carnet GROUP BY Carnet.Carnet_NomPren "
  • ''Instancer un objet Commande & connexion de l'objet Command
  • 'Dim Cmd1 As New OleDbCommand()
  • 'Cmd1 = cn1.CreateCommand
  • 'Cmd1.CommandText = sql1
  • 'Cmd1.Connection = cn1
  • 'rd1 = Cmd1.ExecuteReader()
  • 'Do While rd1.Read()
  • ' txtRech1.Items.Add(rd1.GetValue(0)) '
  • 'Loop
  • 'rd1.Close()
  • 'cn1.Close()
  • '------------------------------
  • cn.Close()
  • End Sub
  • Private Sub BtnDébut_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnDébut.Click
  • RowNumber = 0 'pour la première.
  • Me.Carnet_ref.Text = Dtt.Rows(RowNumber).Item("Carnet_ref")
  • Me.Carnet_NomPren.Text = Dtt.Rows(RowNumber).Item("Carnet_NomPren") '
  • Me.Carnet_DateNaiss.Text = Dtt.Rows(RowNumber).Item("Carnet_DateNaiss") '
  • Me.Carnet_Adresse.Text = Dtt.Rows(RowNumber).Item("Carnet_Adresse") '
  • Me.Carnet_Ville.Text = Dtt.Rows(RowNumber).Item("Carnet_Ville") '
  • Me.Carnet_CP.Text = Dtt.Rows(RowNumber).Item("Carnet_CP") '
  • Me.Carnet_Pays.Text = Dtt.Rows(RowNumber).Item("Carnet_Pays") '
  • Me.Carnet_Tél.Text = Dtt.Rows(RowNumber).Item("Carnet_Tél")
  • End Sub
  • Private Sub BtnSuiv_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnSuiv.Click
  • '---------------------------------
  • If RowNumber >= 0 And RowNumber < Dtt.Rows.Count - 1 Then ''
  • RowNumber += 1
  • 'incrémente le numéro de la ligne en cours puis on affiche.
  • Me.Carnet_ref.Text = Dtt.Rows(RowNumber).Item("Carnet_ref")
  • Me.Carnet_NomPren.Text = Dtt.Rows(RowNumber).Item("Carnet_NomPren") '
  • Me.Carnet_DateNaiss.Text = Dtt.Rows(RowNumber).Item("Carnet_DateNaiss") '
  • Me.Carnet_Adresse.Text = Dtt.Rows(RowNumber).Item("Carnet_Adresse") '
  • Me.Carnet_Ville.Text = Dtt.Rows(RowNumber).Item("Carnet_Ville") '
  • Me.Carnet_CP.Text = Dtt.Rows(RowNumber).Item("Carnet_CP") '
  • Me.Carnet_Pays.Text = Dtt.Rows(RowNumber).Item("Carnet_Pays") '
  • Me.Carnet_Tél.Text = Dtt.Rows(RowNumber).Item("Carnet_Tél")
  • End If
  • End Sub
  • Private Sub BtnPécéd_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnPécéd.Click
  • If RowNumber > 0 And RowNumber <= Dtt.Rows.Count - 1 Then 'RowNumber >= 0
  • RowNumber -= 1 'pour la précédente.
  • Me.Carnet_ref.Text = Dtt.Rows(RowNumber).Item("Carnet_ref")
  • Me.Carnet_NomPren.Text = Dtt.Rows(RowNumber).Item("Carnet_NomPren") '
  • Me.Carnet_DateNaiss.Text = Dtt.Rows(RowNumber).Item("Carnet_DateNaiss") '
  • Me.Carnet_Adresse.Text = Dtt.Rows(RowNumber).Item("Carnet_Adresse") '
  • Me.Carnet_Ville.Text = Dtt.Rows(RowNumber).Item("Carnet_Ville") '
  • Me.Carnet_CP.Text = Dtt.Rows(RowNumber).Item("Carnet_CP") '
  • Me.Carnet_Pays.Text = Dtt.Rows(RowNumber).Item("Carnet_Pays") '
  • Me.Carnet_Tél.Text = Dtt.Rows(RowNumber).Item("Carnet_Tél")
  • End If
  • End Sub
  • Private Sub BtnFin_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnFin.Click
  • RowNumber = Dtt.Rows.Count - 1 'pour la dernière.
  • Me.Carnet_ref.Text = Dtt.Rows(RowNumber).Item("Carnet_ref")
  • Me.Carnet_NomPren.Text = Dtt.Rows(RowNumber).Item("Carnet_NomPren") '
  • Me.Carnet_DateNaiss.Text = Dtt.Rows(RowNumber).Item("Carnet_DateNaiss") '
  • Me.Carnet_Adresse.Text = Dtt.Rows(RowNumber).Item("Carnet_Adresse") '
  • Me.Carnet_Ville.Text = Dtt.Rows(RowNumber).Item("Carnet_Ville") '
  • Me.Carnet_CP.Text = Dtt.Rows(RowNumber).Item("Carnet_CP") '
  • Me.Carnet_Pays.Text = Dtt.Rows(RowNumber).Item("Carnet_Pays") '
  • Me.Carnet_Tél.Text = Dtt.Rows(RowNumber).Item("Carnet_Tél")
  • End Sub
  • Private Sub Btn_Aj_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Btn_Aj.Click
  • Try
  • Dtrw = Dts.Tables("Carnet").NewRow()
  • 'Modifier les valeurs des champs en récupérant le contenu
  • 'des(TextBox)
  • Dtrw("Carnet_ref") = Me.Carnet_ref.Text
  • Dtrw("Carnet_NomPren") = Me.Carnet_NomPren.Text '
  • Dtrw("Carnet_DateNaiss") = Me.Carnet_DateNaiss.Text
  • Dtrw("Carnet_Adresse") = Me.Carnet_Adresse.Text
  • Dtrw("Carnet_Ville") = Me.Carnet_Ville.Text
  • Dtrw("Carnet_CP") = Me.Carnet_CP.Text '
  • Dtrw("Carnet_Pays") = Me.Carnet_Pays.Text
  • Dtrw("Carnet_Tél") = Me.Carnet_Tél.Text
  • Dts.Tables("Carnet").Rows.Add(Dtrw)
  • CmdB = New OleDbCommandBuilder(Dta) 'Pour modifier les valeurs changées dans le DataAdapter
  • Dta.Update(Dts, "Carnet") 'Mise à jour
  • 'On vide le DataSet et on le 'recharge' de nouveau.
  • Dts.Clear()
  • Dta.Fill(Dts, "Carnet")
  • Dtt = Dts.Tables("Carnet")
  • Catch ex As Exception
  • MsgBox(ex.Message)
  • End Try
  • End Sub
  • Private Sub Btn_Modif_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Btn_Modif.Click
  • ' Extraire l'enregistrement courant
  • '------------------
  • '---------------------
  • Dtrw = Dts.Tables("Carnet").Rows(RowNumber)
  • 'Modifier les valeurs des champs en récupérant le contenu
  • 'des(TextBox)
  • Dtrw("Carnet_ref") = Me.Carnet_ref.Text
  • Dtrw("Carnet_NomPren") = Me.Carnet_NomPren.Text '
  • Dtrw("Carnet_DateNaiss") = Me.Carnet_DateNaiss.Text
  • Dtrw("Carnet_Adresse") = Me.Carnet_Adresse.Text
  • Dtrw("Carnet_Ville") = Me.Carnet_Ville.Text
  • Dtrw("Carnet_CP") = Me.Carnet_CP.Text '
  • Dtrw("Carnet_Pays") = Me.Carnet_Pays.Text
  • Dtrw("Carnet_Tél") = Me.Carnet_Tél.Text
  • 'Pour modifier les valeurs changées dans le DataAdapter
  • CmdB = New OleDbCommandBuilder(Dta)
  • 'Mise à jour
  • Dta.Update(Dts, "Carnet")
  • 'On vide le DataSet et on le 'recharge' de nouveau.
  • Dts.Clear()
  • Dta.Fill(Dts, "Carnet")
  • Dtt = Dts.Tables("Carnet")
  • End Sub
  • Private Sub Btn_Eff_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Btn_Eff.Click
  • Dtrw = Dts.Tables("Carnet").NewRow()
  • 'Modifier les valeurs des champs en récupérant le contenu
  • 'des(TextBox)
  • 'Effacer l''enregistrement en cours:
  • Dts.Tables("Carnet").Rows(RowNumber).Delete()
  • 'Pour modifier les valeurs changées dans le DataAdapter
  • CmdB = New OleDbCommandBuilder(Dta)
  • Dtrw("Carnet_ref") = Me.Carnet_ref.Text
  • Dtrw("Carnet_NomPren") = Me.Carnet_NomPren.Text '
  • Dtrw("Carnet_DateNaiss") = Me.Carnet_DateNaiss.Text
  • Dtrw("Carnet_Adresse") = Me.Carnet_Adresse.Text
  • Dtrw("Carnet_Ville") = Me.Carnet_Ville.Text
  • Dtrw("Carnet_CP") = Me.Carnet_CP.Text '
  • Dtrw("Carnet_Pays") = Me.Carnet_Pays.Text
  • Dtrw("Carnet_Tél") = Me.Carnet_Tél.Text
  • 'Mise à jour
  • Dta.Update(Dts, "Carnet")
  • 'On vide le DataSet et on le 'recharge' de nouveau.
  • Dts.Clear()
  • Dta.Fill(Dts, "Carnet")
  • Dtt = Dts.Tables("Carnet")
  • End Sub
  • Private Sub Btn_rech_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Btn_rech.Click
  • Btn_rech.Enabled = True
  • BtnNouv.Enabled = False
  • Btn_Aj.Enabled = False
  • If Btn_rech.Text = "Recherche" Then
  • Btn_rech.Text = "Annuler"
  • 'on vide le DataSet pour le charger avec
  • 'les données de la recherche
  • Dts.Clear()
  • If CheckNomPren.Checked = True Then
  • Me.txtRech.Visible = True
  • Me.Btn_rech.Visible = True
  • 'recherche par caractere quelque soit sa place dans le mots
  • 'sql = "SELECT * FROM Carnet WHERE Carnet_NomPren LIKE '%" & txtRech.Text & "%';"
  • 'Recherche de mots commencant par les 1erés lettres
  • sql = "SELECT * FROM Carnet WHERE Carnet_NomPren LIKE '" & txtRech.Text & "%';"
  • Cmd = New OleDbCommand(sql)
  • Dta = New OleDbDataAdapter(Cmd)
  • Cmd.Connection() = cn
  • Dta.Fill(Dts, "Carnet")
  • Dtt = Dts.Tables("Carnet")
  • Dtv = Dts.Tables("Carnet").DefaultView
  • Dtv.AllowEdit = True
  • 'si aucunes données existent pour ce nom alors
  • If RowNumber > Dtt.Rows.Count - 1 Then
  • MsgBox("Il n'existe aucunes données pour le nomPrenom !Données inexistantes...", MsgBoxStyle.Exclamation)
  • If MsgBoxResult.Ok Then
  • Btn_rech.Text = "Recherche"
  • CheckNomPren.Checked = False
  • Me.txtRech.Text = ""
  • Me.txtRech.Focus()
  • End If
  • Exit Sub
  • Else
  • 'sinon afichage des données dans la Datagrid
  • 'et les textbox
  • DataGridView1.DataSource = Dtv
  • Me.Carnet_ref.Text = Dtt.Rows(RowNumber).Item("Carnet_ref")
  • Me.Carnet_NomPren.Text = Dtt.Rows(RowNumber).Item("Carnet_NomPren") '
  • Me.Carnet_DateNaiss.Text = Dtt.Rows(RowNumber).Item("Carnet_DateNaiss") '
  • Me.Carnet_Adresse.Text = Dtt.Rows(RowNumber).Item("Carnet_Adresse") '
  • Me.Carnet_Ville.Text = Dtt.Rows(RowNumber).Item("Carnet_Ville") '
  • Me.Carnet_CP.Text = Dtt.Rows(RowNumber).Item("Carnet_CP") '
  • Me.Carnet_Pays.Text = Dtt.Rows(RowNumber).Item("Carnet_Pays") '
  • Me.Carnet_Tél.Text = Dtt.Rows(RowNumber).Item("Carnet_Tél")
  • Btn_Modif.Enabled = True
  • Btn_Eff.Enabled = True
  • BtnDébut.Enabled = True
  • BtnSuiv.Enabled = True
  • BtnPécéd.Enabled = True
  • BtnFin.Enabled = True
  • End If
  • ElseIf CheckVille.Checked = True Then
  • Me.txtRech.Visible = True
  • Me.txtRech.Text = ""
  • Me.Btn_rech.Visible = True
  • 'création de la requête,exécution de la commande,
  • 'remplissage du DataAdapter,du DataSet et de la DataTable
  • sql = "select * from Carnet where Carnet_Ville = '" & txtRech.Text & "'"
  • Cmd = New OleDbCommand(sql)
  • Dta = New OleDbDataAdapter(Cmd)
  • Cmd.Connection() = cn
  • Dta.Fill(Dts, "Carnet")
  • Dtt = Dts.Tables("Carnet")
  • Dtt = Dts.Tables("Carnet")
  • Dtv = Dts.Tables("Carnet").DefaultView
  • Dtv.AllowEdit = True
  • '---------------------------------------
  • 'si aucunes données existent pour ce nom alors
  • If RowNumber > Dtt.Rows.Count - 1 Then
  • MessageBox.Show("Il n'existe aucunes données pour la ville " & txtRech.Text & " !", "Données inexistantes...", MessageBoxButtons.OK, MessageBoxIcon.Information)
  • If MsgBoxResult.Ok Then
  • Me.Btn_rech.Text = "Recherche"
  • Me.CheckVille.Checked = False
  • Me.txtRech.Text = ""
  • Me.txtRech.Focus()
  • End If
  • 'Exit Sub
  • Else
  • 'sinon afichage des données dans la Datagrid
  • 'et les textbox
  • DataGridView1.DataSource = Dtv
  • Me.Carnet_ref.Text = Dtt.Rows(RowNumber).Item("Carnet_ref")
  • Me.Carnet_NomPren.Text = Dtt.Rows(RowNumber).Item("Carnet_NomPren") '
  • Me.Carnet_DateNaiss.Text = Dtt.Rows(RowNumber).Item("Carnet_DateNaiss") '
  • Me.Carnet_Adresse.Text = Dtt.Rows(RowNumber).Item("Carnet_Adresse") '
  • Me.Carnet_Ville.Text = Dtt.Rows(RowNumber).Item("Carnet_Ville") '
  • Me.Carnet_CP.Text = Dtt.Rows(RowNumber).Item("Carnet_CP") '
  • Me.Carnet_Pays.Text = Dtt.Rows(RowNumber).Item("Carnet_Pays") '
  • Me.Carnet_Tél.Text = Dtt.Rows(RowNumber).Item("Carnet_Tél")
  • Btn_Modif.Enabled = True
  • Btn_Eff.Enabled = True
  • BtnDébut.Enabled = True
  • BtnSuiv.Enabled = True
  • BtnPécéd.Enabled = True
  • BtnFin.Enabled = True
  • End If
  • ElseIf Me.CheckNomPren.Checked = False And Me.CheckVille.Checked = False Then
  • 'aucune case n'est cochées donc
  • Me.txtRech.Visible = False
  • Me.Btn_rech.Visible = False
  • Btn_rech.Text = "Annuler"
  • MsgBox("clicker sur le bouton de Annuler pour revenir au début!, Erreur...", MsgBoxStyle.Information, "Clicker encore")
  • If MsgBoxResult.Ok Then
  • Me.Btn_rech.Text = "Recherche"
  • End If
  • End If
  • ElseIf Me.Btn_rech.Text = "Annuler" Then
  • Btn_rech.Text = "Recherche"
  • Me.Btn_Aj.Enabled = True
  • Me.BtnNouv.Enabled = True
  • 'initialisation des contrôle pour une recherche
  • Me.txtRech.Text = ""
  • Me.CheckNomPren.Checked = False
  • Me.CheckVille.Checked = False
  • 'on vide le DataSet pour le charger avec
  • 'toutes les données de la table
  • Dts.Clear()
  • sql = "select * from Carnet "
  • Cmd = New OleDbCommand(sql)
  • Dta = New OleDbDataAdapter(Cmd)
  • Cmd.Connection() = cn
  • Dta.Fill(Dts, "Carnet")
  • Dtt = Dts.Tables("Carnet")
  • Dtv = Dts.Tables("Carnet").DefaultView
  • Dtv.AllowEdit = True
  • DataGridView1.DataSource = Dtv
  • If RowNumber < 0 Then Exit Sub
  • ''Lors de l'ouverture de la BD, s'il n'y a aucun enregistrement
  • If RowNumber > Dtt.Rows.Count - 1 Then Exit Sub
  • Me.DataGridView1.DataSource = Dtv
  • Me.Carnet_ref.Text = Dtt.Rows(RowNumber).Item("Carnet_ref")
  • Me.Carnet_NomPren.Text = Dtt.Rows(RowNumber).Item("Carnet_NomPren") '
  • Me.Carnet_DateNaiss.Text = Dtt.Rows(RowNumber).Item("Carnet_DateNaiss") '
  • Me.Carnet_Adresse.Text = Dtt.Rows(RowNumber).Item("Carnet_Adresse") '
  • Me.Carnet_Ville.Text = Dtt.Rows(RowNumber).Item("Carnet_Ville") '
  • Me.Carnet_CP.Text = Dtt.Rows(RowNumber).Item("Carnet_CP") '
  • Me.Carnet_Pays.Text = Dtt.Rows(RowNumber).Item("Carnet_Pays") '
  • Me.Carnet_Tél.Text = Dtt.Rows(RowNumber).Item("Carnet_Tél")
  • '--------------------------
  • Btn_rech.Text = "Recherche"
  • ' vider le datagridview
  • 'Me.DataGridView1.Rows.Clear()
  • End If
  • End Sub
  • '------------------------------
  • Private Sub BtnNouv_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnNouv.Click
  • If BtnNouv.Text = "Nouveau" Then
  • Dim tb() As TextBox = {Carnet_ref, Carnet_NomPren, Carnet_DateNaiss, Carnet_Adresse, _
  • Carnet_Ville, Carnet_CP, Carnet_Pays, Carnet_Tél}
  • Dim x As Byte
  • For x = 1 To 7
  • tb(x).Text = ""
  • Next
  • Me.BtnNouv.Text = "Annuler"
  • Me.Btn_Aj.Enabled = True
  • Else
  • If RowNumber > Dtt.Rows.Count - 1 Then
  • Btn_Aj.Enabled = False
  • BtnNouv.Text = "Ajouter"
  • Else
  • 'aller au début du fichier
  • RowNumber = 0
  • If RowNumber < 0 Then Exit Sub
  • ''Lors de l'ouverture de la BD, s'il n'y a aucun enregistrement
  • If RowNumber > Dtt.Rows.Count - 1 Then Exit Sub
  • ' Dtt.Rows(Numéro de lignes).Item( Nom de colonne) donne
  • Me.Carnet_ref.Text = Dtt.Rows(RowNumber).Item("Carnet_ref")
  • Me.Carnet_NomPren.Text = Dtt.Rows(RowNumber).Item("Carnet_NomPren") '
  • Me.Carnet_DateNaiss.Text = Dtt.Rows(RowNumber).Item("Carnet_DateNaiss") '
  • Me.Carnet_Adresse.Text = Dtt.Rows(RowNumber).Item("Carnet_Adresse") '
  • Me.Carnet_Ville.Text = Dtt.Rows(RowNumber).Item("Carnet_Ville") '
  • Me.Carnet_CP.Text = Dtt.Rows(RowNumber).Item("Carnet_CP") '
  • Me.Carnet_Pays.Text = Dtt.Rows(RowNumber).Item("Carnet_Pays") '
  • Me.Carnet_Tél.Text = Dtt.Rows(RowNumber).Item("Carnet_Tél")
  • Me.BtnNouv.Text = "Nouveau"
  • Me.Btn_Aj.Enabled = False
  • End If
  • End If
  • End Sub
  • Private Sub CheckNomPren_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CheckNomPren.CheckedChanged
  • Me.txtRech.Visible = True
  • Me.Btn_rech.Visible = True
  • End Sub
  • Private Sub CheckVille_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CheckVille.CheckedChanged
  • Me.txtRech.Visible = True
  • Me.Btn_rech.Visible = True
  • End Sub
  • Private Sub Btn_rech_Click_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Btn_rech.Click
  • End Sub
  • Private Sub txtRech_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtRech.TextChanged
  • End Sub
  • End Class
Public Class LoginForm1
    Private Sub OK_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles OK.Click
        Dim o As New ClassCarnet
        Dim ch As String = o.Chemin
        Dim db As String = o.DB
        o.cnstr(ch, db)
        o.Connection()
        Dim tbl As String = "MotPass"
        Dim sql As String = "select * from MotPass"
        o.Dts_Dta_Dtt_Create(tbl, sql)
        Dim i As Integer
        o.RowNber(i)
        o.txtbox(User, "Login", i)
        o.txtbox(Psw, "MotPass", i)
        If Me.UserTxt.Text <> "" And Me.PswTxt.Text <> "" Then ' 
            If UserTxt.Text = User.Text And PswTxt.Text = Psw.Text Then

                Me.Close()
                Form1.Show()
            Else
                MsgBox("Erreur, veuillez recommencer")
            End If
        Else
            MsgBox("Erreur, veuillez recommencer")
        End If
    End Sub

    Private Sub Cancel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Cancel.Click
        Me.Close()
        Application.Exit()

    End Sub

    Private Sub LoginForm1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        User.Hide()
        User.Clear()
        Psw.Hide()
    End Sub
End Class
'---------------------------------------------------------------------------------------------------------------------------
Imports System
Imports System.Data
Imports System.Data.OleDb

Public Class Form1
    Public DB As String = "C_Adresse.mdb;"
    Public Chemin As String = "Provider=Microsoft.Jet.OLEDB.4.0;" & _
                "Data Source=" & Application.StartupPath & "\" & DB
    Public cn As New OleDbConnection
    Dim Cmd As New OleDbCommand
    Dim Dts As New DataSet
    Dim Dtt As New DataTable
    Dim rd As OleDbDataReader
    Dim Dta As New OleDbDataAdapter(Cmd)
    ' Déclaration Objet DataRow (ligne)
    Dim Dtrw As DataRow
    Dim Dtv As New DataView
    Dim sql As String
    Dim strcn As String
    Private CmdB As OleDbCommandBuilder
    'Numéro de la ligne en cours
    Dim RowNumber As Integer

    Private Sub connection(ByVal Chemin As String)
        Dim cn As New OleDbConnection
        cn.ConnectionString = Chemin
        Try
            'commande
            cn.Open() ' ouverture de la connxion
        Catch ex As Exception
            MsgBox(ex.Message)
            End ' quitter l'application
        End Try
    End Sub
    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        Me.txtRech.Visible = False
        Me.Btn_rech.Visible = False
        Me.Visible = False
        Me.Hide()
        Accueil.ShowDialog()
       
        Chemin = "Provider=Microsoft.Jet.OLEDB.4.0;" & _
                "Data Source=" & Application.StartupPath & "\" & DB

        cn.ConnectionString = Chemin

        Try
            'commande
            cn.Open() ' ouverture de la connxion
        Catch ex As Exception
            MsgBox(ex.Message)
            End ' quitter l'application
        End Try
       'Initialisation de l'instruction SQL
        sql = "SELECT * FROM Carnet"
        'Instancer un objet Commande & connexion de l'objet Command
        Cmd = New OleDbCommand(sql, cn)
        Cmd.CommandText = sql
        Cmd.Connection = cn
        'Instancer un objet Adapter
        Dta = New OleDbDataAdapter(Cmd)
        'Avec l'aide de la propriété Fill du DataAdapter charger leDataset()
        Dta.Fill(Dts, "Carnet")
        'Mettre dans un Objet DataTable une table du DataSet
        Dtt = Dts.Tables("Carnet")
        Dtv = Dts.Tables("Carnet").DefaultView
        Dtv.AllowEdit = True
        DataGridView1.DataSource = Dtv
        If RowNumber < 0 Then Exit Sub
        ''Lors de l'ouverture de la BD, s'il n'y a aucun enregistrement
        If RowNumber > Dtt.Rows.Count - 1 Then Exit Sub
        'Dtt.Rows(Numéro de lignes).Item( Nom de colonne) donne
        Me.Carnet_ref.Text = Dtt.Rows(RowNumber).Item("Carnet_ref")
        Me.Carnet_NomPren.Text = Dtt.Rows(RowNumber).Item("Carnet_NomPren") '
        Me.Carnet_DateNaiss.Text = Dtt.Rows(RowNumber).Item("Carnet_DateNaiss") ' 
        Me.Carnet_Adresse.Text = Dtt.Rows(RowNumber).Item("Carnet_Adresse") ' 
        Me.Carnet_Ville.Text = Dtt.Rows(RowNumber).Item("Carnet_Ville") '
        Me.Carnet_CP.Text = Dtt.Rows(RowNumber).Item("Carnet_CP") ' 
        Me.Carnet_Pays.Text = Dtt.Rows(RowNumber).Item("Carnet_Pays") ' 
        Me.Carnet_Tél.Text = Dtt.Rows(RowNumber).Item("Carnet_Tél") '
        Me.Btn_Aj.Enabled = False
        '-------------------------
        With Me.DataGridView1
            'Une ligne sur 2 en bleue
            .RowsDefaultCellStyle.BackColor = Color.White
            .AlternatingRowsDefaultCellStyle.BackColor = Color.Blue
            'Interdir la selection de plusieurs cellules
            .MultiSelect = True
            'Empeche la saisie dans les cellules (en faite, le permet par
            'programmation)
            .EditMode = DataGridViewEditMode.EditProgrammatically
        End With
        'Gestion des en-têtes de colonne
        With DataGridView1.ColumnHeadersDefaultCellStyle '
            .BackColor = Color.Red 'ça marche pas!!??
            .ForeColor = Color.Blue
            .Font = New Font(DataGridView1.Font, FontStyle.Italic) ' en gras
        End With
       
        ''--------------------------
        'Dim cn1 As New OleDbConnection(Chemin)
        'Dim rd1 As OleDbDataReader
        'Dim sql1 As String
        'Try
        '    cn1.Open()
        'Catch ex As Exception
        '    MsgBox(ex.Message)
        'End Try
        'sql1 = "SELECT Carnet.Carnet_NomPren FROM Carnet GROUP BY Carnet.Carnet_NomPren "
        ''Instancer un objet Commande & connexion de l'objet Command
        'Dim Cmd1 As New OleDbCommand()
        'Cmd1 = cn1.CreateCommand
        'Cmd1.CommandText = sql1
        'Cmd1.Connection = cn1
        'rd1 = Cmd1.ExecuteReader()
        'Do While rd1.Read()
        '    txtRech1.Items.Add(rd1.GetValue(0)) '
        'Loop
        'rd1.Close()
        'cn1.Close()
        '------------------------------

        cn.Close()

    End Sub
    Private Sub BtnDébut_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnDébut.Click
        RowNumber = 0 'pour la première.


        Me.Carnet_ref.Text = Dtt.Rows(RowNumber).Item("Carnet_ref")
        Me.Carnet_NomPren.Text = Dtt.Rows(RowNumber).Item("Carnet_NomPren") '
        Me.Carnet_DateNaiss.Text = Dtt.Rows(RowNumber).Item("Carnet_DateNaiss") ' 
        Me.Carnet_Adresse.Text = Dtt.Rows(RowNumber).Item("Carnet_Adresse") ' 
        Me.Carnet_Ville.Text = Dtt.Rows(RowNumber).Item("Carnet_Ville") '
        Me.Carnet_CP.Text = Dtt.Rows(RowNumber).Item("Carnet_CP") ' 
        Me.Carnet_Pays.Text = Dtt.Rows(RowNumber).Item("Carnet_Pays") ' 
        Me.Carnet_Tél.Text = Dtt.Rows(RowNumber).Item("Carnet_Tél")
    End Sub
    Private Sub BtnSuiv_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnSuiv.Click
        '---------------------------------
       

        If RowNumber >= 0 And RowNumber < Dtt.Rows.Count - 1 Then ''
            RowNumber += 1
            'incrémente le numéro de la ligne en cours puis on affiche.
            Me.Carnet_ref.Text = Dtt.Rows(RowNumber).Item("Carnet_ref")
            Me.Carnet_NomPren.Text = Dtt.Rows(RowNumber).Item("Carnet_NomPren") '
            Me.Carnet_DateNaiss.Text = Dtt.Rows(RowNumber).Item("Carnet_DateNaiss") ' 
            Me.Carnet_Adresse.Text = Dtt.Rows(RowNumber).Item("Carnet_Adresse") ' 
            Me.Carnet_Ville.Text = Dtt.Rows(RowNumber).Item("Carnet_Ville") '
            Me.Carnet_CP.Text = Dtt.Rows(RowNumber).Item("Carnet_CP") ' 
            Me.Carnet_Pays.Text = Dtt.Rows(RowNumber).Item("Carnet_Pays") ' 
            Me.Carnet_Tél.Text = Dtt.Rows(RowNumber).Item("Carnet_Tél")
        End If
    End Sub
    Private Sub BtnPécéd_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnPécéd.Click
        If RowNumber > 0 And RowNumber <= Dtt.Rows.Count - 1 Then 'RowNumber >= 0
            RowNumber -= 1 'pour la précédente.

            Me.Carnet_ref.Text = Dtt.Rows(RowNumber).Item("Carnet_ref")
            Me.Carnet_NomPren.Text = Dtt.Rows(RowNumber).Item("Carnet_NomPren") '
            Me.Carnet_DateNaiss.Text = Dtt.Rows(RowNumber).Item("Carnet_DateNaiss") ' 
            Me.Carnet_Adresse.Text = Dtt.Rows(RowNumber).Item("Carnet_Adresse") ' 
            Me.Carnet_Ville.Text = Dtt.Rows(RowNumber).Item("Carnet_Ville") '
            Me.Carnet_CP.Text = Dtt.Rows(RowNumber).Item("Carnet_CP") ' 
            Me.Carnet_Pays.Text = Dtt.Rows(RowNumber).Item("Carnet_Pays") ' 
            Me.Carnet_Tél.Text = Dtt.Rows(RowNumber).Item("Carnet_Tél")
        End If
    End Sub

    Private Sub BtnFin_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnFin.Click
        RowNumber = Dtt.Rows.Count - 1 'pour la dernière.

        Me.Carnet_ref.Text = Dtt.Rows(RowNumber).Item("Carnet_ref")
        Me.Carnet_NomPren.Text = Dtt.Rows(RowNumber).Item("Carnet_NomPren") '
        Me.Carnet_DateNaiss.Text = Dtt.Rows(RowNumber).Item("Carnet_DateNaiss") ' 
        Me.Carnet_Adresse.Text = Dtt.Rows(RowNumber).Item("Carnet_Adresse") ' 
        Me.Carnet_Ville.Text = Dtt.Rows(RowNumber).Item("Carnet_Ville") '
        Me.Carnet_CP.Text = Dtt.Rows(RowNumber).Item("Carnet_CP") ' 
        Me.Carnet_Pays.Text = Dtt.Rows(RowNumber).Item("Carnet_Pays") ' 
        Me.Carnet_Tél.Text = Dtt.Rows(RowNumber).Item("Carnet_Tél")
    End Sub

    
    Private Sub Btn_Aj_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Btn_Aj.Click

        Try
            Dtrw = Dts.Tables("Carnet").NewRow()
            'Modifier les valeurs des champs en récupérant le contenu
            'des(TextBox)
            Dtrw("Carnet_ref") = Me.Carnet_ref.Text
            Dtrw("Carnet_NomPren") = Me.Carnet_NomPren.Text '
            Dtrw("Carnet_DateNaiss") = Me.Carnet_DateNaiss.Text
            Dtrw("Carnet_Adresse") = Me.Carnet_Adresse.Text
            Dtrw("Carnet_Ville") = Me.Carnet_Ville.Text
            Dtrw("Carnet_CP") = Me.Carnet_CP.Text '
            Dtrw("Carnet_Pays") = Me.Carnet_Pays.Text
            Dtrw("Carnet_Tél") = Me.Carnet_Tél.Text
            Dts.Tables("Carnet").Rows.Add(Dtrw)
            CmdB = New OleDbCommandBuilder(Dta) 'Pour modifier les valeurs changées dans le DataAdapter
            Dta.Update(Dts, "Carnet") 'Mise à jour
            'On vide le DataSet et on le 'recharge' de nouveau.
            Dts.Clear()
            Dta.Fill(Dts, "Carnet")
            Dtt = Dts.Tables("Carnet")
        Catch ex As Exception
            MsgBox(ex.Message)
        End Try
    End Sub
    Private Sub Btn_Modif_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Btn_Modif.Click
        ' Extraire l'enregistrement courant
        '------------------
      
        '---------------------
        Dtrw = Dts.Tables("Carnet").Rows(RowNumber)
        'Modifier les valeurs des champs en récupérant le contenu
        'des(TextBox)
        Dtrw("Carnet_ref") = Me.Carnet_ref.Text
        Dtrw("Carnet_NomPren") = Me.Carnet_NomPren.Text '
        Dtrw("Carnet_DateNaiss") = Me.Carnet_DateNaiss.Text
        Dtrw("Carnet_Adresse") = Me.Carnet_Adresse.Text
        Dtrw("Carnet_Ville") = Me.Carnet_Ville.Text
        Dtrw("Carnet_CP") = Me.Carnet_CP.Text '
        Dtrw("Carnet_Pays") = Me.Carnet_Pays.Text
        Dtrw("Carnet_Tél") = Me.Carnet_Tél.Text

        'Pour modifier les valeurs changées dans le DataAdapter
        CmdB = New OleDbCommandBuilder(Dta)
        'Mise à jour
        Dta.Update(Dts, "Carnet")
        'On vide le DataSet et on le 'recharge' de nouveau.
        Dts.Clear()
        Dta.Fill(Dts, "Carnet")
        Dtt = Dts.Tables("Carnet")
    End Sub

    Private Sub Btn_Eff_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Btn_Eff.Click
        Dtrw = Dts.Tables("Carnet").NewRow()
        'Modifier les valeurs des champs en récupérant le contenu
        'des(TextBox)

        'Effacer l''enregistrement en cours:
        Dts.Tables("Carnet").Rows(RowNumber).Delete()
        'Pour modifier les valeurs changées dans le DataAdapter
        CmdB = New OleDbCommandBuilder(Dta)
       
        Dtrw("Carnet_ref") = Me.Carnet_ref.Text
        Dtrw("Carnet_NomPren") = Me.Carnet_NomPren.Text '
        Dtrw("Carnet_DateNaiss") = Me.Carnet_DateNaiss.Text
        Dtrw("Carnet_Adresse") = Me.Carnet_Adresse.Text
        Dtrw("Carnet_Ville") = Me.Carnet_Ville.Text
        Dtrw("Carnet_CP") = Me.Carnet_CP.Text '
        Dtrw("Carnet_Pays") = Me.Carnet_Pays.Text
        Dtrw("Carnet_Tél") = Me.Carnet_Tél.Text

        'Mise à jour
        Dta.Update(Dts, "Carnet")
        'On vide le DataSet et on le 'recharge' de nouveau.
        Dts.Clear()
        Dta.Fill(Dts, "Carnet")
        Dtt = Dts.Tables("Carnet")
    End Sub
   

    Private Sub Btn_rech_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Btn_rech.Click
        Btn_rech.Enabled = True
        BtnNouv.Enabled = False
        Btn_Aj.Enabled = False


        If Btn_rech.Text = "Recherche" Then
            Btn_rech.Text = "Annuler"
            'on vide le DataSet pour le charger avec
            'les données de la recherche
            Dts.Clear()

            If CheckNomPren.Checked = True Then
                Me.txtRech.Visible = True
                Me.Btn_rech.Visible = True
                'recherche par caractere quelque soit sa place dans le mots
                'sql = "SELECT * FROM Carnet WHERE Carnet_NomPren LIKE '%" & txtRech.Text & "%';"
                'Recherche de mots commencant par les 1erés lettres 
                sql = "SELECT * FROM Carnet WHERE Carnet_NomPren LIKE '" & txtRech.Text & "%';"
                Cmd = New OleDbCommand(sql)
                Dta = New OleDbDataAdapter(Cmd)
                Cmd.Connection() = cn
                Dta.Fill(Dts, "Carnet")
                Dtt = Dts.Tables("Carnet")
                Dtv = Dts.Tables("Carnet").DefaultView
                Dtv.AllowEdit = True
                'si aucunes données existent pour ce nom alors
                If RowNumber > Dtt.Rows.Count - 1 Then
                    MsgBox("Il n'existe aucunes données pour le nomPrenom  !Données inexistantes...", MsgBoxStyle.Exclamation)
                    If MsgBoxResult.Ok Then
                        Btn_rech.Text = "Recherche"
                        CheckNomPren.Checked = False
                        Me.txtRech.Text = ""
                        Me.txtRech.Focus()
                    End If
                    Exit Sub

                Else

                    'sinon afichage des données dans la Datagrid
                    'et les textbox

                    DataGridView1.DataSource = Dtv
                    Me.Carnet_ref.Text = Dtt.Rows(RowNumber).Item("Carnet_ref")
                    Me.Carnet_NomPren.Text = Dtt.Rows(RowNumber).Item("Carnet_NomPren") '
                    Me.Carnet_DateNaiss.Text = Dtt.Rows(RowNumber).Item("Carnet_DateNaiss") ' 
                    Me.Carnet_Adresse.Text = Dtt.Rows(RowNumber).Item("Carnet_Adresse") ' 
                    Me.Carnet_Ville.Text = Dtt.Rows(RowNumber).Item("Carnet_Ville") '
                    Me.Carnet_CP.Text = Dtt.Rows(RowNumber).Item("Carnet_CP") ' 
                    Me.Carnet_Pays.Text = Dtt.Rows(RowNumber).Item("Carnet_Pays") ' 
                    Me.Carnet_Tél.Text = Dtt.Rows(RowNumber).Item("Carnet_Tél")
                    Btn_Modif.Enabled = True
                    Btn_Eff.Enabled = True

                    BtnDébut.Enabled = True
                    BtnSuiv.Enabled = True
                    BtnPécéd.Enabled = True
                    BtnFin.Enabled = True

                End If

            ElseIf CheckVille.Checked = True Then
                Me.txtRech.Visible = True
                Me.txtRech.Text = ""
                Me.Btn_rech.Visible = True
                'création de la requête,exécution de la commande,
                'remplissage du DataAdapter,du DataSet et de la DataTable
                sql = "select * from Carnet where Carnet_Ville = '" & txtRech.Text & "'"
                Cmd = New OleDbCommand(sql)
                Dta = New OleDbDataAdapter(Cmd)
                Cmd.Connection() = cn
                Dta.Fill(Dts, "Carnet")
                Dtt = Dts.Tables("Carnet")
                Dtt = Dts.Tables("Carnet")
                Dtv = Dts.Tables("Carnet").DefaultView
                Dtv.AllowEdit = True
                '---------------------------------------


                'si aucunes données existent pour ce nom alors
                If RowNumber > Dtt.Rows.Count - 1 Then


                    MessageBox.Show("Il n'existe aucunes données pour la ville " & txtRech.Text & " !", "Données inexistantes...", MessageBoxButtons.OK, MessageBoxIcon.Information)
                    If MsgBoxResult.Ok Then
                        Me.Btn_rech.Text = "Recherche"
                        Me.CheckVille.Checked = False
                        Me.txtRech.Text = ""
                        Me.txtRech.Focus()
                    End If
                    'Exit Sub

                Else

                    'sinon afichage des données dans la Datagrid
                    'et les textbox
                    DataGridView1.DataSource = Dtv
                    Me.Carnet_ref.Text = Dtt.Rows(RowNumber).Item("Carnet_ref")
                    Me.Carnet_NomPren.Text = Dtt.Rows(RowNumber).Item("Carnet_NomPren") '
                    Me.Carnet_DateNaiss.Text = Dtt.Rows(RowNumber).Item("Carnet_DateNaiss") ' 
                    Me.Carnet_Adresse.Text = Dtt.Rows(RowNumber).Item("Carnet_Adresse") ' 
                    Me.Carnet_Ville.Text = Dtt.Rows(RowNumber).Item("Carnet_Ville") '
                    Me.Carnet_CP.Text = Dtt.Rows(RowNumber).Item("Carnet_CP") ' 
                    Me.Carnet_Pays.Text = Dtt.Rows(RowNumber).Item("Carnet_Pays") ' 
                    Me.Carnet_Tél.Text = Dtt.Rows(RowNumber).Item("Carnet_Tél")

                    Btn_Modif.Enabled = True
                    Btn_Eff.Enabled = True

                    BtnDébut.Enabled = True
                    BtnSuiv.Enabled = True
                    BtnPécéd.Enabled = True
                    BtnFin.Enabled = True

                End If
            ElseIf Me.CheckNomPren.Checked = False And Me.CheckVille.Checked = False Then
                'aucune case n'est cochées donc
                Me.txtRech.Visible = False
                Me.Btn_rech.Visible = False
                Btn_rech.Text = "Annuler"
                MsgBox("clicker sur le bouton de Annuler pour revenir au début!, Erreur...", MsgBoxStyle.Information, "Clicker encore")
                If MsgBoxResult.Ok Then
                    Me.Btn_rech.Text = "Recherche"
                End If
            End If
        ElseIf Me.Btn_rech.Text = "Annuler" Then
            Btn_rech.Text = "Recherche"
            Me.Btn_Aj.Enabled = True
            Me.BtnNouv.Enabled = True
            'initialisation des contrôle pour une recherche
            Me.txtRech.Text = ""
            Me.CheckNomPren.Checked = False
            Me.CheckVille.Checked = False

            'on vide le DataSet pour le charger avec
            'toutes les données de la table

            Dts.Clear()
            sql = "select * from Carnet "
            Cmd = New OleDbCommand(sql)
            Dta = New OleDbDataAdapter(Cmd)
            Cmd.Connection() = cn
            Dta.Fill(Dts, "Carnet")
            Dtt = Dts.Tables("Carnet")
            Dtv = Dts.Tables("Carnet").DefaultView
            Dtv.AllowEdit = True
            DataGridView1.DataSource = Dtv
            If RowNumber < 0 Then Exit Sub
            ''Lors de l'ouverture de la BD, s'il n'y a aucun enregistrement
            If RowNumber > Dtt.Rows.Count - 1 Then Exit Sub
            Me.DataGridView1.DataSource = Dtv
            Me.Carnet_ref.Text = Dtt.Rows(RowNumber).Item("Carnet_ref")
            Me.Carnet_NomPren.Text = Dtt.Rows(RowNumber).Item("Carnet_NomPren") '
            Me.Carnet_DateNaiss.Text = Dtt.Rows(RowNumber).Item("Carnet_DateNaiss") ' 
            Me.Carnet_Adresse.Text = Dtt.Rows(RowNumber).Item("Carnet_Adresse") ' 
            Me.Carnet_Ville.Text = Dtt.Rows(RowNumber).Item("Carnet_Ville") '
            Me.Carnet_CP.Text = Dtt.Rows(RowNumber).Item("Carnet_CP") ' 
            Me.Carnet_Pays.Text = Dtt.Rows(RowNumber).Item("Carnet_Pays") ' 
            Me.Carnet_Tél.Text = Dtt.Rows(RowNumber).Item("Carnet_Tél")
            '--------------------------
            Btn_rech.Text = "Recherche"
            ' vider le datagridview
            'Me.DataGridView1.Rows.Clear()
        End If


    End Sub

                '------------------------------

   

    Private Sub BtnNouv_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnNouv.Click

        If BtnNouv.Text = "Nouveau" Then

            Dim tb() As TextBox = {Carnet_ref, Carnet_NomPren, Carnet_DateNaiss, Carnet_Adresse, _
                                 Carnet_Ville, Carnet_CP, Carnet_Pays, Carnet_Tél}
            Dim x As Byte
            For x = 1 To 7
                tb(x).Text = ""
            Next
            Me.BtnNouv.Text = "Annuler"
            Me.Btn_Aj.Enabled = True
        Else
            If RowNumber > Dtt.Rows.Count - 1 Then

                Btn_Aj.Enabled = False
                BtnNouv.Text = "Ajouter"

            Else

                'aller au début du fichier
                RowNumber = 0
                If RowNumber < 0 Then Exit Sub
                ''Lors de l'ouverture de la BD, s'il n'y a aucun enregistrement
                If RowNumber > Dtt.Rows.Count - 1 Then Exit Sub
                ' Dtt.Rows(Numéro de lignes).Item( Nom de colonne) donne
                Me.Carnet_ref.Text = Dtt.Rows(RowNumber).Item("Carnet_ref")
                Me.Carnet_NomPren.Text = Dtt.Rows(RowNumber).Item("Carnet_NomPren") '
                Me.Carnet_DateNaiss.Text = Dtt.Rows(RowNumber).Item("Carnet_DateNaiss") ' 
                Me.Carnet_Adresse.Text = Dtt.Rows(RowNumber).Item("Carnet_Adresse") ' 
                Me.Carnet_Ville.Text = Dtt.Rows(RowNumber).Item("Carnet_Ville") '
                Me.Carnet_CP.Text = Dtt.Rows(RowNumber).Item("Carnet_CP") ' 
                Me.Carnet_Pays.Text = Dtt.Rows(RowNumber).Item("Carnet_Pays") ' 
                Me.Carnet_Tél.Text = Dtt.Rows(RowNumber).Item("Carnet_Tél")
                Me.BtnNouv.Text = "Nouveau"
                Me.Btn_Aj.Enabled = False
            End If
        End If
    End Sub

    Private Sub CheckNomPren_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CheckNomPren.CheckedChanged
        Me.txtRech.Visible = True
        Me.Btn_rech.Visible = True
    End Sub

    Private Sub CheckVille_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CheckVille.CheckedChanged
        Me.txtRech.Visible = True
        Me.Btn_rech.Visible = True
    End Sub

    
   
    Private Sub Btn_rech_Click_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Btn_rech.Click

    End Sub

    Private Sub txtRech_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtRech.TextChanged

    End Sub
End Class

Conclusion

Login=Ams
Mot de Passe= Diop
les majuscules ont leur importance
 

Fichier Zip

Pour les "Membres Club", vous pouvez télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip

Historique

08 octobre 2008 16:37:12 :
petite mise à jour car erreur de mise en ligne
12 octobre 2008 21:57:42 :
Refaire un zip car certain trouve ke le zip n'est pas accessible
24 octobre 2008 03:41:37 :
Le module de recherche a été remanié et permet une recherche par caractére. le login est opérationnel.Le formulaire principal a son look plus tendance.
24 octobre 2008 03:55:28 :
Mise à jour du module de recherche qui peut s'executer par le début des lettres d'un mots. Le login est opérationnel. Le design du formulaire principal est plus tendance.

Commentaires et avis

signaler à un administrateur
Commentaire de Willi le 10/10/2008 17:19:07 administrateur CS

Du classique pour ce genre de source...
Tu pourrais créer un "petit" modèle objet pour manipuler le contenu d'une base access type "carnet d'adresses" il y a aurai eu un réel intêret là à cette source !

signaler à un administrateur
Commentaire de gillardg le 11/10/2008 02:24:29

1 label actif c'est joli, mais avec les sources se serait mieux  ( si c'est possible )

2 le login form c'est bien, mais avec du code pour gérer le login c'est mieux :))

3 pas de gestion d'erreur !
je ne note pas en attendant une vraie mise à jour avec une gestion d'erreur complète que ça ne plante pas quand on veut effacer le dernier enregistrement, un vrai login form qui sert à quelque chose

signaler à un administrateur
Commentaire de juleshervey le 27/11/2008 01:28:50

bonsoir...
Comme vous pouvez le constater j'ai aime ce petit code étant donne que c'est vraiment comprehensible pour un débutant comme moi.
mais y'a une partie que j'ai voulu modifier,avec le bouton ajouter prenons le cas si dans ma base de donnée Access carnet_postal et carnet_tel etait en numérique  pas en text.
cela attire un peu mon attention parce que en modifiant cette partie il n'ajoute pas mais ça plante

Dta.Update(Dts, "Carnet")// à ce niveau erreur de synthaxe dans l'instruction insert into

essaie de jeter un petit coup d'oeuil à ce niveau en modifiant les valeurs de postal et tel en numérique et enregistre voir s'il renvoie les données dans la bd mais qui marche avec les valeurs en text.
je te remercie    

signaler à un administrateur
Commentaire de juleshervey le 27/11/2008 20:00:54

bonjour...
c'est encore moi juste sur votre petit code que j'ai voulu adapter à mon programme mais le grand problème qui fais plante le programme c'est un Datatimepicker que je veux en cliquant sur le bouton enregistrer qu'il renvoie mes données dans la bd access

voici le code

Private Sub btnenregistrer_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnenregistrer.Click

        'si un champ n'est pas rempli fin de procedure

        If Me.txtdate.Text = "" Then

            MessageBox.Show("Vous devez obligatoirement remplir vos champs :")

            Exit Sub

        End If

        'creation d'une nouvelle ligne avec les donnees de textbox
        dtr = dts.Tables("essai").NewRow

        dtr("date") = Me.txtdate.Value
        'ajout de la ligne dans le dataset
        dts.Tables("essai").Rows.Add(dtr)

        'creation et execution de commanBuilder pour mettre à jour le dataadapter
        cmdb = New OleDb.OleDbCommandBuilder(dta)
        'mise à jour du dataadapter à partir des donnees de commandBuilder
        dta.Update(dts, "essai")//Erreur de syntaxe dans l'instruction INSERT INTO.


        dts.Clear()
        dta.Fill(dts, "essai")
        dtt = dts.Tables("essai")

        matable = dts.Tables("equipe")
        dtgriddate.DataSource = matable

        'aller au debut du fichier
        rownum = 0

        'afficher les donnes dans les textbox

        Me.txtnum.Text = dtt.Rows(rownum).Item("code_equip")
        Me.txtdate.Value = dtt.Rows(rownum).Item("date")



        btnprmier.Enabled = True
        btnprecedent.Enabled = True
        btnsuivant.Enabled = True
        btndernier.Enabled = True

        btnmodif.Enabled = True
        btnsupprimer.Enabled = True
        btnajout.Enabled = True
        btnenregistrer.Enabled = False

        btnajout.Text = "Ajouter"

    End Sub  
je compte sur vous
merci

Ajouter un commentaire

Discussions en rapport avec ce code source dans le forum

Recherche dans un fichier excel [ par Nixo ] Voilà , je shouaite executer un recherche par "site" (une certaine colonne du document excel) dans un fichier excel mais je ne connais pas les equiva Recherche grille avec filtre [ par Troopers ] Salut!!Je cherche une grille avec une ligne de filtre comme première ligne.C'est à dire que l'utilisateur peut entrer des caractères dans la première recherche database loto francais [ par McNinja ] Bonjour, je recherche la base de données du loto francais depuis sa creation. Je n'arrive pas à la trouver via google. Si quelqu'un pouvait me renseig VBAccess Methode ApplyFilter [ par or_eli ] Bonjour à tous, j'ai crée un formulaire en Access gérant les baux de plusieurs immeubles. j'ai fait un filtre par immeuble en appliquant la methode A un petit coup de main svp [ par TTHIERRY ] bonjour,je souhaiterai faire un UserForm de recherche&nbsp;de suppression et de creation,il y a un Combobox1 pour la recherche cette recherche ce fait [vb.net]Filtre de recherche dans une dataGrid [ par mik67 ] Bonjour &#224; tous,Je voudrais effectuer une recherche dans un datagrid grace &#224; un filtre.En tapant les 1eres lettres dans une textbox par exemp RECHERCHE en VBA [ par sergeszebe ] salut&#233;je vais une formulaire connection.j'ai table T_User(login,Nom,Prenom,motdepasse)l'utilisateur choisit son login dans une zone de listeil sa Recherche de la ligne dans une database via un combobox [ par aydendeliadon ] Bonjour,Voil&#224; dans un combo box, j'affiche les r&#233;sultats d'une requ&#234;te sql d'une base de donn&#233;e. Maintenant pour des raisons prati recherche dans une table [ par FRANCISKO02 ] Bonjour, je voudrais modifier un fichier access2000 en vba.J ai une table avec :&nbsp;&nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nbsp; &nbsp;&nb recherche dans un DataGridView vb2005express [ par vercomax ] Bonjour,Je souhaite me positionner sur une ligne dans un datagridview en fonction d'une recherche dans une de ses colonnes.dans un textbox l'utilisate


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements

Comparez les prix Nouvelle version

Photothèque Nouveau !



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), 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,452 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.