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 Coller Conditionnel


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre à l'essai
    Inscrit en
    Avril 2009
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Avril 2009
    Messages : 5
    Par défaut Copier Coller Conditionnel
    Bonjour et merci d'avance pour votre précieuse aide.
    En tant que grand débutant ça fait plusieurs jours que je me casse la tête sur une requête.
    J'ai un fichiers de 3 feuilles. Je veux créer une requête via un bouton de commande qui me permet à chaque fois q'une colonne affiche "A DETRUIRE" de couper la ligne correspondante et la coller sur une autre feuille ainsi de suite...
    En dessous ce que j'ai fait :
    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
    Private Sub CommandButton1_Click()
    Dim iLI As Integer
    Dim iRE As Integer
    Dim LI As Worksheet
    Dim RE As Worksheet
    Set LI = Worksheets(1)
    Set RE = Worksheets(2)
    iRE = 2
    For iLI = 4 To 1000
    If LI.Cells(iLI, 11).Text = "A DETRUIRE" Then
     RE.Rows(iRE) = RE.Rows(iLI)
    'LI.EntireRow(iLI).Copy RE.Range("A1", 11)
    iRE = iRE + 1
    End If
    Do While RE.Cells(iRE, 1).Value <> ""
        iRE = iRE + 1
    Loop
    Next
    End Sub
    Comme vous vous en doutez . . . ça ne marche pas et je sais pas quel est le problème
    Merci de votre aide
    Fichiers attachés Fichiers attachés

  2. #2
    Membre Expert Avatar de laetitia
    Profil pro
    Inscrit en
    Décembre 2002
    Messages
    1 281
    Détails du profil
    Informations personnelles :
    Âge : 35
    Localisation : France

    Informations forums :
    Inscription : Décembre 2002
    Messages : 1 281
    Par défaut
    bonjour Madiaw le forum un exemple enleve ce code dans ton fichier

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    Worksheets(1).coloumns(2).Copy
    Worksheets(2).coloumns(1).Paste
    End Sub
    puis...
    code du bouton
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Private Sub CommandButton1_Click()
    essai
    End Sub
    la macro dans un module standard attention au nom des feuilles adapte!!

    Option Explicit

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Sub essai()
    Dim c As Range
    Application.ScreenUpdating = False
    For Each c In Range("k3", Range("k65536").End(xlUp))
    If c = "A DETRUIRE" Then
    c.EntireRow.Cut Destination:=Sheets(2).Range("A65536").End(xlUp)(2)
     End If: Next c
    End Sub

  3. #3
    Membre à l'essai
    Inscrit en
    Avril 2009
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Avril 2009
    Messages : 5
    Par défaut Merci beaucoup Laeticia
    Merci Laetitia

    Mais comment éviter les blancs sur la feuille d'origine après avoir couper et coller les lignes qui contiennent le "A DETRUIRE" ?

  4. #4
    Membre Expert Avatar de laetitia
    Profil pro
    Inscrit en
    Décembre 2002
    Messages
    1 281
    Détails du profil
    Informations personnelles :
    Âge : 35
    Localisation : France

    Informations forums :
    Inscription : Décembre 2002
    Messages : 1 281
    Par défaut
    rebonjour essai comme cela

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Sub essai()
    Dim c As Range
    Application.ScreenUpdating = False
    For Each c In Range("k3", Range("k65536").End(xlUp))
    If c = "A DETRUIRE" Then
    c.EntireRow.Cut Destination:=Sheets(2).Range("A65536").End(xlUp)(2)
     End If: Next c
    Sheets(1).[A4:A65000].SpecialCells(xlCellTypeBlanks).EntireRow.Delete
    End Sub

  5. #5
    Membre à l'essai
    Inscrit en
    Avril 2009
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Avril 2009
    Messages : 5
    Par défaut Mer Merci beaucoup LAETITIA
    MILLE MILLIARDS DE MILLES MERCI Laetitia



  6. #6
    Membre à l'essai
    Inscrit en
    Avril 2009
    Messages
    5
    Détails du profil
    Informations forums :
    Inscription : Avril 2009
    Messages : 5
    Par défaut
    Bonjour Laetitia

    Je reviens encore une fois bénéficier de tes lumières.
    Cette fois ci je souhaite couper et coller une partie au lieu de toute la ligne: de A3 à K3 et la coller sur la feuille 2.

    Et sur la feuille 2 j'ai intégré des check box et je souhaiterais afficher la valeur "DETRUIT" sur la colonne K à chaque fois que je coche sur une case.

    Je joins le fichier !

    Merci d'avance
    Fichiers attachés Fichiers attachés

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

Discussions similaires

  1. [XL-2010] Pb avec le copier coller conditionnel vers une autre feuille
    Par awa123 dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 21/08/2014, 09h10
  2. [Toutes versions] copier coller conditionnel
    Par muss1985 dans le forum Excel
    Réponses: 1
    Dernier message: 17/05/2014, 18h45
  3. copier/coller conditionnel "automatique"
    Par mavvv dans le forum Excel
    Réponses: 2
    Dernier message: 01/04/2014, 15h16
  4. [XL-2007] Copier coller conditionnel
    Par ebedel dans le forum Excel
    Réponses: 1
    Dernier message: 27/10/2012, 15h38
  5. Macro : copier-coller conditionnel
    Par teddy72000 dans le forum Macros et VBA Excel
    Réponses: 18
    Dernier message: 09/07/2010, 21h12

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