|
|
|
| [vb] exporter une table vers fichier csv par predateur |
mardi 18 juillet 2006 à 02:53:35 |
Private Sub Command1_Click()
Dim SiteSta As dynaset
Dim NbrImageSiteSta As Integer
Dim Vsociete, Vadresse, Vcp As String
Dim chemindataexport_asciiSiteSta As String
chemindataexport_asciiSiteSta = App.Path + "\" + "SiteStation.csv"
requete = "select * from T1"
Set SiteSta = gCurrentDB.CreateDynaset(requete)
NbrImageSiteSta = SiteSta.RecordCount
If NbrImageSiteSta > 0 Then
Open chemindataexport_asciiSiteSta For Output As #1
SiteSta.MoveFirst
Do While Not SiteSta.EOF
If SiteSta("Vsociete") <> "" Then Vsociete = CStr(SiteSta("Vsociete"))
If SiteSta("Vadresse") <> "" Then Vadresse = CStr(SiteSta("Vadresse"))
If SiteSta("Vcp") <> "" Then Vcp = CStr(SiteSta("Vcp"))
EmeActive = CStr(-1)
Else
EmeActive = CStr(0)
End If
End If
stringtempA = Vsociete + ";" + Vadresse + ";" + Vcp + ";"
stringtempSiteSta = stringtempA
Print #1, stringtempSiteSta
SiteSta.MoveNext
Loop
MsgBox "End"
SiteSta.Close
Close #1
Else
Exit Sub
End If
End Sub
up |
J'ai encore du mal avec mon script. J'ai essayé de le simplifié, et ca donne:
Private Sub Command1_Click()
Dim SiteSta As Recordset
Dim NbrImageSiteSta As Integer
Dim Vsociete, Vadresse, Vcp As String
Dim chemindataexport_asciiSiteSta As String
chemindataexport_asciiSiteSta = App.Path + "\" + "SiteStation.csv"
requete = "select * from T1"
Set SiteSta = gCurrentDB.OpenRecordset(requete)
NbrImageSiteSta = SiteSta.RecordCount
If NbrImageSiteSta > 0 Then
Open chemindataexport_asciiSiteSta For Output As #1
SiteSta.MoveFirst
Do While Not SiteSta.EOF
If SiteSta("T11") <> "" Then T11 = CStr(SiteSta("T11"))
If SiteSta("T12") <> "" Then T12 = CStr(SiteSta("T12"))
If SiteSta("T13") <> "" Then T13 = CStr(SiteSta("T13"))
stringtempA = Vsociete + ";" + Vadresse + ";" + Vcp + ";"
stringtempSiteSta = stringtempA
Print #1, stringtempSiteSta
SiteSta.MoveNext
Loop
MsgBox "End"
SiteSta.Close
Close #1
Else
Exit Sub
End If
End Sub
Donc, je rappelle à tout hazard, que ma form contient un bouton command1 et un commonDialog qui s'appelle SiteSta. Ma table s'appelle T1 et les trois champs sont T11, T12 et T13 (pour s'implifier) Donc quand j'éxécute ce script, j'obtiens un msgbox où y a marqué End Bizarre. |
oops, j'ai commis honteusement des fautes de noms pour mes champs T11,T12et T13.
Toujours est t-il que j'ai le msgbox End car il n'arrive pas à trouver ma base de donnée |
Bon, je viens de modifier encore mon code.
En faite, le problème c'est la connexion à la base accesss sous 97 où il y a problème. les champs 133 et 134 représente les identifiants et mot de passe de l'utilisateur. Apparemment, lorsque je fait un msgBox T12, ca apparait avec un msgbox vide. Private Sub Command1_Click() Dim SiteSta As Recordset Dim NbrImageSiteSta As Integer Dim T11, T12, T13 As String Dim T1 As Database Dim chemindataexport_asciiSiteSta As String chemindataexport_asciiSiteSta = App.Path + "\" + "SiteStation.csv" GUsername = "USER" GUserpasse = "USER" Gutilisateur = GUsername Gpasse = GUserpasse Set SiteSta = gCurrentDB.OpenRecordset("select T11, T12, T13 from T1 Where T1.T133 = '" & GUsername & "' and T1.T134 = '" & GUserpasse & "' and T1.T11 = '" & Vsociete & "'", dbOpenDynaset) NbrImageSiteSta = SiteSta.RecordCount MsgBox T12 If NbrImageSiteSta > 0 Then Open chemindataexport_asciiSiteSta For Output As #1 SiteSta.MoveFirst Do While Not SiteSta.EOF If SiteSta("T11" ) <> "" Then T11 = CStr(SiteSta("T11" )) If SiteSta("T12" ) <> "" Then T12 = CStr(SiteSta("T12" )) If SiteSta("T13" ) <> "" Then T13 = CStr(SiteSta("T13" )) stringtempA = T11 + ";" + T12 + ";" + T13 + ";" stringtempSiteSta = stringtempA Print #1, stringtempSiteSta SiteSta.MoveNext Loop 'MsgBox "End" SiteSta.Close Close #1 Else Exit Sub End If End Sub |
up |
| 27/09 16h05 | export table sous oracle vers fichier txt | Programmation | 03/10 13h00 | 1 |
| 04/05 15h31 | [vba] exporter sa BD vers CSV | Programmation | 04/05 15h31 | 0 |
| 04/07 08h18 | export fichier csv vers Outlook | Programmation | 04/07 08h18 | 0 |
| 17/03 20h50 | [VB] Exporter vers un .txt | Programmation | 03/04 16h08 | 8 |