T
titin
Guest
bonjour à tous
je cherche par la méthode ADO de renvoyer dans un classeur fermé la valeur de plusieurs cellules.
Tous ce passe bien sauf pour une cellule 'G9' contenant une valeur au format Heure. Avec format heure personnalisé : 'à' hh:mm
Le retour dans le classeur fermé pour cette cellule donne le résultat de 0,680555555555555
pour une valeur de départ de 16:20
Comment envoyer la valeur de cette cellule afin de conserver son format hh:mm
j'utilise cette macro:
Sub Macro2()
Dim Cn As ADODB.Connection
Dim Rs As ADODB.Recordset
Dim Fichier As String, Cible As String, Feuille As String
Dim i As Byte
Dte = Format(Date, 'dd/mm/yy')
Hre = Format(Now, 'hh:mm')
Fichier = 'C:\\fichierFerme.xls'
Feuille = 'archives$'
Set Cn = New ADODB.Connection
Cn.Open 'Provider = Microsoft.Jet.OLEDB.4.0;' & _
'data source=' & Fichier & ';' & _
'extended properties=''Excel 8.0;'''
Cible = 'SELECT * FROM [' & Feuille & '];'
Set Rs = New Recordset
Rs.Open Cible, Cn, adOpenKeyset, adLockOptimistic
With Rs
.AddNew
.Fields(0) = Sheets('rapport').Range('E9')
.Fields(1) = Sheets('rapport').Range('G9')
.Fields(2) = Dte & '-' & Hre
.Fields(3) = Sheets('FINAL').Range('A4')
.Update
End With
Rs.Close
Cn.Close
For i = 1 To 5
Next i
End Sub
merci pour vos conseil
je cherche par la méthode ADO de renvoyer dans un classeur fermé la valeur de plusieurs cellules.
Tous ce passe bien sauf pour une cellule 'G9' contenant une valeur au format Heure. Avec format heure personnalisé : 'à' hh:mm
Le retour dans le classeur fermé pour cette cellule donne le résultat de 0,680555555555555
pour une valeur de départ de 16:20
Comment envoyer la valeur de cette cellule afin de conserver son format hh:mm
j'utilise cette macro:
Sub Macro2()
Dim Cn As ADODB.Connection
Dim Rs As ADODB.Recordset
Dim Fichier As String, Cible As String, Feuille As String
Dim i As Byte
Dte = Format(Date, 'dd/mm/yy')
Hre = Format(Now, 'hh:mm')
Fichier = 'C:\\fichierFerme.xls'
Feuille = 'archives$'
Set Cn = New ADODB.Connection
Cn.Open 'Provider = Microsoft.Jet.OLEDB.4.0;' & _
'data source=' & Fichier & ';' & _
'extended properties=''Excel 8.0;'''
Cible = 'SELECT * FROM [' & Feuille & '];'
Set Rs = New Recordset
Rs.Open Cible, Cn, adOpenKeyset, adLockOptimistic
With Rs
.AddNew
.Fields(0) = Sheets('rapport').Range('E9')
.Fields(1) = Sheets('rapport').Range('G9')
.Fields(2) = Dte & '-' & Hre
.Fields(3) = Sheets('FINAL').Range('A4')
.Update
End With
Rs.Close
Cn.Close
For i = 1 To 5
Next i
End Sub
merci pour vos conseil