VisualBasic Script

ilSPARTIATEli Messages postés 7 Date d'inscription mardi 7 mars 2006 Statut Membre Dernière intervention 26 mai 2008 - 16 mai 2008 à 11:10
ilSPARTIATEli Messages postés 7 Date d'inscription mardi 7 mars 2006 Statut Membre Dernière intervention 26 mai 2008 - 23 mai 2008 à 11:05
Bien le bonjour, voila je ne connais que très peu le bvs, et je recherche du code qui peut me permetre de me connecter a une base de donnée Access et d'y ajouter des informations telle que des noms et prénoms, malheureusement après avoir épié le web de pars et d'autres, je trouvé des bout de code ou bien  du code en entier, mais je n'arrive pas a faire quel que chose.

les sites que j'ai trouvé :

http://drq.developpez.com/vb/tutoriels/ADO/Chapitre2/
http://www.vbfrance.com/codes/TUTORIAL-POUR-ADODB-ADO_4724.aspx
http://www.vbfrance.com/infomsg_CONNEXION-ADO-EXCEL-VERS-ACCESS-HELP_15991.aspx
http://www.vbfrance.com/infomsg_PB-EXECUTION-REQUETES-AVEC-OBJETS-ADO-VBA-ACCESS_17079.aspx
http://drq.developpez.com/vb/tutoriels/ADO/Chapitre3/

malgé sa je n'arrive pas a faire quel que chose de coérant.

merci d'avance
____________________________________________________

--->TRY NOT. DO, OR DO NOT, THERE IS NO TRY.<---

-> Io dormirò tranquillo perchè so che il mio peggior nemico veglia su di me.
--> Remember, concentrate on the moment. Feel... don't think. Use your instincts.

11 réponses

jrivet Messages postés 7392 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
16 mai 2008 à 11:15
Salut,
OUi mais la il n'y a pas de question,
Nous avons plus l'impression que tout demande de le faire à ta place.

Qu'a tu fais jusqu'à présent? le code?
@+: Ju£i?n
Pensez: Réponse acceptée
0
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
16 mai 2008 à 11:17
sur quel point précis bloques-tu ?

(code)
0
ilSPARTIATEli Messages postés 7 Date d'inscription mardi 7 mars 2006 Statut Membre Dernière intervention 26 mai 2008
16 mai 2008 à 11:35
Bonjour, et merci d'avoir répondu.

alors non je ne cherche pas a se que quelqu'un écrive mon code, juste des des informations pour savoir comment parvenir a écrir mon code, alros voila ou j'en suis :

____

 Dim DBAccess, Rs, NameField, DataToAdd
  
     'PathMDB = "test.mdb"
     PathFile = "test.txt"  
   
     'database
     Set DBAccess = CreateObject("ADODB.Connection")
     StrAccess = "DRIVER={MicrosofSt Access Driver (*.mdb)}; DBQ=Test.mdb"
     DBAccess.Open(StrAccess)
   
     'Recordset
     Set Rs = CreateObject("ADODB.Recordset")
     'Rs.CursorType = adOpenStatic
     'Rs.LockType = adLockOptimistic
     Rs.Open "SELECT * FROM TableClient" , StrAccess
     Rs.AddNew
   
     'Text file
     Set FSO = CreateObject("Scripting.FileSystemObject")
     Set FileRead = FSO.openTextFile(PathFile ,ForReading, True)
     Do While Not FileRead.AtEndOfStream     NameField FileRead.ReadLine ' lecture ligne impaire nom du champ     DataToAdd FileRead.ReadLine ' lecture ligne paire donnée correspondante
     ' fill database fields
     Rs.Fields(NameField) = DataToAdd
     Loop
     FileRead.Close
     'Next
   
     Rs.Update
     Rs.Close
     Set Rs = Nothing
   
     dbaccess.Close
     Set dbaccess= Nothing

___

il me fait comme erreur : Microsoft OLE DB Provider for ODBC Drivers: [Microsoft][Gestionnaire de pilotes ODBC] Source de données introuvable et nom de pilote non spécifié
 
j'ai pensai que la source de donnée devais entre soi mon txt ou bien mon mdb, mais en se qui conscerne le pilote je coule.

sinon j'ai essayé sa :

_____

Dim cn As ADODB.Connection
Dim rs As ADODB.Recordset
Dim cmd As ADODB.Command

Set cn = CreateObject("ADODB.Connection")

 '------------- Open the Database ----------------
 Set cn = New ADODB.Connection
 cn.ConnectionString = " Provider=Microsoft.Jet.OLEDB.4.0;Data Source=TaBaS.mdb;Persist Security Info=False"
 cn.Open

 '-------------- Create a Command --------------
 Set cmd = New ADODB.Command
 cmd.CommandText = "authors" ' table in the database
 cmd.CommandType = adCmdTable
 cmd.ActiveConnection = cn

 '--------------- Create a Recordset --------------------
 Set rs = New ADODB.Recordset
 Set rs.Source = cmd
 rs.Open
 

 ' Now let's play with our recordset (rs)
  
 ' - to update a field in the record
 rs.Update "worker_name", "david"
 
 
 ' - NEVER FORGET TO CLOSE
 rs.Close
 cn.Close
 Set rs = Nothing
 Set cn = Nothing

____

Erreur d'exécution Microsoft VBScript: Classe non définie: 'ADODB'

je pense pas que le code soit du VBs , mais du vb ou autre

Ultérieurement , j'ai trouvé sa sur internet, j'ai pensé qu'il fallait peut etre faire quel que chose de spécial pour se connecter, mais j'en suis désolé , je n'y comprend rien

Connexion à une base de données Access sans DSN:

'Déclaration de la variable de connexion

Dim cnx As ADODB.Connection

Set cnx = New ADODB.Connection


'Définition du pilote de connexion

cnx.Provider = "Microsoft.Jet.Oledb.3.51"

'Définition de la chaîne de connexion

cnx.ConnectionString = "C:\maBase.mdb"

'Ouverture de la base de données

cnx.Open

Connexion à une base de données avec un DSN:

'Déclaration de la variable de connexion

Dim cnx As ADODB.Connection

Set cnx = New ADODB.Connection

...


'Définition de la chaîne de connexion

cnx.ConnectionString = "DSN=" & NomDuDSN & ";UID="
& NomUtilisateur & ";PWD=" & MotDePasse &
";"


'Ouverture de la base de données

cnx.Open

Dans le cas où il y a le DSN, vous n'avez plus besoin de
spécifier l'hôte sur lequel se trouve la base de données ainsi que le nom de la
base de données.

Liste des pilotes ODBC sans DSN

Driver ={Microsoft Access Driver
(*.mdb)};Dbq= chemin\nombd.mdb;Uid=NomUtilisateur;Pwd=MotDePasse;

Liste des pilotes OLEDB

Provider =Microsoft.Jet.OLEDB.4.0;Data
Source=chemin\nombd.mdb;User Id=NomUtilisateur;Password=MotDePasse;



____________________________________________________

--->TRY NOT. DO, OR DO NOT, THERE IS NO TRY.<---

-> Io dormirò tranquillo perchè so che il mio peggior nemico veglia su di me.
--> Remember, concentrate on the moment. Feel... don't think. Use your instincts.
0
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
16 mai 2008 à 11:41
StrAccess = "DRIVER={MicrosofSt Access Driver (*.mdb)}; DBQ=Test.mdb"

l'est fausse, ta connectionstring

voir

www.connectionstrings.com
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
ilSPARTIATEli Messages postés 7 Date d'inscription mardi 7 mars 2006 Statut Membre Dernière intervention 26 mai 2008
16 mai 2008 à 11:46
merci jue vais y jeter un coup d'oeil, bonne apétit

___________________________________
--->TRY NOT. DO, OR DO NOT, THERE IS NO TRY.<---

-> Io dormirò tranquillo perchè so che il mio peggior nemico veglia su di me.
--> Remember, concentrate on the moment. Feel... don't think. Use your instincts.
0
ilSPARTIATEli Messages postés 7 Date d'inscription mardi 7 mars 2006 Statut Membre Dernière intervention 26 mai 2008
16 mai 2008 à 14:29
heu, sur se que tu m'as donné je ne vois pas trop la diffèrence avec se que j'ai.

ma question est la suivante, c'est que la diffèrence entre

- un provider
ex: cn.ConnectionString = " Provider=Microsoft.Jet.OLEDB.4.0;Data Source=TaBaS.mdb;Persist Security Info=False"

et la connection comme je le fais : 
    Set DBAccess = CreateObject("ADODB.Connection")
     StrAccess = "DRIVER={MicrosofSt Access Driver (*.mdb)}; DBQ=Test.mdb"
     DBAccess.Open(StrAccess)

merci, bonns journée

______________________________________
--->TRY NOT. DO, OR DO NOT, THERE IS NO TRY.<---

-> Io dormirò tranquillo perchè so che il mio peggior nemico veglia su di me.
--> Remember, concentrate on the moment. Feel... don't think. Use your instincts.
0
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
16 mai 2008 à 14:57
MicrosofSt
0
ilSPARTIATEli Messages postés 7 Date d'inscription mardi 7 mars 2006 Statut Membre Dernière intervention 26 mai 2008
19 mai 2008 à 10:34
rebonjour ami,

témoignage que je n'ai pas avancé, le faite que je revienne

voici mon script, j'en rappelle le but : VBS qui se connecte a une base de donnée : test.mdb, qui par rapport a un ficher texte : test.txt, importe des données dans la base.

se script est le fruit de copier coller et de test, je suis désolé mais je ne suis pas de bon niveau
0
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
19 mai 2008 à 10:44
voir Rs.CursorType (a mettre par exemple en adOpenDynamic)
0
ilSPARTIATEli Messages postés 7 Date d'inscription mardi 7 mars 2006 Statut Membre Dernière intervention 26 mai 2008
19 mai 2008 à 11:19
re, merci beaucoup pour ton aide , mais puis-tu être plus précis ? merci d'avance

voila ma 2ème question,
voici un autre script
so but est d'ajouter des informations dans access par rapport a des "objets" vbs.
malheureusement il ne m'ajoute rien dans ma base, c'est possible qu'il y ait une erreur dans la base, mais je en crois pas, puissiez vous jeter un coup d'oeil et de dire si il y a des fautes, quelle est ma faute et que faut-il faire pour la corriger , merci d'avance

---
Set objConn = CreateObject("ADODB.Connection")
Set objRS = CreateObject("ADODB.Recordset")

MdbFilePath = "Data.mdb"
objConn.Open "Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & MdbFilePath & ";"
objRS.CursorLocation = 3
objRS.Open "SELECT * FROM Table1" , objConn, 3, 3

Set dtmStartDate = CreateObject("WbemScripting.SWbemDateTime")
Set dtmEndDate = CreateObject("WbemScripting.SWbemDateTime")

DateToCheck = Date - 1
dtmEndDate.SetVarDate Date, True
dtmStartDate.SetVarDate DateToCheck, True

strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
    & "{impersonationLevel=impersonate}!\" & strComputer & "\root\cimv2")

Set colEvents = objWMIService.ExecQuery _
    ("Select * from Win32_NTLogEvent Where TimeWritten >= '" _
        & dtmStartDate & "' and TimeWritten < '" & dtmEndDate & "'")

For each objEvent in colEvents
    objRS.AddNew
    objRS("Category") = objEvent.Category
    objRS("ComputerName") = objEvent.ComputerName
    objRS("EventCode") = objEvent.EventCode
    objRS("Message") = objEvent.Message
    objRS("RecordNumber") = objEvent.RecordNumber
    objRS("SourceName") = objEvent.SourceName
    objRS("TimeWritten") = objEvent.TimeWritten
    objRS("Type") = objEvent.Type
    objRS("User") = objEvent.User
    objRS.Update
Next

objRS.Close
objConn.Close
0
ilSPARTIATEli Messages postés 7 Date d'inscription mardi 7 mars 2006 Statut Membre Dernière intervention 26 mai 2008
23 mai 2008 à 11:05
Voila pour terminer je met le code que j'ai qui me permet de se connecter a une base de donnée Access avec un VBS, comme sa un jour une personne se trouve dans les mêmes emmerdes que moi, il trouvera ai moin quelque chose ici

    '*** CONNECTION A ACCESS
    Set objConn = CreateObject("ADODB.Connection") 
    Set objRS = CreateObject("ADODB.Recordset")
   
    MdbFilePath = "GroupWiseAccess.mdb"      'ICI c'est le chemin de votre fichier access
    objConn.Open "Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & MdbFilePath & ";"
    objRS.CursorLocation = 3
    objRS.Open "SELECT * FROM GroupWise" , objConn, 3, 3

_______________________________________
--->TRY NOT. DO, OR DO NOT, THERE IS NO TRY.<---

-> Io dormirò tranquillo perchè so che il mio peggior nemico veglia su di me.
--> Remember, concentrate on the moment. Feel... don't think. Use your instincts.
0
Rejoignez-nous