Bonjour,
Je suis un débutant en développement tout court. J'ai cherché un peut de partout sur Google. Mais Je n'ai pu trouver de solution à mon problème.
Je suis supposé développer un petit soft qui permet d'importer des fichiers texte dans une BD Access (version 2007). L'utilisateur tombe sur une fenêtre OpenFileDialogue, pour le fichier a importer. Jusque la tout va plus ou moins bien, mais les variables du chemin ne sont pas reconnu, je ne comprends pas pourquoi...
Voici mon code (merci de fournir que des commentaires constructifs)
Pourtant le bogue est au moment "Database=RepertoireFichier", a croire que ma variable n'a pas le bon format.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77 Imports System Imports System.IO Imports System.Data.OleDb Public Class ImportAccess Public Sub ImporterToolStripMenuItem_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles ImporterToolStripMenuItem.Click Dim myStream As Stream = Nothing Dim SelectionFichier As New OpenFileDialog() 'Paramètres OpenFileDialog With SelectionFichier .Title = "Choisir un fichier" .Filter = "Text (*.txt)|*.txt|CSV (*.csv)|*.csv" .FilterIndex = 1 .RestoreDirectory = True .CheckFileExists = True .CheckPathExists = True .ValidateNames = True End With If SelectionFichier.ShowDialog() = System.Windows.Forms.DialogResult.OK Then Try myStream = SelectionFichier.OpenFile() If (myStream IsNot Nothing) Then 'Separer SelectionFichier.FileName vers NomDeFichier et RepertoireFichier Dim InformationFichier As New FileInfo(SelectionFichier.FileName) Dim NomDeFichier As String = InformationFichier.Name Dim RepertoireFichier As String = InformationFichier.DirectoryName & "\" 'Paramètres Connection DB Access 2007 Dim ConnectionString As String Dim AccessConnection As OleDbConnection ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;" & _ "Data Source=C:\Users\Estelle\Documents\LoNoFi.accdb;" & _ "Persist Security Info=False;" AccessConnection = New OleDbConnection(ConnectionString) 'Importer Fichier Dans Access Try 'Requete Import Dim ImportFichierAccess As New OleDbCommand("SELECT * INTO [IMPORT] FROM [Text;Database=RepertoireFichier;Hdr=Yes].[NomDeFichier]", AccessConnection) 'Ouvrir Connection AccessConnection.Open() 'Ecrire Dans La Table Access ImportFichierAccess.ExecuteNonQuery() 'Fermer Connection AccessConnection.Close() Catch ex As Exception MessageBox.Show(ex.Message) End Try End If Catch ex As Exception MessageBox.Show(ex.Message) Finally If (myStream IsNot Nothing) Then myStream.Close() End If End Try End If End Sub End Class
Si quelqu'un a une idée, une astuce...
Merci d'avance
Partager