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 :

VBA : recopie de ligne avec condition PB?


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau candidat au Club
    Homme Profil pro
    Ingénieur développement matériel électronique
    Inscrit en
    Décembre 2013
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activité : Ingénieur développement matériel électronique
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Décembre 2013
    Messages : 1
    Par défaut VBA : recopie de ligne avec condition PB?
    Bonjour

    Je suis en panne d'inspiration et de fonctionnement sur 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
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    Option Explicit
    Private Sub Worksheet_Change(ByVal Target As Range)
     
        Dim CCS1 As Integer
        Dim CCS2 As Integer
     
     
        Dim Dest1 As Worksheet
        Dim Dest2 As Worksheet
     
        Dim LigneDestination As Integer
     
     
        Set Dest1 = Worksheets("Feuil2")
        Set Dest2 = Worksheets("Feuil3")
        Set CCS1 = 9
        Set CCS2 = 9
     
    Function RC1()
     
        If Target.Count > 1 Then Exit Function
        If Target.Column = CCS1 Then
            If UCase(Target.Value) = "C" Then
                Range("B" & Target.Row).Resize(2, 8).Copy
                ActiveSheet.Paste Destination:=Dest1.Range("B" & Rows.Count).End(xlUp).Offset(1, 0)
                Application.CutCopyMode = False
     
            End If
            End If
            End If
    End Function
     
    Function RC2()
        If Target.Count > 1 Then Exit Function
        If Target.Column = CCS2 Then
        If UCase(Target.Value) = "SC" Then
                Range("B" & Target.Row).Resize(2, 8).Copy
         ActiveSheet.Paste Destination:=Destination.Range("B" & Rows.Count).End(xlUp).Offset(1, 0)
                Application.CutCopyMode = False
     
        End If
        End If
        End If
     
    End Function
    End Sub
    Merci d'avance pour vôtre aide

  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

    Bonjour,

    je suis en panne de décodeur, de boule de cristal et autres incantations divinatoires & magiques ‼

    Commencer déjà par éditer le message et de baliser le code avec l'icône # dédiée, cf règles de ce forum !

    Ensuite, une présentation claire et exhaustive de la problématique est de rigueur, sinon consulter Mme Irma ‼

    Cordialement.

  3. #3
    Membre Expert
    Homme Profil pro
    retraité
    Inscrit en
    Mars 2013
    Messages
    885
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2013
    Messages : 885
    Par défaut recopie ligne avec condition PB
    Bonjour,

    Code bizarre qui englobe les deux "functions" dans la "sub worksheet....."

    je suppose que l'intention est d'appeler les "function" à partir de la sub ?

    si tel est le cas, mettre "end sub" avant "function rc1" et dans cette "sub " prévoir les appels aux "function".

    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
    39
    40
    41
    42
    43
    44
     
     
    Option Explicit
    Private Sub Worksheet_Change(ByVal Target As Range)
     
    Dim CCS1 As Integer
    Dim CCS2 As Integer
     
    Dim Dest1 As Worksheet
    Dim Dest2 As Worksheet
     
    Dim LigneDestination As Integer
     
    Set Dest1 = Worksheets("Feuil2")
    Set Dest2 = Worksheets("Feuil3")
    Set CCS1 = 9
    Set CCS2 = 9
    Call RC1 ' avec ou sans passage d'arguments
    Call RC2 ' avec ou sans passage d'arguments
    End Sub
     
    Function RC1()
    If Target.Count > 1 Then Exit Function
        If Target.Column = CCS1 Then
            If UCase(Target.Value) = "C" Then
                Range("B" & Target.Row).Resize(2, 8).Copy
                ActiveSheet.Paste Destination:=Dest1.Range("B" & Rows.Count).End(xlUp).Offset(1, 0)
                Application.CutCopyMode = False
            End If
        End If
    End If
    End Function
     
    Function RC2()
    If Target.Count > 1 Then Exit Function
        If Target.Column = CCS2 Then
            If UCase(Target.Value) = "SC" Then
                Range("B" & Target.Row).Resize(2, 8).Copy
                ActiveSheet.Paste Destination:=Destination.Range("B" & Rows.Count).End(xlUp).Offset(1, 0)
                Application.CutCopyMode = False
            End If
        End If
    End If
    End Function
    Cordialement,

Discussions similaires

  1. [E-03] Copie de ligne avec condition de type rechercheV
    Par Lufia dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 27/02/2009, 14h24
  2. inserer une ligne avec condition
    Par pepesese dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 25/02/2008, 19h22
  3. vba suppresion de lignes sur condition
    Par Invité dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 08/07/2007, 22h49
  4. [VBA-E]Insertion ligne avec Recopie Formule
    Par nono le golfeur dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 17/01/2007, 14h02
  5. Affichage ligne avec condition dans /etc/passwd
    Par mzt.insat dans le forum Shell et commandes GNU
    Réponses: 7
    Dernier message: 17/04/2006, 21h25

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