Copier des cellules si mot commençant par

reve24

XLDnaute Occasionnel
Voici un fichier en exemple sur les phrases de risques
Suite à une extraction en ASCII , j' ai des lignes d 'entête FDS ( Fiche de sécurité)
et dessous les phrases de riques
Je souhaiterai à partir d'une cellule exemple B1 ou sur autre onglet
extraire toutes les phrases de rique commençant par S

le scenario c'est de FDS à FDS en colonne A
Ne copier que si commence par S

Merci d avance
 

Pièces jointes

  • EssaiMacro.xlsm
    16.3 KB · Affichages: 109

Hervé

XLDnaute Barbatruc
Re : Copier des cellules si mot commençant par

salut :)

un simple filtre :

Code:
Public Sub toto()
With Columns(1)
    .AutoFilter Field:=1, Criteria1:="=S*", Operator:=xlAnd
    .Copy Destination:=Range("b1")
    .AutoFilter
End With
End Sub

a plus
 

reve24

XLDnaute Occasionnel
Re : Copier des cellules si mot commençant par

Bonjour
Ta macro filtre certes ùais ne correspond pas à ma demande.
Elle filtre les lignes commençant par S
Pas besoin d une macro tu fait filtre commence par :D
Moi je choisi une FDS en B1
et je demande que les lignes commencant par S de cette FDS ( toi elle prenait toutes les lignes du fichier )
Il ya en réalité 300 FDS je n'ai fait qu' un exemple .
Pour 2 je l aurais fait a la main:)
 

reve24

XLDnaute Occasionnel
Re : Copier des cellules si mot commençant par

Je viens d avancer ce travail
grace a une jolie de BOISGONTHIER
Sub SelectionChiffre()
Dim cel As Range, plage As Range
For Each cel In Range("E1", Range("E65536").End(xlUp))
If cel Like "[A-Z]*" Or cel Like "[a-z]*" Then Set plage = Union(cel, IIf(plage Is Nothing, cel, plage))
Next
If Not plage Is Nothing Then plage.EntireRow.Select 'Intersect(plage.EntireRow, [Tableau]).Select
End Sub


Je la modifie en
Sub SelectionChiffre()
Dim cel As Range, plage As Range
For Each cel In Range("E1", Range("E65536").End(xlUp))
If cel Like "[FDS]*" Or cel Like "*" Then Set plage = Union(cel, IIf(plage Is Nothing, cel, plage))
Next
If Not plage Is Nothing Then plage.EntireRow.Select 'Intersect(plage.EntireRow, [Tableau]).Select
End Sub


Et je peux copier dans un autre onglet que ce que je souhaite maintenant cela n extrait pas ma demande
car reste à extraire les lignes commencant par S de cette FDS
 

Staple1600

XLDnaute Barbatruc
Re : Copier des cellules si mot commençant par

Bonjour à tous

reve24
En remaniant ton tableau avec une colonne en plus
puis en appliquant un filtre élaboré avec critère formulé et en cochant Extraction sans doublons.
tu obtenir ce résultat:
ex2filtelbab.jpg
Je laisse tester et faire la traduction de cette manip en VBA si tu intéressé par cette voie.

PS: Tu es d'accord avec les 13 éléments filtrés (car dans ton exemple , il y en avait 9) ?
 

Staple1600

XLDnaute Barbatruc
Re : Copier des cellules si mot commençant par

Bonsoir à tous

reve24
T'as testé ma proposition (voir message précédent) ?
Tu aurai du ... au moins pour me dire que ce n'était pas tout à fait le résultat attendu :rolleyes:

00 ( salut ;))
En testant ta PJ, j'ai compris comment modifier ma précédente proposition (avec Filtre élaboré) que ce soit manuellement ou par VBA pour arriver au même résultat que toi.
Mais comme cela n'a guère retenu (a priori) l'attention de reve24 :rolleyes:
Je me contenterai ici de te remercier d'avoir éclairer ma lanterne avec ton AutoFilter ;)
 

Discussions similaires

Statistiques des forums

Discussions
315 096
Messages
2 116 183
Membres
112 677
dernier inscrit
Justine11