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 la valeur d'une colonne


Sujet :

Macros et VBA Excel

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    35
    Détails du profil
    Informations personnelles :
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations forums :
    Inscription : Mai 2008
    Messages : 35
    Par défaut copier la valeur d'une colonne
    Bonjour,

    J'utilise un morceau de code très pratique pour copier des colonnes d'un fichier vers un autre.Quand les cellules sources sont des valeurs ça fonctionne à merveille, par contre dès qu'il y a une formule, ça ne fonctionne pas du tout. comment faire pour qu'il ne prenne que les valeurs?

    voici le code :


    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
    Dim ShSource As Worksheet, ShCibleA As Worksheet, ShCibleB As Worksheet
     
    Application.ScreenUpdating = False
     
    Set ShSource = ThisWorkbook.Sheets("Feuil1")
     
    Workbooks.Open Filename:="H:\TEST 3.xls"
    Set ShCibleA = ActiveWorkbook.Sheets("LHV")
    Set ShCibleB = ActiveWorkbook.Sheets("MRS")
     
    ShSource.Range("A:A").Copy ShCibleA.Range("A1")
    ShSource.Range("B:B").Copy ShCibleA.Range("B1")
     
    ShSource.Range("A:A").Copy ShCibleB.Range("A1")
    ShSource.Range("B:B").Copy ShCibleB.Range("B1")
     
    Workbooks("TEST .xls").Close False
     
    Application.ScreenUpdating = True

    Merci d'avance

  2. #2
    Membre chevronné
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    560
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2004
    Messages : 560
    Par défaut
    Bonjour

    Pense à mettre ton code entre balise ## pour plus de clareté
    fait un truc dans le genre... c'st pour faire des collage spécila par valeur

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    Columns("D:D").Select
        Application.CutCopyMode = False
        Selection.Copy
        Columns("E:E").Select
        Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
            False, Transpose:=False
    Ce qui donnerais pour ton code

    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
     
    Dim ShSource As Worksheet, ShCibleA As Worksheet, ShCibleB As Worksheet
     
    Application.ScreenUpdating = False
     
    Set ShSource = ThisWorkbook.Sheets("Feuil1")
     
    Workbooks.Open Filename:="H:\TEST 3.xls"
    Set ShCibleA = ActiveWorkbook.Sheets("LHV")
    Set ShCibleB = ActiveWorkbook.Sheets("MRS")
     
    ShSource.Range("A:A").Select
    Selection.Copy 
    ShCibleA.Range("A1").Select
    Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
            False, Transpose:=False
     
    ShSource.Range("B:B").Select
    Selection.Copy 
    ShCibleA.Range("B1").Select
    Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
            False, Transpose:=False
     
    ShSource.Range("A:A").Select
    Selection.Copy 
    ShCibleB.Range("A1").Select
    Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
            False, Transpose:=False
     
    ShSource.Range("B:B").Select
    Selection.Copy 
    ShCibleB.Range("B1").Select
    Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:= _
            False, Transpose:=False
     
    Workbooks("TEST .xls").Close False
     
    Application.ScreenUpdating = True

  3. #3
    Membre Expert
    Avatar de JackOuYA
    Inscrit en
    Juin 2008
    Messages
    1 040
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 1 040
    Par défaut
    Bonsoir

    Tu peu aussi t'inspirer de :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    Set ShSource = ThisWorkbook.Sheets("Feuil1")
     
    Set ShCibleA = ThisWorkbook.Sheets("Feuil2")
     
    ShCibleA.Range("A:A") = ShSource.Range("A:A").Value

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    35
    Détails du profil
    Informations personnelles :
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations forums :
    Inscription : Mai 2008
    Messages : 35
    Par défaut
    Bonjour helios77 et JackOuYA

    Merci pour vos réponces

    J'ai placer le code de JackOuYA et ça fonctionne du tonner.C'est nickel

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 14/04/2015, 13h35
  2. Réponses: 1
    Dernier message: 11/03/2010, 15h47
  3. [XL-2003] Copier valeur dans une colonne
    Par avyrex dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 10/01/2010, 17h09
  4. Réponses: 2
    Dernier message: 07/07/2008, 19h24
  5. Copier les valeurs d'une colonne dans une autre
    Par hochimi dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 13/07/2007, 14h14

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