Récuppération de données entre 2 dates grace à USERFORM

Bonjour à vous. Je m'appelle Sébastien et je suis novice confirmé sur excel. J'essaye d'expérimenter plusieurs truc pour me faciliter la vie dans mon taf. Apres un après-midi de recherches infructueuses je me tourne vers vous.

Actuellement je suis complètement paumé dans un truc qui je parie est simple pour vous. Je ne sais donc pas du tout comment commencer

Je vous explique mon problème en 2 excels. J'ai 2 fichiers 1 données et 1 de récupp. Le fichier données ne m'est accessible que en lecture seule.

En vous remerciant d'avance

15fichier-recupp.xlsm (15.42 Ko)

Bonjour et bienvenue sur le forum

Un essai à tester.

Le fichier données doit être ouvert quand on ouvre le fichier récup.

Cela te convient-il ?

Hello à toi

Alors déja mille merci pour cet énorme progression.

C'est ce qu'il me faut mais le truc c'est que le fichier de données n'est pas tout le temps ouvert.

Dans ton code

With Workbooks("Fichier données.xlsx").Sheets("Feuil1") on pourait pas remplacer par style: With Workbooks("G:\BDD\Fichier données.xlsx").Sheets("Feuil1") ?

Par contre, peux tu me détailler les lignes que je comprenne?

Bonne journée

Hello

On as essayé un truc de boucher avec un collègue. Ca fonctionne mais je trouve que c'est vraiment barbare.

Peux tu me dire ce que tu en penses?

Bonjour

cafard a écrit :

Peux tu me dire ce que tu en penses?

Il y a de ça. Encore un effort et ça sera bon !

En attendant , ma nouvelle version qui devrait marcher si l'adresse du fichier est bonne :

Bye !

Pfiou.

Je ne pourrais tester en condition réelle que jeudi car lundi mardi et mercredi formation kuka.

Application.ScreenUpdating = False

Set fDep = ActiveSheet ' Feuille de départ

Workbooks.Open ("G:\SPARTA PROD STATOR1\Relevé des rejets\Relevé rejets STATORS 1.xlsm") il doit s'ouvrir sans activer ses macros. Est-ce que ce sera le cas?

Set w = ActiveWorkbook 'Nom du fichier qu'on vient d'ouvrir

Set f = w.Sheets("Feuil1") 'Nom de la feuille où se trouvent les données sources

If IsDate(TextBox1) = False Or IsDate(TextBox2) = False Then

MsgBox "Saisies incorrectes ou incomplètes", 16

w.Close False

Exit Sub

End If

dteD = CDate(TextBox1)

dteF = CDate(TextBox2)

With f

Set cell = .Range("A9:A" & .Range("A" & Rows.Count).End(xlUp).Row).Find(dteD, lookat:=xlWhole)

If Not cell Is Nothing Then

lnD = cell.Row

Else

MsgBox "Date de début introuvable.", 16

End

End If

Set cell = .Range("A9:A" & .Range("A" & Rows.Count).End(xlUp).Row).Find(dteF, lookat:=xlWhole)

If Not cell Is Nothing Then

lnF = cell.Row

Do While .Range("A" & lnF + 1) = .Range("A" & lnF)

lnF = lnF + 1

Loop

Else

MsgBox "Date de fin introuvable.", 16

End

End If

fDep.Activate

Sheets.Add After:=ActiveSheet

ActiveSheet.Name = Format(dteD, "dd mm yyyy") & " - " & Format(dteF, "dd mm yyyy")

.Range("A1:FS1").Copy Range("A1")

.Range("A" & lnD & ":FS" & lnF).Copy Range("A2")

End With

w.Close False 'On referme en le fichier de données sans l'enregistrer

Unload Me 'On referme la boite de dialogue

Application.ScreenUpdating = True 'inutile Excel réinitialise à chaque lancement de macro

En effet cela devient bon. En attendant jeudi je te souhaite un excellent week-end et encore merci.

J'ai confiance du résultat. Bonne fin de journée gmb

cafard a écrit :

Workbooks.Open ("G:\SPARTA PROD STATOR1\Relevé des rejets\Relevé rejets STATORS 1.xlsm") il doit s'ouvrir sans activer ses macros. Est-ce que ce sera le cas?

Comment saurais-je ?

N'ayant pas ce fichier, j'ai testé avec celui de départ : "Fichier données.xlsx"

Celui-là n'avait pas de macro puisqu'il était en .xlsx

Bye !

exact. Je vais essayer de tester ça chez moi

Hello gmb

Désolé pour le retard avant ma réponse mais j'étais en déplacement en république tchèque pour le taf.

Je tiens a te dire......... que le fichier fonctionne à merveille.

Je l'ai un peut pofiné et c'est un succès total.

Je vais créer un deuxième post car j'ai un autre problème et je comprends pas pk.

Bonne soirée à toi et merci encore

Rechercher des sujets similaires à "recupperation donnees entre dates userform"