Besoin d'aide

Signaler
Messages postés
33
Date d'inscription
lundi 24 mai 2004
Statut
Membre
Dernière intervention
27 janvier 2005
-
Messages postés
615
Date d'inscription
mercredi 18 décembre 2002
Statut
Membre
Dernière intervention
4 juillet 2012
-
bonjour a tous,
je suis actuellement sur un projet visual basic avec une base de données. Sur une feuille, dans une zone de texte, j'aimerai faire apparaitre le dernier numéro de facture se trouvant dans la base. Pourriez vous me dire quel sera le code pour çà? Merci d'avance

1 réponse

Messages postés
615
Date d'inscription
mercredi 18 décembre 2002
Statut
Membre
Dernière intervention
4 juillet 2012

Ta question est assez sommaire, tu ne dis pas de quel façon tu veus attaquer ta base de donnée, mais voici un petit exemple en espérant que cela pourras t'aider.
Pour cet exemple il te faut. une base de donnée que l'on nommera Mybase.mdb une table que l'on nommera Facture dans laquel on crée les champs suivants:

IDFacture (numéroauto) clé primaire indexé sans doublons un numéro automatique qui vas s'incrémenter à chaque enregistrement.
N°Facture (Entier) indexé sans doublons
Client (Texte) Nom du Client
Montant (Monétaire)
les divers champs annexes que tu désire dans ta table ......

Ajoute une dixaine d'enregistrements

Ouvre un nouveau projet VB et sur une form ajoute les éléments suivants

- un TextBoxe (Text1)
- un ComboBoxe (Combo1)
- un control Adodc (Adodc1) Composant Microsoft ADO Data Control 6.0 MSADODC.OCX

Voici le code à ajouter dans ta form
************************************************************************
Option Explicit
Dim Sql_Str As String
Dim sConnection As String


Private Sub Combo1_Change()
Combo1_Click
End Sub


Private Sub Combo1_Click()

'On prépare la requête SQL DESC = tri du plus grand au plus petit
Sql_Str = "SELECT Facture.* " _
& " From Facture ORDER BY " & Combo1.Text & " DESC"
'Paramètres de connection
sConnection = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path _
& "\MyBase.mdb" & ";Persist Security Info=False"
'On Initialise le control ADODC
With Adodc1
.ConnectionString = sConnection
.RecordSource = Sql_Str
End With
'On raffraichit le recordset suite à la requête
Adodc1.Refresh
'On attribue le resultat du champ N°Facture au TextBox
Text1.Text = Adodc1.Recordset.Fields![N°Facture].Value


End Sub


Private Sub Form_Load()


'on remplis la list des options du combo
Combo1.AddItem ("Facture.N°Facture") 'Recherche selon N°Facture
Combo1.AddItem ("Facture.Client") 'Recherche selon Client
Combo1.AddItem ("Facture.Montant") 'Recherche selon Montant
'On initialise le combo1 sur recherche par N° de Facture
Combo1.Text = "Facture.N°Facture"


End Sub
**********************************************************************
Dans cet exemple le combo sert a sélectionner le champ que l'on utilise pour faire le tri
DESC définit que l'on veut trier par ordre décroissant.

Voilà j'espère que cela pourras te venir en aide

Pascal Laurençon