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 :

Copier colonne sur une feuile 1 et coller sur une feuille 2 avec des modifications


Sujet :

Excel

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2016
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côtes d'Armor (Bretagne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2016
    Messages : 2
    Points : 0
    Points
    0
    Par défaut Copier colonne sur une feuile 1 et coller sur une feuille 2 avec des modifications
    Bonjour à tous,


    Je suis un débutant à VBA et je suis la recherche d’un coup de main pour une macro vba ou j’ai deux problèmes

    J’ai des informations dans le sheet1/colonne D4 que je voudrais récupérer dans le sheet2/colonne Sauf que je ne peux pas faire un simple copier-coller, il faut que je modifie un peu les données que met dans sheet2/colonne B.

    Pour faire simple :

    Si dans la FEUILLE 1/Colonne 4/Ligne2 « XXX» apparait, alors mettre dans FEUILLE2/Colonne2 Ligne2 «abc»
    Si dans la FEUILLE 1/Colonne 4 Ligne3 « YYY» apparait, alors mettre dans FEUILLE2/Colonne2 Ligne3 « 1234»


    Si dans la FEUILLE 1/Colonne 4 Ligne50« XXX» apparait, alors mettre dans FEUILLE2/Colonne2 Ligne50 «abc»


    J’ai au maximum 1500lignes et environ 5 critères qui doivent se correspondre:
    XXX avec abc
    YYY avec 1234
    ZZZ avec azerty
    WWW avec 123qwe
    TTT avec AAA123



    Exemple concret de mon tableau d'exemple ci-joint :

    - sur la 2eme ligne de la feuille 1 le texte affiche «Text1», je veux mettre cette information dans la feuille 2 sur la ligne 2 en tant que «Text01»
    - sur la 3eme ligne de la feuille 1 le texte affiche «Text2», je veux mettre cette information dans la feuille 2 sur la ligne 3 en tant que «Text02»



    Mon deuxième problème, c’est que ce tableau sera remis à jour une fois par semaine et le nombre de ligne variera, mais les critères restent les mêmes. Est-il possible d’avoir une macro qui s’arrête automatiquement jusqu’à la dernière ligne ?

    Merci beaucoup d’avance (même si vous ne pouvez-pas m’aider) :-)
    Fichiers attachés Fichiers attachés

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

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Points : 32 866
    Points
    32 866
    Par défaut
    Que signifie exactement "débutante" ?
    Est-ce que ça veut dire que tu as déjà commencé à coder et que tu veux quelques conseils sur les méthodes à utiliser ou est-ce que ça veut dire que tu n'y connais rien en VBA et que tu veux que d'autres fassent le travail à ta place pour te proposer quelque chose clé en main ?
    (oui, je sais, cette question peut paraitre quelque peu agressive mais j'avoue commencer à ressentir un certain agacement concernant les pratiques de certains. Sans doute faudrait-il que je fasse un petit break avec ce forum).

    Citation Envoyé par ko-b89 Voir le message
    Est-il possible d’avoir une macro qui s’arrête automatiquement jusqu’à la dernière ligne ?
    Bien sûr.
    Il suffit de déterminer quelle est la dernière ligne utilisée en se servant de la propriété End de l'objet Range ou de la propriété UsedCells de l'objet Worksheet.
    Merci de cliquer sur pour chaque message ayant aidé puis sur pour clore cette discussion.

  3. #3
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2016
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côtes d'Armor (Bretagne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2016
    Messages : 2
    Points : 0
    Points
    0
    Par défaut
    Débutant, ça veut dire que j’ai commencé à potasser la semaine dernière une macro toute simple. En gros je sais comment faire pour copier une colonne d’une feuille 1 vers une feuille 2 sans aucune retouche.
    Mais c’est la 2eme étape avec cette condition que je ne vois comprends pas du tout.
    La difficulté pour moi c’est de faire le code pour la condition et faire ça entre les deux feuilles. C’était fait manuellement avant, mais avec une macro ça serait beaucoup plus simple….

    J’arrive à faire la 1ere partie de mon travail, (et je peux mettre le code demain, mais je pense que ça n’apportera pas grand-chose)

    Merci de m’éclairer sur un début de piste si vous voyez de quoi je parle;-)

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

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Points : 32 866
    Points
    32 866
    Par défaut
    Tout d'abord, je pense que tu devrais essayer d'acquérir les bases du langage avec un didacticiel, par exemple celui-ci :
    http://bidou.developpez.com/article/VBA/
    Consulter des programmes déjà fait pour apprendre, c'est une bonne idée, mais si l'on ne dispose pas des fondamentaux, on peut difficilement progresser.

    Citation Envoyé par ko-b89 Voir le message
    J’ai des informations dans le sheet1/colonne D4 que je voudrais récupérer dans le sheet2/colonne Sauf que je ne peux pas faire un simple copier-coller, il faut que je modifie un peu les données que met dans sheet2/colonne B.
    Tu scrutes la colonne 4 de ta feuille 1 avec une boucle For To limitée avec la propriété End de la colonne (voir mon message précédent).
    Dans la boucle, tu mets un Select Case pour sélectionner les différentes valeurs trouvées dans cette colonne et définir la valeur correspondante pour la feuille 2.
    Tu modifies cette valeur avec l'objet Value de l'objet Range de la cellule concernée.
    Merci de cliquer sur pour chaque message ayant aidé puis sur pour clore cette discussion.

Discussions similaires

  1. Réponses: 2
    Dernier message: 21/11/2013, 14h23
  2. Réponses: 0
    Dernier message: 27/03/2013, 10h12
  3. Réponses: 3
    Dernier message: 14/08/2012, 10h24
  4. copier une ligne et la coller dans une nouvelle
    Par alexkickstand dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 06/09/2007, 20h10
  5. Réponses: 2
    Dernier message: 18/01/2007, 09h48

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