VBA sélection de données par tranche de date/heure
a
Bonjour,
J'aimerai extraire les données d'un classeur externe en choisissant la date et l'heure du début ainsi que la date et l'heure de fin.
J'ai jusqu'à maintenant réussi à récupérer les données d'une feuille à l'autre sans sélection de date.
Comment faire pour avoir une boite de dialogue (heure début / heure fin) et aller chercher les données dans un fichier externe sans l'ouvrir ?
PS : est ce que le code est optimisé ?
Merci de votre aide
Sub Gestion_Condi()
'Récupères les infos des flux sortant packing condi
Dim j As Integer, i As Integer
Dim cel As Range
Dim n As Integer
Range(Sheets("Condi").Range("U2"), Sheets("Condi").Range("AA40")).Delete Shift:=xlUp
j = 0
For Each cel In Range(Sheets("Condi").Range("A2"), Sheets("Condi").Range("A2").End(xlDown))
'Récupère les données dans un tableau temporaire
If cel.Offset(0, 8).Value > 1 And cel.Offset(0, 7).Value <> "" Then
'heure fin'
Sheets("Condi").Range("U2").Offset(j, 0) = cel.Offset(0, 12)
'Ligne'
Sheets("Condi").Range("U2").Offset(j, 1).Value = "Condi"
'Code PF'
Sheets("Condi").Range("U2").Offset(j, 2) = cel.Offset(0, 0)
'N° Programme'
Sheets("Condi").Range("U2").Offset(j, 3) = cel.Offset(0, 2)
j = j + 1
End If
Next
'compte le nombre d'actions déjà extractés
n = 0
While Sheets("Bilan Stock").Range("B3").Offset(n, 0) <> ""
n = n + 1
Wend
n = n + 3
'Copie le tableau temporaire dans l'onglet bilan et le supprime
Range(Sheets("Condi").Range("U2"), Sheets("Condi").Range("U2").End(xlDown).Offset(0, 5)).Copy Destination:=Sheets("Bilan Stock").Range("B" & n)
End Sub