Bonjour
ce code n'est pas une invention mais j'espere qu'il peut vous aider MAY et qui en a besoin.
NB:il faut regarder le code et creer une BDD dans C:\
vous trouvez le fichier et la BDD dans le zip (.rar)placer les dans c:\
Source / Exemple :
Option Explicit
'déclaration de la variable qui contiendra le provider et le chemin de la B.D
Public bd As New ADODB.Connection
'déclaration de la variable qui contiendra la commande
Public cmdado As New ADODB.Command
'déclaration de la variable qui contiendra le nom de la table
Public tb As New ADODB.Recordset
'déclaration de la variable qui contiendra le choix de l'utilisateur dans les msgbox
Dim msg1 As String
'déclaration des variables pour le redimmensionnement des contrôles de la form
Dim lar As Long, lng As Long
Private Sub ajouter_Click()
Dim Import As Object
On Error Resume Next
'permet d'importer le fichier texte dans la bdd
Import = CreateObject("Access.Application")
Import.OpenCurrentDatabase ("c:\basefichier.mdb") 'pour importer les données d'un .txt
DoCmd.TransferText AcTextTransferType.acImportDelim, "Test Import Specification ", "test", "c:\test.txt"
bd.Refresh
MsgBox "Création Bd terminée"
ListView1.ListItems.Clear
ListView1.ColumnHeaders.Clear
ListView1.ColumnHeaders.Add , , "ID", (ListView1.Width * (2 / 22)), lvwColumnLeft
ListView1.ColumnHeaders.Add , , "Prenom", (ListView1.Width * (4 / 22)), lvwColumnLeft
ListView1.ColumnHeaders.Add , , "nom", (ListView1.Width * (4 / 19)), lvwColumnLeft
ListView1.ColumnHeaders.Add , , "Tel", (ListView1.Width * (4 / 22)), lvwColumnLeft
ListView1.ColumnHeaders.Add , , "ville", (ListView1.Width * (4 / 22)), lvwColumnLeft
ListView1.View = lvwReport
cmdado.CommandText = "select * from test"
tb.Requery
Dim ListItem As ListItem ' Pour affichage du résultat
' M.A.j de la ListView
ListView1.ListItems.Clear
' Préparation de la commande
cmdado.CommandText = "select * from test"
' Execution de la commande
tb.Requery
On Error Resume Next
' tant qu'il y a un enregistrement l'afficher (fin du fichier)
While (Not tb.EOF)
If (tb.RecordCount <> 0) Then
Set ListItem = ListView1.ListItems.Add(, , CStr(tb!ID))
If Not IsNull(tb!prenom) Then ListItem.SubItems(1) = CStr(tb!prenom)
If Not IsNull(tb!nom) Then ListItem.SubItems(2) = CStr(tb!nom)
If Not IsNull(tb!tel) Then ListItem.SubItems(3) = CStr(tb!tel)
If Not IsNull(tb!ville) Then ListItem.SubItems(4) = CStr(tb!ville)
End If
' enregistrement suivant
tb.MoveNext
Wend
End Sub
Private Sub decouper_Click() ' ouvrir un fichier avec SPLIT
Dim VarTimeBase() As String ' tableau de ligne sans delimitateur
Dim a As String
Dim i, j As Integer
i = 0
Text1 = Text1 + Chr$(13) + Chr$(10)
Open "C:\test.txt" For Input As #1
While Not EOF(1)
Input #1, a$ ''' lire la 1ere ligne tel kelle et mets la dans la variable a
VarTimeBase() = Split(a$, ";") ' tableu ki contient la ligne splité
For i = 0 To UBound(VarTimeBase)
Text1 = Text1 + VarTimeBase(i)
Next i
Text1 = Text1 + Chr$(13) + Chr$(10) ' retour chariot apres chake ligne
Wend
Close #1
End Sub
Private Sub Form_Load()
bd.Provider = "Microsoft.jet.oledb.4.0"
bd.ConnectionString = "c:\basefichier.mdb"
bd.Open
cmdado.ActiveConnection = Me.bd
cmdado.CommandText = "select * from test"
tb.CursorLocation = adUseClient
tb.CursorType = adOpenDynamic
tb.LockType = adLockPessimistic
tb.Open cmdado
'' pour acceder a un fichier et l afficher tel qu il est
Dim stream As New ADODB.stream
stream.Charset = "UTF-8"
stream.Open
stream.LoadFromFile "C:\test.txt"
Text1.Text = stream.ReadText
Text1 = Text1 + Chr$(13) + Chr$(10)
Text1 = Text1 + Chr$(13) + Chr$(10)
stream.Close
End Sub
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.