Récupérer des données sous condition

  • Initiateur de la discussion Initiateur de la discussion mouftie
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

mouftie

XLDnaute Junior
Bonjour,
Je voudrai extraitre d'un fichier de donner toutes les lignes dont la colonne C commence par "328" ; sachant que la colonne C est constituée de nb numérique de 7 caractères.
Et ainsi constituer un nouveau fichier.
J'aai essayé ça :
Code:
Sub Si328EnColC()
Dim Adresse As String
Dim DernLig As Long, Lign As Long

DernLig = Range("C" & Rows.Count).End(xlUp).Row
For Lign = 17 To DernLig
'If UCase(Cells(Lign, 3)) = "328*" Then   'remplacer 3 par le N° Colon
If Cells(Lign, 3) = "328" Then
Adresse = Adresse & "," & Range(Cells(Lign, 2), Cells(Lign, 8)).Address
'   (Cells(Lign, 2), Cells(Lign, 8) = $B$lign:$H$lign
End If
Next
Adresse = Right(Adresse, Len(Adresse) - 1)
Range(Adresse).Copy
Workbooks("Class2.xlxm").Sheets("GPT").Range("A1").End(xlDown).Offset(1).PasteSpecial Paste:=xlPasteValues
 Application.CutCopyMode = False
End Sub
mais cela ne fonctionne, les N° en 328 ne sont pas reconnus

Est-ce que qq'1 peut m'aider svp.
Merci.
PJ un fichier test
Ce lien n'existe plus
 
[Résolu] Récupérer des données sous condition

Bonjour JBarbe,
Merci beaucoup
C'est nickel ; A bientôt peut-être

Du coup, j'en ai profité pour corriger mon travail ; si ça intéresse qq'1

Code:
Sub Si328EnColC()
Dim Adresse As String
Dim DernLig As Long, Lign As Long

DernLig = Range("C" & Rows.Count).End(xlUp).Row
For Lign = 17 To DernLig
'Si les 3 1er caractère de la cellule CLign = 328, alors
    If Left(Cells(Lign, 3), 3) = "328" Then
        'j'affecte à Adresse la ligne de données
        Adresse = Range(Cells(Lign, 2), Cells(Lign, 8)).Address
'        (Cells(Lign, 2), Cells(Lign, 8) = $B$lign:$H$lign
        Range(Adresse).Copy     'Copie / coller les valeurs en fin de tablo        
        Workbooks("Trier.xls").Sheets("GPT").Range("A1").End(xlUp).Offset(1).PasteSpecial Paste:=xlPasteValues
         Application.CutCopyMode = False
    End If
Next
End Sub
 
Dernière édition:
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
5
Affichages
911
Réponses
4
Affichages
733
Réponses
15
Affichages
786
Réponses
16
Affichages
2 K
Retour