If compteur_progressbar > Me.ProgressBar1.Maximum Then
compteur_progressbar = Me.ProgressBar1.Minimum
End If
Loop
End Sub
Mais hélàs, bien sûr, la barre de progression ne se met pas à jour :/
J'ai également essayé de faire le contraire, toujours sans succès : les 3 lignes de chargement du fichier dans 1 sub thread_lecture_fichier() et ds le form principal 1 while mon_thread isalive pour mettre à jour la progressbar mais là, j'ai fait fin de tâche car il semble que ca ne voulait pas s'arrêter...
Merci d'avance pour votre aide
"Stéphane L." a écrit dans le message de news:uWwW%
If compteur_progressbar > Me.ProgressBar1.Maximum Then
compteur_progressbar = Me.ProgressBar1.Minimum
End If
Loop
End Sub
Mais hélàs, bien sûr, la barre de progression ne se met pas à jour :/
J'ai également essayé de faire le contraire, toujours sans succès :
les 3 lignes de chargement du fichier dans 1 sub thread_lecture_fichier()
et ds le form principal 1 while mon_thread isalive pour mettre à jour la
progressbar
mais là, j'ai fait fin de tâche car il semble que ca ne voulait pas
s'arrêter...
Merci d'avance pour votre aide
"Stéphane L." <no@spam.fr> a écrit dans le message de
news:uWwW%23jwcEHA.712@TK2MSFTNGP11.phx.gbl...
If compteur_progressbar > Me.ProgressBar1.Maximum Then
compteur_progressbar = Me.ProgressBar1.Minimum
End If
Loop
End Sub
Mais hélàs, bien sûr, la barre de progression ne se met pas à jour :/
J'ai également essayé de faire le contraire, toujours sans succès : les 3 lignes de chargement du fichier dans 1 sub thread_lecture_fichier() et ds le form principal 1 while mon_thread isalive pour mettre à jour la progressbar mais là, j'ai fait fin de tâche car il semble que ca ne voulait pas s'arrêter...
Merci d'avance pour votre aide
"Stéphane L." a écrit dans le message de news:uWwW%
"; data source=" & Me.OpenFileDialog_Importation_MP.FileName & _
"; Extended Properties=Excel 8.0;")
ma_commande = New OleDb.OleDbDataAdapter("Select * from [Feuil1$]", ma_connexion)
ma_commande.Fill(ds)
Le pb est que le fichier s'ouvre dans Excel.
J'aimerais que cela soit transparent.
Merci d'avance pour votre aide.
-- Cordialement,
Stéphane L
Bil
Je ne sais pas si cela peut t'aider, mais moi j'utilise un objet Excel qui reste invisible. (Ajouter une reference Microsoft Excel x Object Library). Exemple: (Progres est ma barre de progression sur mon formulaire).
Dim i As Long Dim NbImp As Long 'Nb de liogne a importer Dim cnn As ADODB.Connection Dim Rec As ADODB.Recordset Dim MonXl As Excel.Application cnn = New ADODB.Connection cnn.Mode = ADODB.ConnectModeEnum.adModeReadWrite 'MsgBox("3") cnn.Open("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:CQNTCGST SaveTraitementCGSTSave.mdb;") Rec = New ADODB.Recordset Rec.CursorType = ADODB.CursorTypeEnum.adOpenKeyset Rec.LockType = ADODB.LockTypeEnum.adLockOptimistic 'MsgBox("5") Rec.Open("RECU", cnn, ADODB.CursorTypeEnum.adOpenDynamic, ADODB.LockTypeEnum.adLockOptimistic) MonXl = New Excel.Application 'MsgBox("6") 'MsgBox(Rec.Fields(1).Value) 'Chargement du fichier Excel dans la table RECU MonXl.Workbooks.Open(Me.TxtChemin.Text) 'MsgBox("7") 'MonXl.Visible = True 'cela rend le fichier excel visible 'Compte le nb de ligne pour pourcentage i = 2 Do While MonXl.Cells(i, 6).text <> "" i = i + 1 Loop 'MsgBox("8") NbImp = i - 1 - 1 ' car prem lig est le titre colonne et i+1 dans boucle while 'MsgBox(NbImp) 'Ajout dans la table RECU Me.Progres.Maximum = NbImp Me.Progres.Increment(1) Me.TxtInfo.Visible = True Me.Refresh() 'MsgBox("9") i = 2 Do While MonXl.Cells(i, 6).text <> "" Rec.AddNew() Rec.Fields("lklo").Value = MonXl.Cells(i, 1).text Rec.Update() Me.Progres.Increment(1) i = i + 1 Loop Me.TxtInfo.Visible = False Me.Refresh() MsgBox("Chargement terminé.", MsgBoxStyle.Information, "CGST Save") Me.Progres.Increment(-NbImp)
ma_commande = New OleDb.OleDbDataAdapter("Select *
from [Feuil1$]",
ma_connexion)
ma_commande.Fill(ds)
Le pb est que le fichier s'ouvre dans Excel.
J'aimerais que cela soit transparent.
Merci d'avance pour votre aide.
-- Cordialement,
Stéphane L
.
Je ne sais pas si cela peut t'aider, mais moi j'utilise
un objet Excel qui reste invisible.
(Ajouter une reference Microsoft Excel x Object Library).
Exemple:
(Progres est ma barre de progression sur mon formulaire).
Dim i As Long
Dim NbImp As Long 'Nb de liogne a importer
Dim cnn As ADODB.Connection
Dim Rec As ADODB.Recordset
Dim MonXl As Excel.Application
cnn = New ADODB.Connection
cnn.Mode = ADODB.ConnectModeEnum.adModeReadWrite
'MsgBox("3")
cnn.Open("Provider=Microsoft.Jet.OLEDB.4.0;Data
Source=c:CQNTCGST SaveTraitementCGSTSave.mdb;")
Rec = New ADODB.Recordset
Rec.CursorType = ADODB.CursorTypeEnum.adOpenKeyset
Rec.LockType = ADODB.LockTypeEnum.adLockOptimistic
'MsgBox("5")
Rec.Open("RECU", cnn,
ADODB.CursorTypeEnum.adOpenDynamic,
ADODB.LockTypeEnum.adLockOptimistic)
MonXl = New Excel.Application
'MsgBox("6")
'MsgBox(Rec.Fields(1).Value)
'Chargement du fichier Excel dans la table RECU
MonXl.Workbooks.Open(Me.TxtChemin.Text)
'MsgBox("7")
'MonXl.Visible = True 'cela rend le fichier excel
visible
'Compte le nb de ligne pour pourcentage
i = 2
Do While MonXl.Cells(i, 6).text <> ""
i = i + 1
Loop
'MsgBox("8")
NbImp = i - 1 - 1 ' car prem lig est le titre
colonne et i+1 dans boucle while
'MsgBox(NbImp)
'Ajout dans la table RECU
Me.Progres.Maximum = NbImp
Me.Progres.Increment(1)
Me.TxtInfo.Visible = True
Me.Refresh()
'MsgBox("9")
i = 2
Do While MonXl.Cells(i, 6).text <> ""
Rec.AddNew()
Rec.Fields("lklo").Value = MonXl.Cells(i,
1).text
Rec.Update()
Me.Progres.Increment(1)
i = i + 1
Loop
Me.TxtInfo.Visible = False
Me.Refresh()
MsgBox("Chargement terminé.",
MsgBoxStyle.Information, "CGST Save")
Me.Progres.Increment(-NbImp)
Je ne sais pas si cela peut t'aider, mais moi j'utilise un objet Excel qui reste invisible. (Ajouter une reference Microsoft Excel x Object Library). Exemple: (Progres est ma barre de progression sur mon formulaire).
Dim i As Long Dim NbImp As Long 'Nb de liogne a importer Dim cnn As ADODB.Connection Dim Rec As ADODB.Recordset Dim MonXl As Excel.Application cnn = New ADODB.Connection cnn.Mode = ADODB.ConnectModeEnum.adModeReadWrite 'MsgBox("3") cnn.Open("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:CQNTCGST SaveTraitementCGSTSave.mdb;") Rec = New ADODB.Recordset Rec.CursorType = ADODB.CursorTypeEnum.adOpenKeyset Rec.LockType = ADODB.LockTypeEnum.adLockOptimistic 'MsgBox("5") Rec.Open("RECU", cnn, ADODB.CursorTypeEnum.adOpenDynamic, ADODB.LockTypeEnum.adLockOptimistic) MonXl = New Excel.Application 'MsgBox("6") 'MsgBox(Rec.Fields(1).Value) 'Chargement du fichier Excel dans la table RECU MonXl.Workbooks.Open(Me.TxtChemin.Text) 'MsgBox("7") 'MonXl.Visible = True 'cela rend le fichier excel visible 'Compte le nb de ligne pour pourcentage i = 2 Do While MonXl.Cells(i, 6).text <> "" i = i + 1 Loop 'MsgBox("8") NbImp = i - 1 - 1 ' car prem lig est le titre colonne et i+1 dans boucle while 'MsgBox(NbImp) 'Ajout dans la table RECU Me.Progres.Maximum = NbImp Me.Progres.Increment(1) Me.TxtInfo.Visible = True Me.Refresh() 'MsgBox("9") i = 2 Do While MonXl.Cells(i, 6).text <> "" Rec.AddNew() Rec.Fields("lklo").Value = MonXl.Cells(i, 1).text Rec.Update() Me.Progres.Increment(1) i = i + 1 Loop Me.TxtInfo.Visible = False Me.Refresh() MsgBox("Chargement terminé.", MsgBoxStyle.Information, "CGST Save") Me.Progres.Increment(-NbImp)