Récupération de données excel

Résolu/Fermé
muzomax Messages postés 3 Date d'inscription mardi 8 avril 2008 Statut Membre Dernière intervention 11 avril 2008 - 8 avril 2008 à 13:24
muzomax Messages postés 3 Date d'inscription mardi 8 avril 2008 Statut Membre Dernière intervention 11 avril 2008 - 11 avril 2008 à 12:13
Bonjour,

j'enregistre des données sur un fichier

1er colonne : date (rentré une fois par jour)
2e colonne : heure
3e colonne : résultat

je voudrais récuperer sur un 2 ème fichier les données pour 1 journée

avec RECHERCHEV, je n'arrive à obtenir qu'une seule valeur, celle où il y a la date

comment faire merci par calcul ou si il y a moyen avec une macro

merci
A voir également:

8 réponses

LePierre Messages postés 249 Date d'inscription samedi 8 mars 2008 Statut Membre Dernière intervention 2 août 2012 337
8 avril 2008 à 14:43
bonjour

j'ai fais un test sur la même feuille avec les données en A13:C22 classées en colonne comme tu l'indiques.
en E13 j'indique la date à rechercher
en F13 tu écris la formule : =SI($E$13=A13;RECHERCHEV($E$13;A13:C22;2;FAUX);"")
et en G13 : =SI($E$13=A13;RECHERCHEV($E$13;A13:C22;3;FAUX);"")
ensuite tu recopies ces deux cellules vers le bas jusqu'à la ligne 22
tu obtiens ainsi les réponses pour la journée choisie

à plus
0
Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022 6 396
9 avril 2008 à 09:08
Bonjour
Petite remarque le Pierre.
la formule fonctionne sans doute mais pour la tirer sur la hauteur , je pense qu'il faut bloquer les limites du champs dans l'item recherche , sinon il se décale à chaque ligne:
RECHERCHEV($E$13;$A$13:$C$22;2;FAUX);"")
Il suffira de rentrer cette formule en F13, de la tirer en G13, de remplacer en G13 le ;2 par ;3 et ensuite de tirer sur toute la hauteur
CRDLMNT
0
LePierre Messages postés 249 Date d'inscription samedi 8 mars 2008 Statut Membre Dernière intervention 2 août 2012 337 > Vaucluse Messages postés 26496 Date d'inscription lundi 23 juillet 2007 Statut Contributeur Dernière intervention 1 avril 2022
9 avril 2008 à 09:32
bonjour

non, il ne faut pas rendre l'adresse du tableau de données absolue.
C'est ce qui permet d'avoir le résultat en face de la ligne concernée du tableau et de ne pas donner constament la première valeur valide du tableau
à plus
0
Merci

Mes données en fin d'année s'étale sur 3600 lignes d'analyses avec à peu près 200 dates différentes.

sur un autre classeur j'ai une feuille journalière ou j'indique la date, sur cette feuille j'aimerais récupérer uniquement les valeurs pour ce jour.

j'ai bien essayer d'adapter ta formule mais c'est chaud! je pense qu'il me faudrait une macro mais j'y connais pas grand chose

merci quand même

max
0
LePierre Messages postés 249 Date d'inscription samedi 8 mars 2008 Statut Membre Dernière intervention 2 août 2012 337
9 avril 2008 à 09:39
bonjour

voici le test que j'ai réalisé. Si ça peut t'aider :
https://www.cjoint.com/?ejjMJ2hzmJ

à plus
0
salut voici mon fichier j'ai tous rassemblé sur le même fichier

je ne peux pas copier la formule jusqu'en bas en fin d'année j'aurais environ 3000 résultats

à moins de pouvoir ensuite récupérer juste les 20 lignes au niveau de ma feuil1


https://www.cjoint.com/?ejklVsblcf
0
salut voici mon fichier j'ai tous rassemblé sur le même fichier

je ne peux pas copier la formule jusqu'en bas en fin d'année j'aurais environ 3000 résultats

à moins de pouvoir ensuite récupérer juste les 20 lignes au niveau de ma feuil1


https://www.cjoint.com/?ejklVsblcf
0
LePierre Messages postés 249 Date d'inscription samedi 8 mars 2008 Statut Membre Dernière intervention 2 août 2012 337
10 avril 2008 à 10:03
bonjour

Voici ton fichier rectifié avec des macros :
https://www.cjoint.com/?ekj7t64F7W

Pour l'utiliser il faut indiquer une date et choisir un onglet à analyser (liste déroulante) car je pense que tu auras plusieurs type de produits à suivre
ensuite appuie sur le bouton Synthèse

contacte moi si tu souhaites des précisions

à plus
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Salut

c'est tout bon sauf que j'aimerais avoir un peu plus d'explication pour pouvoir modifier

en fait je dois rappatrier sur la feuille journalière les valeurs pour une date de chaque onglet (j'en aurais 7 différents) donc coller ces valeurs à un endroit différent

En tout cas merci, c'est déjà un TRES grand pas

max
0
muzomax Messages postés 3 Date d'inscription mardi 8 avril 2008 Statut Membre Dernière intervention 11 avril 2008
10 avril 2008 à 12:44
ou alors plutot que de choisir l'onglet, faire plusieurs macro pour chaque onglet

j'ai mis quasi tous les onglets dans le fichier suivant

https://www.cjoint.com/?ekmScFGIqC

juste faire une macro pour un onglet après je me débrouillerais,

je te remercie
0
LePierre Messages postés 249 Date d'inscription samedi 8 mars 2008 Statut Membre Dernière intervention 2 août 2012 337
10 avril 2008 à 14:41
bonjour

voici le code modifié :
https://www.cjoint.com/?ekoMaoS1ih
j'ai simplement ajouté une boucle do...loop pour lire la liste des onglets et réaliser la synthèse globale
j'ai ajouté en colonne D le nom de l'onglet concerné pour chaque valeur (c'est peut être utile ?)
à plus
0
T'es super cool et super bon en excel

merci

mais je te le redemande stp, tu peux pas me faire la macro pour un seul onglet (comme ça je n'aurais qu'à changer le nom de l'onglet dans VB pour changer), en fait chaque onglet est un fichier, j'ai tous mis dans le même fichier pour pouvoir expliquer mon problème.

En tout cas, tu m'as déjà fait avancer énormément et je te remercie

max
0
LePierre Messages postés 249 Date d'inscription samedi 8 mars 2008 Statut Membre Dernière intervention 2 août 2012 337
11 avril 2008 à 10:07
bonjour

voici le code à personnaliser pour chaque onglet :
Sub TriSelonDate2()
    '--------------------------------------------
    'identifier l'onglet
    OngletRecherche = "5 kg Amylacée"
    '--------------------------------------------
    
    Application.ScreenUpdating = False
    LigOng = 9
    ColOng = 12
    LigRes = 9
    ColRes = 1
    
    'Analyse
    Lig = 9
    Col = 2
    DateRecherche = Sheets("Résultats").Cells(3, 5).Value
    Sheets(OngletRecherche).Select
    
    Do
        DatEnCours = Cells(Lig, Col).Value
        If DatEnCours = "" Then Exit Do
        
        If DatEnCours = DateRecherche Then
            Sheets("Résultats").Cells(LigRes, ColRes).Value = Cells(Lig, Col + 3).Value
            Sheets("Résultats").Cells(LigRes, ColRes + 1).Value = Cells(Lig, Col + 4).Value
            Sheets("Résultats").Cells(LigRes, ColRes + 2).Value = Cells(Lig, Col + 5).Value
            Sheets("Résultats").Cells(LigRes, ColRes + 3).Value = OngletRecherche
            LigRes = LigRes + 1
        End If
        Lig = Lig + 1
    Loop
    Sheets("Résultats").Select
    Range("a1").Select
    Application.ScreenUpdating = True
End Sub


mais pour rendre ton code universel, si dans tous tes classeurs, ton 1er onglet est "Résultats" et le 2ème tes données, tu peux remplacer dans le code : OngletRecherche = "5 kg Amylacée" par :
OngletRecherche = Sheets(2).Name

à plus
0
muzomax Messages postés 3 Date d'inscription mardi 8 avril 2008 Statut Membre Dernière intervention 11 avril 2008
11 avril 2008 à 12:13
merci pour tout LePierre

max
0