Imports [Link].
SqlClient
Imports [Link]
Imports [Link]
Public Class Form1
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles [Link]
' Démarrer un thread pour exécuter le transfert périodique
Dim thread As New Thread(AddressOf TransferData)
[Link]()
End Sub
Private Sub TransferData()
' Chemin d'accès du fichier Excel
Dim excelFilePath As String = "C:\Chemin\vers\votre\[Link]"
' Chaîne de connexion à la base de données SQL Server
Dim connectionString As String = "Data Source=VotreServeur;Initial
Catalog=VotreBaseDeDonnees;Integrated Security=True"
' Interval de temps entre chaque transfert (en millisecondes)
Dim transferInterval As Integer = 60000 ' 1 minute
' Boucle infinie pour transférer périodiquement les données
While True
Try
' Créer une application Excel
Dim excelApp As New Application()
' Ouvrir le classeur Excel
Dim workbook As Workbook = [Link](excelFilePath)
' Sélectionner la première feuille de calcul
Dim worksheet As Worksheet = [Link](1)
' Récupérer la dernière ligne utilisée dans la feuille de calcul
Dim lastRow As Integer = [Link]([Link]).Row
' Créer une connexion à la base de données SQL Server
Using connection As New SqlConnection(connectionString)
[Link]()
' Boucler à travers les lignes du fichier Excel et insérer dans la table SQL Server
For i As Integer = 2 To lastRow ' Commencer à la deuxième ligne pour éviter les en-têtes
Dim commandText As String = "INSERT INTO MaTable (Colonne1, Colonne2, Colonne3)
VALUES (@Value1, @Value2, @Value3)"
Dim command As New SqlCommand(commandText, connection)
[Link]("@Value1", [Link](i, 1).Value)
[Link]("@Value2", [Link](i, 2).Value)
[Link]("@Value3", [Link](i, 3).Value)
[Link]()
Next
End Using
' Fermer le classeur Excel et l'application Excel
[Link](False)
[Link]()
' Libérer les ressources COM
ReleaseComObject(worksheet)
ReleaseComObject(workbook)
ReleaseComObject(excelApp)
Catch ex As Exception
' Gérer les erreurs
[Link]("Erreur: " & [Link])
End Try
' Attendre avant le prochain transfert
[Link](transferInterval)
End While
End Sub
' Fonction pour libérer les ressources COM
Private Sub ReleaseComObject(ByVal obj As Object)
Try
If obj IsNot Nothing Then
[Link](obj)
obj = Nothing
End If
Catch ex As Exception
obj = Nothing
Finally
[Link]()
End Try
End Sub
End Class