Copie selon conditions
Résolu
Ismailjosh
Messages postés
3
Date d'inscription
Statut
Membre
Dernière intervention
-
yg_be Messages postés 23541 Date d'inscription Statut Contributeur Dernière intervention -
yg_be Messages postés 23541 Date d'inscription Statut Contributeur Dernière intervention -
A voir également:
- Copie selon conditions
- Copie cachée - Guide
- Super copie - Télécharger - Gestion de fichiers
- Copie écran samsung - Guide
- Copie disque dur - Guide
- Copie rapide - Télécharger - Gestion de fichiers
2 réponses
yg_be
Messages postés
23541
Date d'inscription
Statut
Contributeur
Dernière intervention
Ambassadeur
1 584
bonjour,
merci d'utiliser les balises de code quand tu postes du code.
il est très important d'ajouter "option explicit" en début de module.
tu écris que ton code ne fait pas ce que tu souhaites. que fait-il? en quoi est-ce différent de ce que tu attends?
tu n'expliques pas non plus ce que le code doit faire.
merci d'utiliser les balises de code quand tu postes du code.
il est très important d'ajouter "option explicit" en début de module.
tu écris que ton code ne fait pas ce que tu souhaites. que fait-il? en quoi est-ce différent de ce que tu attends?
tu n'expliques pas non plus ce que le code doit faire.
Bonjour,
Je n'arrive pas à faire en sorte que ce code applique la condition souhaitée :
- Si la colonne B dans l'onglet "Guide" contient les valeurs "Donnée Non Saisie" ou "Saisie Erronée"
-> Copie d'éléments dans l'onglet "Sauvegarde" (Cellules D11/D10/D9/D8/B6/B7/B6/B9) + Toutes les lignes comportant les
valeurs "Donnée Non Saisie" ou "Saisie Erronée"
- Si la condition n'est pas remplie
-> Copie d'éléments dans l'onglet "Sauvegarde" (Cellules D11/D10/D9/D8/B6/B7/B6/B9) et indiquer dans la colonne K : "PAS
D'ERREURS DETECTEES"
Lorsque j'exécute le code, il me fait un mix et n'applique pas la condition souhaitée :( :(
Quelqu'un pourrait-il m'aider, please?
Je n'arrive pas à faire en sorte que ce code applique la condition souhaitée :
- Si la colonne B dans l'onglet "Guide" contient les valeurs "Donnée Non Saisie" ou "Saisie Erronée"
-> Copie d'éléments dans l'onglet "Sauvegarde" (Cellules D11/D10/D9/D8/B6/B7/B6/B9) + Toutes les lignes comportant les
valeurs "Donnée Non Saisie" ou "Saisie Erronée"
- Si la condition n'est pas remplie
-> Copie d'éléments dans l'onglet "Sauvegarde" (Cellules D11/D10/D9/D8/B6/B7/B6/B9) et indiquer dans la colonne K : "PAS
D'ERREURS DETECTEES"
Lorsque j'exécute le code, il me fait un mix et n'applique pas la condition souhaitée :( :(
Quelqu'un pourrait-il m'aider, please?
Sub Archiver() Dim sht As Worksheet, sht1 As Worksheet Dim lastrow As Long, ligne As Long, i As Integer Set sht = Worksheets("Guide") Set sht1 = Worksheets("Sauvegarde") ligne = sht1.Cells(sht1.Rows.Count, "A").End(xlUp).Row + 1 With sht1 lastrow = sht.Cells(sht.Rows.Count, "A").End(xlUp).Row For i = 14 To lastrow If sht.Range("B" & i).Value = "Donnée Non Saisie" Or sht.Range("B" & i).Value = "Saisie Erronée" Then .Range("A" & ligne).Value = sht.Range("D11").Value 'N° Fiche .Range("B" & ligne).Value = sht.Range("D10").Value 'Date du contrôle .Range("C" & ligne).Value = sht.Range("D9").Value 'Contrôleur .Range("D" & ligne).Value = sht.Range("D8").Value 'Type .Range("E" & ligne).Value = sht.Range("B6").Value 'Num CL .Range("F" & ligne).Value = sht.Range("B7").Value 'Date de réception .Range("G" & ligne).Value = sht.Range("B6").Value 'Date de traitement .Range("H" & ligne).Value = sht.Range("B9").Value 'Traité par sht.Range("A" & i & ":C" & i & "").Copy .Range("J" & ligne).PasteSpecial xlPasteValues ligne = ligne + 1 Else .Range("A" & ligne).Value = sht.Range("D11").Value 'N° Fiche .Range("B" & ligne).Value = sht.Range("D10").Value 'Date du contrôle .Range("C" & ligne).Value = sht.Range("D9").Value 'Contrôleur .Range("D" & ligne).Value = sht.Range("D8").Value 'Type .Range("E" & ligne).Value = sht.Range("B6").Value 'Num CL .Range("F" & ligne).Value = sht.Range("B7").Value 'Date de réception .Range("G" & ligne).Value = sht.Range("B6").Value 'Date de traitement .Range("H" & ligne).Value = sht.Range("B9").Value 'Traité par .Range("K" & ligne).Value = "PAS D'ERREURS DETECTEES" End If Next i End With End Sub