1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Ingénieur après-vente
    Inscrit en
    janvier 2018
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur après-vente

    Informations forums :
    Inscription : janvier 2018
    Messages : 3
    Points : 1
    Points
    1

    Par défaut pieger des valeurs entre deux feuilles et copier coller

    Bonjour,

    n'étant habituellement pas utilisateur de VBA, j'ai besoin d'aide pour établir un macro afin de transférer des données entre deux sheets de l'Excel en attachement.

    En premier lieu, Je voudrais piéger les valeurs identiques entre la colonne 4 de rack 1 et la colonne 13 de table.

    Puis lorsque des valeurs identiques sont établies, prendre la valeur de la colonne 5 de rack 1 (même ligne) et la copier sur table en colonne 4 sur la ligne determinée grace au piège précédent.

    J'ai essayé bcp de choses, mais rien ne fonctionne....

    Merci d'avance pour vos conseils

    Thomas
    Fichiers attachés Fichiers attachés

  2. #2
    Expert éminent
    Homme Profil pro
    aucune
    Inscrit en
    avril 2016
    Messages
    5 473
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 76
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : avril 2016
    Messages : 5 473
    Points : 9 589
    Points
    9 589

    Par défaut

    Bonjour,
    Crois-tu que ton exposé est à lui seul suffisamment clair sans courir de risques en ouvrant ton classeur ?
    Lire ceci pourtant signalé "Important" :
    https://www.developpez.net/forums/d8...s-discussions/
    Je n'accepte pas de demande d' "amitié" individuelle. Tout développeur est pour moi un ami.
    Je n'ouvre AUCUN classeur tiers (avec ou sans macro). Ne m'en proposez donc pas.

    Celui qui prétend déterminer une cause fondamentale sur la base d'un effet n'a aucune chance d'avoir mon estime. S'il insiste, il a alors droit à mon total mépris.

  3. #3
    Expert éminent sénior Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    juin 2007
    Messages
    8 510
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur

    Informations forums :
    Inscription : juin 2007
    Messages : 8 510
    Points : 15 620
    Points
    15 620

    Par défaut

    Citation Envoyé par thomthai69 Voir le message
    En premier lieu, Je voudrais piéger les valeurs identiques entre la colonne 4 de rack 1 et la colonne 13 de table.
    Que veux-tu dire par "piéger des valeurs" ?

    Puis lorsque des valeurs identiques sont établies, prendre la valeur de la colonne 5 de rack 1 (même ligne) et la copier sur table en colonne 4 sur la ligne determinée grace au piège précédent.
    N'ayant pas ouvert ton fichier, je n'ai pas trop compris tes explications, mais j'ai l'impression que ça pourrait se faire avec un simple RECHERCHEV().
    Merci de cliquer sur pour chaque message ayant aidé puis sur pour clore cette discussion.

  4. #4
    Nouveau Candidat au Club
    Homme Profil pro
    Ingénieur après-vente
    Inscrit en
    janvier 2018
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur après-vente

    Informations forums :
    Inscription : janvier 2018
    Messages : 3
    Points : 1
    Points
    1

    Par défaut

    Citation Envoyé par Menhir Voir le message
    Que veux-tu dire par "piéger des valeurs" ?
    Merci pour ta question, Je m'explique:
    j'ai un peu plus de 2000 alvéoles ou cellule a desservir en coordonnées X et Y pour l'API d'une machine. Ces alvéoles sont reparties dans un vingtaine de racks.
    Dans la recopie des résultats que je souhaite effectuer il y aura donc deux Tables de résultats compilés: Une détaillant la position de x par rapport a y (x1;y20= 11000 par exemple) et la deuxième table détaillant les positions y par rapport a x (y20;x1= 4000 par exemple)
    Le moyen que j'ai trouvé pour identifier facilement chacune des coordonnées et ne pas faire d'erreurs a la recopie est d'utiliser le numéro unique de l'alvéole. J'aimerais donc, en fonction d'un numéro de cellule dans mes feuilles Rack, effectuer un offset systématique sur la valeur x de sa ligne et le copier puis le coller dans la table de compilation x, sur la bonne ligne et colonne.

    Même principe pour y dans sa table dédiée.



    Citation Envoyé par Menhir Voir le message
    N'ayant pas ouvert ton fichier, je n'ai pas trop compris tes explications, mais j'ai l'impression que ça pourrait se faire avec un simple RECHERCHEV().
    Afin de t'aider a visualiser l'architecture de ces sheets. j'ai sélectionné les colonnes correspondant au numéros uniques d'alvéoles que je souhaiterais utiliser pour transférer les valeurs de positions x et y Nom : rack.png
Affichages : 9
Taille : 116,9 KoNom : tableX.png
Affichages : 9
Taille : 128,1 Ko


    Merci pour ton aide

    Thomas

  5. #5
    Nouveau Candidat au Club
    Homme Profil pro
    Ingénieur après-vente
    Inscrit en
    janvier 2018
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur après-vente

    Informations forums :
    Inscription : janvier 2018
    Messages : 3
    Points : 1
    Points
    1

    Par défaut

    Bonjour,

    Je me demande si la fonction match ne ferait pas l'affaire? J'ai découvert et tenté d'adapter ce code provenant d'autres sujets. Cependant cela me remonte une erreur 9


    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
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    Sub transfert datas()
     
        Dim rack1 As Worksheet
        Dim table As Worksheet
        Dim PlgSource As Range
        Dim PlgDest As Range
        Dim Cel As Range
        Dim Ligne As Long
     
        'défini les feuilles
        Set rack1 = Worksheets("rack1")
        Set table = Worksheets("table")
     
        'défini les plages
        With rack1
     
            Set PlgSource = .Range(.Cells(25, 5), .Cells(.Rows.Count, 1).End(xlUp))
     
        End With
     
        With table
     
            Set PlgDest = .Range(.Cells(2, 13), .Cells(.Rows.Count, 1).End(xlUp))
     
        End With
     
        'parcour la plage (en colonne A) de la feuille de destination
        For Each Cel In PlgDest
     
            'gestion de l'erreur de la valeur non trouvé
            On Error Resume Next
            Ligne = Application.WorksheetFunction.Match(Cel.Value, PlgSource, 0) + 1 'rajoute 2 car départ de plage en ligne 3 '1 pour moi
     
            'si pas d'erreur, récupère les valeurs en colonnes E:G et les inscrit en colonne AN:AP
            If Err.Number = 0 Then
     
                Cel.Offset(, -9).Resize(, 0).Value = rack1.Cells(Ligne, 1).Offset(, 1).Resize(, 0).Value
     
            End If
     
        Next Cel
     
    End Sub
    Merci

    Thomas

Discussions similaires

  1. [XL-2010] Transférer des données entre deux feuilles et les placer à des lignes spécifiques
    Par ElPibeOro dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 26/04/2013, 15h25
  2. Soustraire des valeurs entre deux dictonnaires
    Par RTK45 dans le forum Général Python
    Réponses: 4
    Dernier message: 17/02/2012, 00h37
  3. Affichers des valeurs entre deux nombres.
    Par anirolf dans le forum Débuter
    Réponses: 10
    Dernier message: 13/11/2011, 01h35
  4. [XL-2003] Rechercher des donnée entre deux feuilles
    Par mimil49 dans le forum Excel
    Réponses: 1
    Dernier message: 06/07/2011, 17h14
  5. Permuter des valeurs entre deux listes
    Par doogybreton dans le forum IHM
    Réponses: 2
    Dernier message: 14/12/2007, 22h42

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