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

Macros et VBA Excel Discussion :

Recopie les valeurs de la feuille A vers la feuille B [XL-2016]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Inscrit en
    Octobre 2006
    Messages
    316
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 316
    Par défaut Recopie les valeurs de la feuille A vers la feuille B
    Bonjour à tous !

    Via du VBA et son bouton associé..

    Je tente de recopier toutes les valeurs saisies dans la colonne AA (plage AA13 jusqu'à "indefini", plage non fixe) de ma feuille "Formulaire", vers ma feuille "Demande" (colonne V).

    La condition : La valeur de la colonne E (de Formulaire) et D (de Demande) soit égale.

    merci pour le coup de pouce

  2. #2
    Membre expérimenté
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2018
    Messages
    254
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2018
    Messages : 254
    Par défaut
    Bonjour,

    Essaye ceci :

    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
    Sub Test()
     
    dim WsForm as worksheet, WsDde as worksheet
    set WsForm = thisworkbook.worksheets("Formulaire")
    set WsDde = thisworkbook.worksheets("Demande")
     
    with wsform
     
    if .range("E1")=.range("D1") then
     
    .range("AA13:AA" & .cells(rows.count,27).end(xlup).row).copy destination:=WsDde.range("V1")
     
    end if
     
    end with

  3. #3
    Membre éclairé
    Inscrit en
    Octobre 2006
    Messages
    316
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 316
    Par défaut
    Merci Trystan441.

    Nous y sommes presque .. il faut que la valeur copie se place sur la bonne ligne.. cela ne peut pas être "V1" comme destination.. mais plutot la ligne où la valeur repérée est identique.

    En fait il faudrait balayer la Colonne AA (onglet Formulaire) pour repérer les valeurs à recopier vers la colonne V (onglet Demande) où AA (onglet Formulaire) est = D (onglet Demande)

  4. #4
    Membre expérimenté
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2018
    Messages
    254
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2018
    Messages : 254
    Par défaut
    Re,

    Pas de soucis mais peut être que tu aurais pu l'expliquer dans ton premier message

    Une question : Cas concret

    Copie vers la ligne identique :
    Valeur en E10 et D10 égale -> Copie de AA10 (Formulaire) vers V10 (Demande)

    OU

    Copie vers la première ligne vide
    Valeur en E10 et D10 égale -> Copie de AA10 (Formulaire) vers V5 (Demande)

    Laquelle de ces deux possibilités est la bonne ?

  5. #5
    Membre éclairé
    Inscrit en
    Octobre 2006
    Messages
    316
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 316
    Par défaut
    Effectivement, j'ai merdé sur l'explication ! désolé

    donc..: "xx" etant le n° de la ligne..

    Valeur en E"xx" (Formulaire) et D"xx" (Demande) égale => copie de AA"xx" (Formulaire) (même ligne que E"xx"), vers V"xx" (Demande)

    les valeurs qui sont égales ne sont pas forcement sur la même ligne entre les 2 onglets...
    par contre, sur l'onglet Formulaire, oui

    doit y avoir une histoire de bloucle quelque part à faire..

    oulà!! j'espère que je suis clair!

  6. #6
    Membre expérimenté
    Homme Profil pro
    Étudiant
    Inscrit en
    Octobre 2018
    Messages
    254
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Octobre 2018
    Messages : 254
    Par défaut
    Je t'avoue que je n'ai pas tout compris mais tu vas me dire si le code ci-dessous te convient !

    Je n'ai pas testé :

    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
    Sub Transfert
     
    dim i as long, j as long
     
    dim WsForm as worksheet, WsDde as worksheet
    set WsForm = thisworkbook.worksheets("Formulaire")
    set WsDde = thisworkbook.worksheets("Demande")
     
    dim TabForm() as variant, TabDde() as variant
    tabform=wsform.usedrange.value
    tabdde=wsdde.usedrange.value
     
     
    for i = 2 to ubound(tabform,1)
    for j = 2 to ubound(tabdde,1)
     
    if tabform(i,5)=tabdde(j,4) then tabdde(j,22)=tabform(i,27)
     
    next j
    next i
     
    Wsdde.Range("A1").Resize(UBound(Tabdde, 1), UBound(Tabdde, 2)) = Tabdde
     
    end sub

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [XL-2003] Avec VBA, copier les formats et les valeurs d'une feuille vers une autre.
    Par mormic dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 06/11/2014, 19h17
  2. recopier les valeur en fonction de combobox en cascade
    Par adriennoob dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 01/04/2010, 19h00
  3. Réponses: 1
    Dernier message: 25/06/2009, 06h53
  4. Copier les valeurs d'une feuille dans une nouvelle feuille en VBA
    Par muska78 dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 11/06/2008, 10h44
  5. Réponses: 2
    Dernier message: 21/06/2006, 17h57

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