bjipowa
Messages postés47Date d'inscriptionmercredi 18 août 2004StatutMembreDernière intervention29 mars 2007
-
31 mai 2005 à 10:19
cs_ITALIA
Messages postés2169Date d'inscriptionvendredi 20 avril 2001StatutMembreDernière intervention30 juin 2009
-
1 juin 2005 à 08:19
Bonjour,
Je suis une noob en vb, mais je dois créer un projet pour mon BTS.
Comment faut il que je connecte ma base de donnée afin de pouvoir insérer des requetes ajout (isert), modifier (update) et suprimer (delete) dans mes Formulaire (feuille VB) ??
J'ai déja regarder de nombreuses source mais je ne comprend pas l'histoire d'utiliser soit DAO, etc... Quelqu'un peut il m'aider SVP ??
De plus, est ce que quelqu'un sait comment récupérer la valeur d'un TEXT1 d'une Feuille1 (ou d'une variable) dans un TEXT2 d'une feuille2(ou une autre variable) ??
tof008
Messages postés695Date d'inscriptionjeudi 5 mai 2005StatutMembreDernière intervention 5 janvier 201033 31 mai 2005 à 10:24
Ben moi oci je suis en stage pour mon bts donc voila qques infos qui pourrait t'aider.... :
donc pour te connecter à ta base de données en ADODB :
Dim con As Connection
'tudeclare ta connection
Dim rs As New ADODB.Recordset
'declaration d'une requete
Set con = New ADODB.Connection
'connection à la base
con.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source= " & "Chemin de ta base"
con.Open
Set rs = New Recordset
rs.Open "select * from [ta table] where "ta condition" ", con, adOpenDynamic, adLockOptimistic
rs.MoveFirst
Ensuite pour recuperer la valeur d'une autre feuille :
cs_ITALIA
Messages postés2169Date d'inscriptionvendredi 20 avril 2001StatutMembreDernière intervention30 juin 20099 31 mai 2005 à 11:58
En DAO c'est à dire en Cochant Projet---Références--Microsoft DAO 3.51 Object Library
Dans ton Code pour l'execution d'une Requete:
Set Db = OpenDatabase("C:\MaBase.mdb") ' Définition base de donnée Set Donnee Db.OpenRecordset("SELECT Adresse FROM MaTable WHERE Fournisseur 'toto'")
If Donnee.RecordCount <> 0 Then
Text1.Text= Donnee("Adresse")
End If
Set Db=Nothing
Set Donnee=Nothing
tof008
Messages postés695Date d'inscriptionjeudi 5 mai 2005StatutMembreDernière intervention 5 janvier 201033 31 mai 2005 à 14:39
ben moi je prends l'ADO parce que j'ai appris à le faire comme ca... On m'a dit aussi qu'il était plus evolué, mais je pense que chacun à ses habitudes, donc à toi de faire ton choix...
cs_ITALIA
Messages postés2169Date d'inscriptionvendredi 20 avril 2001StatutMembreDernière intervention30 juin 20099 31 mai 2005 à 14:48
Si ca fonctionne sans ces 2 lignes ...tu peux tester..c'est simplememnt pour liberer la memoire que tu as préalablement Reservé avec le Set Db= et le Set Donnee=
bjipowa
Messages postés47Date d'inscriptionmercredi 18 août 2004StatutMembreDernière intervention29 mars 2007 31 mai 2005 à 15:03
Oki c cool!!
Une derniere petite question et pares, je pense que vous m'aurez bien aidé les mec c sympa :
Je veux faire une requete insert et insérer dasn ma table la valeur par exemple d'un champs de texte ou d'une variable
exemple de mon code :
Private Sub Command1_Click()
Dim ai As Integer
ai = ""
Dim af As Integer
af = ""
Dim Newnum As Integer
' Recherche de l'action immediate a implementer a la fnci
If Creat.tr_manuel.Value = True Then
ai = 7
End If
If Creat.bloc_info.Value = True Then
ai = 6
End If
If Creat.tr_info.Value = True Then
ai = 8
End If
If Creat.tri.Value = True Then
ai = 9
End If
' Recherche de l'action finale à implementer a la fnci
If Creat.destruction.Value = True Then
af = 1
End If
If Creat.rf.Value = True Then
af = 2
End If
If Creat.prorogation.Value = True Then
af = 3
End If
If Creat.info.Value = True Then
af = 4
End If
' Définition base de donnée
Set db = OpenDatabase("G:\BTS\PTI\VB\FNCI\fnci.mdb")
' requete
Set Donnee = db.OpenRecordset("SELECT max(num_fnci) AS max from fnci")
' si il y a des resultats
If Donnee.RecordCount <> 0 Then
' on donne a la variable le numero de fnci trouvée et on incremente
Newnum = Donnee("max") + 1
End If
Set Insert = db.OpenRecordset("INSERT INTO fnci(Num_fnci,Date_creation,Description_fnci, Cause_fnci,Nom,num_ai,num_af) VALUES '', '...','...,'...')
Set db = Nothing
Set Donnee = Nothing
End Sub
Je met directement entre mes ' ' le nom de ma variabl ou de mon champs texte ou est ce plus complexe ??