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 :

Copier vers .. [XL-2010]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Ingénieur commercial
    Inscrit en
    Avril 2013
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Ingénieur commercial
    Secteur : Distribution

    Informations forums :
    Inscription : Avril 2013
    Messages : 16
    Par défaut Copier vers ..
    Bonjour,

    Je découvre VBA depuis quelques jours pour un projet.

    J'ai besoin de créer une macro qui copie la valeur d'une cellule pour la transférer à la place de la valeur d'une autre cellule. Pour le moment j'ai cette ligne de code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    If ['Gestion stock'!B21<>""] Then Range("Stock!E4").Value = Range("'Gestion stock'!B21").Value
    Ce code fonctionne seulement j'ai besoin d'un petite modification qui me pose problème.

    La destination du "collage", ici Stock!E4, est donné par une cellule. J'ai essayé ce code mais bug.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    If ['Gestion stock'!B21<>""] Then Range("'Gestion stock'!B22.Value").Value = Range("'Gestion stock'!B21").Value
    Si quelqu'un a un brin d'explication! Merci d'avance

  2. #2
    Expert éminent
    Avatar de Marc-L
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Avril 2013
    Messages
    9 468
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2013
    Messages : 9 468
    Par défaut


    Bonsoir, voir du côté de la méthode Evaluate

  3. #3
    Membre expérimenté
    Homme Profil pro
    Technicien Méthodes
    Inscrit en
    Mars 2013
    Messages
    128
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France

    Informations professionnelles :
    Activité : Technicien Méthodes
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Mars 2013
    Messages : 128
    Par défaut
    Bonjour,

    Voici un exemple de code qui marche pour ce que tu veux faire

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    If Sheets("Gestion stock").Range("B21") <> "" Then
        Sheets("Gestion stock").Range("B22") = Sheets("Gestion stock").Range("B21")
    End If
    Prefere toujours externaliser le nom des feuilles avec sheets("")

  4. #4
    Membre émérite Avatar de keygen08
    Homme Profil pro
    Inscrit en
    Octobre 2012
    Messages
    545
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations forums :
    Inscription : Octobre 2012
    Messages : 545
    Par défaut
    Bonjour
    ceci
    If ['Gestion stock'!B21<>""] Then Range("'Gestion stock'!B22.Value").Value = Range("'Gestion stock'!B21").Value
    doit etre remplacer par cela
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    If ['Gestion stock'!B21<>""] Then Range("'Gestion stock'!B22").Value = Range("'Gestion stock'!B21").Value
    Il y a un value en trop

  5. #5
    Membre averti
    Homme Profil pro
    Ingénieur commercial
    Inscrit en
    Avril 2013
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Ingénieur commercial
    Secteur : Distribution

    Informations forums :
    Inscription : Avril 2013
    Messages : 16
    Par défaut
    Bonjour,

    Après quelques recherches sur la fonction Evaluate, cette solution fonctionne parfaitement, merci beaucoup Marc-L .

    La ligne de code est donc transformé en :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    If ['Gestion stock'!B21<>""] Then Range(Evaluate("'Gestion stock'!B22")).Value = Range("'Gestion stock'!B21").Value

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

Discussions similaires

  1. [AC-2000] Macro Copier vers
    Par p'tite Sandrine dans le forum VBA Access
    Réponses: 2
    Dernier message: 15/05/2009, 14h23
  2. [OpenOffice][Texte] [Delphi] copier vers presse-papier
    Par oceane dans le forum OpenOffice & LibreOffice
    Réponses: 1
    Dernier message: 28/01/2009, 17h37
  3. Copier vers un lecteur réseau
    Par sondo dans le forum Langage
    Réponses: 11
    Dernier message: 14/11/2008, 11h00
  4. Modèle de page HTM pour copier/vers
    Par freya91 dans le forum IHM
    Réponses: 2
    Dernier message: 08/06/2006, 09h52
  5. [Répertoire] Copier vers un autre répertoire
    Par Argonz dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 18/09/2002, 10h39

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