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 :

Macro copier coller si cellule à choix multiples est OK (Ne prend pas en compte )


Sujet :

Macros et VBA Excel

  1. #1
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2014
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Transports

    Informations forums :
    Inscription : Juin 2014
    Messages : 16
    Par défaut Macro copier coller si cellule à choix multiples est OK (Ne prend pas en compte )
    Bonjour à tous et à toutes

    j'ai un fichier avec deux feuilles, une feuille (DEVELOPPEMENT) à renseigner et l'autre feuille pour me faire un tableau récap (LUP) des données renseignées au niveau de la première feuille
    Mais je suis bloqué actuellement

    Je fais une macro pour sélectionner chaque cellule dans une plage ici de (S8:U30) :
    je dois lui demander pour chaque colonne de cette de plage, pour chaque cellule (qui comporte une liste de choix : OK, NOK, NC) de me copier quelques éléments de cette feuille si la cellule est OK : donc elle va me copier des données standards qui sont en ligne 2 jusqu'à la ligne 7 qu'elle va copier dans ma feuille recap données (Lup) les premières colonnes, mais aussi pour le reste des autres colonnes, la macro doit me copier certaines données de la même ligne que la cellule dans ma plage ou y'a le NOK et ainsi de suite, à chaque fois quil y'a un NOK dans cette plage refaire la même chose.

    j'ai essayé mais j'y arrive plus, j'aurais vraiment besoin de votre aide

    Merci par avance

    Ce sont les deux ligne du milieu qui ne marchent pas, sinon il me copie tout le reste sauf les colonnes J et K

    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
    47
    48
    49
    50
     
    Sub CopieLupSiAPP1Ok()
     
        Dim plage As Range, cell As Range
        Dim Maligne As Integer
        Dim Lg As Integer
     
        Lg = 5
        Maligne = ActiveCell.Row
     
        Application.ScreenUpdating = False
        With ThisWorkbook.Sheets("Lup")
            derlig = .Range("A" & Rows.Count).End(xlUp).Row
     
        With Workbooks(NomFichier).Sheets("Developpement")
            Set plage = .Range("S8:S" & derlig)
        End With
     
        For Each cell In plage
     
            If cell = "NOK" Then
     
            .Sheets("Developpement").Range("E6").Copy ThisWorkbook.Sheets("Lup").Range("B" & Lg)
            .Sheets("Developpement").Range("AA4").Copy ThisWorkbook.Sheets("Lup").Range("C" & Lg)
            .Sheets("Developpement").Range("V5").Copy ThisWorkbook.Sheets("Lup").Range("D" & Lg)
            .Sheets("Developpement").Range("AA1").Copy ThisWorkbook.Sheets("Lup").Range("E" & Lg)
            .Sheets("Developpement").Range("Y5").Copy ThisWorkbook.Sheets("Lup").Range("F" & Lg)
            .Sheets("Developpement").Range("F1").Copy ThisWorkbook.Sheets("Lup").Range("G" & Lg)
            .Sheets("Developpement").Range("Y6").Copy ThisWorkbook.Sheets("Lup").Range("H" & Lg)
            .Sheets("Developpement").Range("Y5").Copy ThisWorkbook.Sheets("Lup").Range("I" & Lg)
     
            .Sheets("Developpement").Range("Maligne, - 17").Copy ThisWorkbook.Sheets("Lup").Range("J" & Lg)
            .Sheets("Developpement").Range("Maligne, 3").Copy ThisWorkbook.Sheets("Lup").Range("K" & Lg)
     
     
            .Sheets("Developpement").Range("F1").Copy ThisWorkbook.Sheets("Lup").Range("L" & Lg)
            .Sheets("Developpement").Range("F2").Copy ThisWorkbook.Sheets("Lup").Range("M" & Lg)
            .Sheets("Developpement").Range("F3").Copy ThisWorkbook.Sheets("Lup").Range("N" & Lg)
            .Sheets("Developpement").Range("F4").Copy ThisWorkbook.Sheets("Lup").Range("O" & Lg)
     
     
     
            End If
        Next cell
     
    Lg = Lg + 1
     
     
    Application.ScreenUpdating = True
    End Sub

  2. #2
    Membre éclairé
    Homme Profil pro
    Chargé d'affaires commerciales
    Inscrit en
    Janvier 2018
    Messages
    62
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 26
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Chargé d'affaires commerciales
    Secteur : Bâtiment

    Informations forums :
    Inscription : Janvier 2018
    Messages : 62
    Par défaut
    Bonjour

    J'attire ton attention ici :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
            .Sheets("Developpement").Range("Maligne, - 17").Copy ThisWorkbook.Sheets("Lup").Range("J" & Lg)
            .Sheets("Developpement").Range("Maligne, 3").Copy ThisWorkbook.Sheets("Lup").Range("K" & Lg)
    Tu confonds la syntaxe de Range et de Cells. Cells peut être utiliser avec des indices, par exemple Cells(1,5) mais Range s'exprime à l'aide d'une lettre et d'un nombre, par exemple : Range("A5"). Note bien que l'argument à rentrer dans Range est une chaine de caractère. C'est à dire que dans tes lignes de code, en utilisant Range, il cherche "Ma ligne, 3". Ce n'est tout simplement pas possible.

    Essaie de méditer un peu là dessus, pense aux concaténations de chaînes pour régler ton problème.

    Cdt,

    Matt

  3. #3
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2014
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Transports

    Informations forums :
    Inscription : Juin 2014
    Messages : 16
    Par défaut
    Bonjour,

    Merci pour ta réponse, j'essai de corriger cela, et je reviens vers le forum

Discussions similaires

  1. Macro copier/coller des cellules
    Par Aaymeric91 dans le forum Excel
    Réponses: 6
    Dernier message: 26/07/2017, 12h00
  2. [XL-2010] Problème macro copier-coller des cellules dans deux feuilles Excel
    Par benadry dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 01/04/2014, 19h05
  3. Réponses: 1
    Dernier message: 24/02/2014, 15h48
  4. macro copier coller couleur cellules
    Par bobafric dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 03/08/2012, 10h46
  5. Macro copier coller première cellule vide
    Par jul85 dans le forum Macros et VBA Excel
    Réponses: 10
    Dernier message: 24/02/2008, 17h06

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