IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Excel Discussion :

Récupérer une valeur chaque x lignes


Sujet :

Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau candidat au Club
    Homme Profil pro
    Consultant en sécurité
    Inscrit en
    Juillet 2015
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Consultant en sécurité

    Informations forums :
    Inscription : Juillet 2015
    Messages : 2
    Par défaut Récupérer une valeur chaque x lignes
    Bonjour,

    Je suis débutant, et j'ai du mal à réaliser une opération sur excel.

    Ce que je veux faire, c'est pouvoir récupérer une valeur chaque 15 lignes et la mettre dans un tableau à part.

    Par exemple :

    j'ai un premier tableau avec :

    A1 => 6

    A16 => 15

    A31 => x

    Et dans une second tableau, je voudrais récupérer toutes ces valeurs pour les résumer. Par exemple, je souhaiterais avoir en E1 => 6 en E2 => 15, E3 => x etc.

    J'ai essayé de sélectionner les 2 premières valeurs, et utiliser l'option de recopie incrémentée (Petite croix en bas à droite que je glisse vers le bas) mais Excel ne comprend pas que je souhaite récupérer chaque 15 valeurs même si je sélectionne les 2 cases.

    Avez-vous une idée pour réaliser cela ?

    Merci beaucoup !!

  2. #2
    Membre éprouvé
    Homme Profil pro
    Inscrit en
    Mai 2007
    Messages
    120
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : Mai 2007
    Messages : 120
    Par défaut
    Salut le Forum

    Formule en E1 à recopier vers le bas
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =DECALER($A$1;(LIGNE()-1)*15;;;)
    Mytå_Qc

  3. #3
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2015
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 28
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2015
    Messages : 6
    Par défaut
    Coucou, je suis un debutant mais j'essayé de faire quelque chose que fonctionnait. Ce n'est pas une formule mais une macro si tu sais où la copier/coller ça devrait faire ce que tu veux.

    ( J'ai essayé de déclarer mes variables avec des noms explicites que tu t'y retrouves facilement. Si ça t'intéresse)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    Sub Recuperer_valeur()
    Dim ligne As Byte, multiplicateur As Byte
    multiplicateur = 1
     
    Range("A1").Select
    'On sélectionne la case A1 pour ne pas lancer la macro n'importe où
     
    Do While ActiveCell <> ""
    ' la fonction tournera tant que la cellule est pleine
        ligne = 1 + 15 * multiplicateur
    ' a = 1+ multiple de 15 (en fonction du multiplicateur)
        Sheet2.Cells(multiplicateur, 5) = ActiveCell.Value
    ' on donne à la cellule (multiplicateur, E) la valeur de la cellule sélectionnée
        multiplicateur = multiplicateur + 1
    ' on rajoute 1 au multiplicateur
        Sheet1.Cells(ligne, 1).Select
    ' on prend la sélectionne la cellule 15 ligne plus bas
    Loop
     
    End Sub
    Cordialement, AvalonLight

  4. #4
    Nouveau candidat au Club
    Homme Profil pro
    Consultant en sécurité
    Inscrit en
    Juillet 2015
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Consultant en sécurité

    Informations forums :
    Inscription : Juillet 2015
    Messages : 2
    Par défaut
    Bonjour,
    Merci pour vos réponses.

    J'ai essayé de faire dans la cellule où je voulais voir les résultats affichés l'opération DECALER, mais cela ne fonctionne pas.
    Voilà ce que j'ai tapé :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =DECALER($E$16;(LIGNE()-1)*15;;;)
    Sachant que la première valeur qui doit être prise est en E16, et les autres en E31, E46, etc ...
    En tapant cette commande, j'obtiens une "-" en résultat.

    Je comprends donc pas vraiment pourquoi ça ne fonctionne toujours pas.

    Merci d'avance pour votre aide !

  5. #5
    Membre expérimenté
    Homme Profil pro
    Enthousiaste Excel
    Inscrit en
    Avril 2015
    Messages
    155
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Enthousiaste Excel

    Informations forums :
    Inscription : Avril 2015
    Messages : 155
    Par défaut
    Solution basée sur les filtres :

    Insère une colonne en A:A
    Remplis-y les valeurs de 1 à 15. prolonge de manière a répéter 123...15 plusiuers fois.

    Puis fais un filtre sur la valeur de ton choix.

    Le résultat est copié/collable.

    Pas d'automatisation, pas de vba, mais ça marche

  6. #6
    Expert confirmé

    Homme Profil pro
    Curieux
    Inscrit en
    Juillet 2012
    Messages
    5 169
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Curieux
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Juillet 2012
    Messages : 5 169
    Billets dans le blog
    5
    Par défaut
    Bonjour,

    la formule de Mytå_Qc fonctionne parfaitement

    écrite en E1 ==> prend la valeur de A1 : ligne 1 + 15*(1-1)
    écrite en E2 ==> prend la valeur de A16 : ligne 1 + 15*(2-1)
    écrite en E[N°Ligne] ==> prend la valeur de A[1 + 15*(N°Ligne - 1)]

    attention à bien avoir strictement la formule telle qu'elle a été proposée, dans chaque cellule de la colonne E
    (ne pas changer la référence $A$1)

  7. #7
    Invité de passage
    Homme Profil pro
    Ingénieur Fiabilité
    Inscrit en
    Janvier 2019
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Ingénieur Fiabilité

    Informations forums :
    Inscription : Janvier 2019
    Messages : 1
    Par défaut Formule inversé est-elle possible?
    Citation Envoyé par Mytå_Qc Voir le message
    Salut le Forum

    Formule en E1 à recopier vers le bas
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =DECALER($A$1;(LIGNE()-1)*15;;;)
    Mytå_Qc
    Bonjour, comment je peux faire pour avoir l'inverse? Je pars d'information sur mon tableau de B2 à B650 pour les copier sur la page d'après à partir de la case A7 décalé de 8 cases en suite. Entre chaque info j'ai un QRcode.
    J'ai mis mon fichier en copie
    Fichiers attachés Fichiers attachés

Discussions similaires

  1. Réponses: 9
    Dernier message: 15/06/2014, 14h14
  2. Réponses: 12
    Dernier message: 18/06/2008, 14h20
  3. Récupérer une valeur de la ligne précédente
    Par oOBaalberithOo dans le forum SQL
    Réponses: 2
    Dernier message: 05/06/2008, 09h27
  4. Réponses: 5
    Dernier message: 03/04/2007, 11h08
  5. [XSL]récupérer une valeur de plusieurs fichiers XML
    Par snoop dans le forum XSL/XSLT/XPATH
    Réponses: 7
    Dernier message: 05/02/2006, 00h32

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo