Macro pour extraire les seules opérations pointées
5 réponses
Michir
Bonsoir,
Soit plusieurs feuilles (mettons 3) avec une liste en colonne d'opérations
et une colonne pour les pointer (avec un "X" par exemple).
Je souhaiterais faire une macro qui récapitule dans une feuille "Récap" une
liste continue des seules opérations pointées.
J'ai essayé par formules sans succès
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
anonymousA
Bonjour,
supposons que tes feuilles soient selectionnées toutes ensemble et que la plage des données sur ces feuilles soient A1:B9 et que la colonne contenant les X soit la colonne B
For Each sh In ActiveWindow.SelectedSheets With sh .[C1] = .[B1] .[C2].Value = "'=X" Set dest = Sheets("RECAP").Range("A65536").End(xlUp).Offset(1, 0) .Range("A1:B9").AdvancedFilter xlFilterCopy, .[C1:C2], dest dest.Cells(1).EntireRow.Delete .[C1:C2].Clear End With Next
A adapter à ton contexte bien sur,
A+
Bonsoir,
Soit plusieurs feuilles (mettons 3) avec une liste en colonne d'opérations et une colonne pour les pointer (avec un "X" par exemple). Je souhaiterais faire une macro qui récapitule dans une feuille "Récap" une liste continue des seules opérations pointées. J'ai essayé par formules sans succès
Merci
Michel
Bonjour,
supposons que tes feuilles soient selectionnées toutes ensemble et que
la plage des données sur ces feuilles soient A1:B9 et que la colonne
contenant les X soit la colonne B
For Each sh In ActiveWindow.SelectedSheets
With sh
.[C1] = .[B1]
.[C2].Value = "'=X"
Set dest = Sheets("RECAP").Range("A65536").End(xlUp).Offset(1, 0)
.Range("A1:B9").AdvancedFilter xlFilterCopy, .[C1:C2], dest
dest.Cells(1).EntireRow.Delete
.[C1:C2].Clear
End With
Next
A adapter à ton contexte bien sur,
A+
Bonsoir,
Soit plusieurs feuilles (mettons 3) avec une liste en colonne d'opérations
et une colonne pour les pointer (avec un "X" par exemple).
Je souhaiterais faire une macro qui récapitule dans une feuille "Récap" une
liste continue des seules opérations pointées.
J'ai essayé par formules sans succès
supposons que tes feuilles soient selectionnées toutes ensemble et que la plage des données sur ces feuilles soient A1:B9 et que la colonne contenant les X soit la colonne B
For Each sh In ActiveWindow.SelectedSheets With sh .[C1] = .[B1] .[C2].Value = "'=X" Set dest = Sheets("RECAP").Range("A65536").End(xlUp).Offset(1, 0) .Range("A1:B9").AdvancedFilter xlFilterCopy, .[C1:C2], dest dest.Cells(1).EntireRow.Delete .[C1:C2].Clear End With Next
A adapter à ton contexte bien sur,
A+
Bonsoir,
Soit plusieurs feuilles (mettons 3) avec une liste en colonne d'opérations et une colonne pour les pointer (avec un "X" par exemple). Je souhaiterais faire une macro qui récapitule dans une feuille "Récap" une liste continue des seules opérations pointées. J'ai essayé par formules sans succès
Merci
Michel
JB
Bonsoir,
Cf PJ http://cjoint.com/?mpu0QDJzlp
A B C D E 1 aaa 11 11 11 2 x bbb 11 11 11 3 ccc 11 11 11 4 ddd 11 11 11 5 x eee 11 11 11 6 fff 11 11 11 7 ggg 11 11 11 8 x hhh 11 11 11 9 iii 11 11 11
Sub copiePavé() mot = "x" témoin = False For Each c In Range("A1:A500") If c.Value = mot Then If témoin = False Then Range(c.Address).Resize(, 5).Select témoin = True End If Union(Selection, Range(c.Address).Resize(, 5)).Select End If Next c Selection.Copy Sheets("Recap").Range("A1") End Sub
Cordialement JB
Bonsoir,
Cf PJ http://cjoint.com/?mpu0QDJzlp
A B C D E
1 aaa 11 11 11
2 x bbb 11 11 11
3 ccc 11 11 11
4 ddd 11 11 11
5 x eee 11 11 11
6 fff 11 11 11
7 ggg 11 11 11
8 x hhh 11 11 11
9 iii 11 11 11
Sub copiePavé()
mot = "x"
témoin = False
For Each c In Range("A1:A500")
If c.Value = mot Then
If témoin = False Then
Range(c.Address).Resize(, 5).Select
témoin = True
End If
Union(Selection, Range(c.Address).Resize(, 5)).Select
End If
Next c
Selection.Copy Sheets("Recap").Range("A1")
End Sub
A B C D E 1 aaa 11 11 11 2 x bbb 11 11 11 3 ccc 11 11 11 4 ddd 11 11 11 5 x eee 11 11 11 6 fff 11 11 11 7 ggg 11 11 11 8 x hhh 11 11 11 9 iii 11 11 11
Sub copiePavé() mot = "x" témoin = False For Each c In Range("A1:A500") If c.Value = mot Then If témoin = False Then Range(c.Address).Resize(, 5).Select témoin = True End If Union(Selection, Range(c.Address).Resize(, 5)).Select End If Next c Selection.Copy Sheets("Recap").Range("A1") End Sub
Cordialement JB
Youky
Salut, une autre parmis d'autres,
n = 1 'ligne de début de récap For onglet = 1 To Sheets.Count If ActiveSheet.Name <> "Récap" Then 'commence à voir en ligne 2 jusqu'en bas 'ici "E" à remplacer par lettre de colonne du X For lig = 2 To Sheets(onglet).Range("E65000").End(xlUp).Row 'a remplacer 5 par le N° colonne du X (ici en majuscule) If Sheets(onglet).Cells(lig, 5) = "X" Then Sheets("Récap").Cells(n, 1) = Sheets(onglet).Cells(lig, 1) n = n + 1 End If Next End If Next
"Michir" a écrit dans le message de news: 43a1bf1b$0$19694$
Bonsoir,
Soit plusieurs feuilles (mettons 3) avec une liste en colonne d'opérations et une colonne pour les pointer (avec un "X" par exemple). Je souhaiterais faire une macro qui récapitule dans une feuille "Récap" une liste continue des seules opérations pointées. J'ai essayé par formules sans succès
Merci
Michel
Salut,
une autre parmis d'autres,
n = 1 'ligne de début de récap
For onglet = 1 To Sheets.Count
If ActiveSheet.Name <> "Récap" Then
'commence à voir en ligne 2 jusqu'en bas
'ici "E" à remplacer par lettre de colonne du X
For lig = 2 To Sheets(onglet).Range("E65000").End(xlUp).Row
'a remplacer 5 par le N° colonne du X (ici en majuscule)
If Sheets(onglet).Cells(lig, 5) = "X" Then
Sheets("Récap").Cells(n, 1) = Sheets(onglet).Cells(lig, 1)
n = n + 1
End If
Next
End If
Next
"Michir" <michir1789@wanadoo.fr> a écrit dans le message de news:
43a1bf1b$0$19694$8fcfb975@news.wanadoo.fr...
Bonsoir,
Soit plusieurs feuilles (mettons 3) avec une liste en colonne d'opérations
et une colonne pour les pointer (avec un "X" par exemple).
Je souhaiterais faire une macro qui récapitule dans une feuille "Récap"
une liste continue des seules opérations pointées.
J'ai essayé par formules sans succès
n = 1 'ligne de début de récap For onglet = 1 To Sheets.Count If ActiveSheet.Name <> "Récap" Then 'commence à voir en ligne 2 jusqu'en bas 'ici "E" à remplacer par lettre de colonne du X For lig = 2 To Sheets(onglet).Range("E65000").End(xlUp).Row 'a remplacer 5 par le N° colonne du X (ici en majuscule) If Sheets(onglet).Cells(lig, 5) = "X" Then Sheets("Récap").Cells(n, 1) = Sheets(onglet).Cells(lig, 1) n = n + 1 End If Next End If Next
"Michir" a écrit dans le message de news: 43a1bf1b$0$19694$
Bonsoir,
Soit plusieurs feuilles (mettons 3) avec une liste en colonne d'opérations et une colonne pour les pointer (avec un "X" par exemple). Je souhaiterais faire une macro qui récapitule dans une feuille "Récap" une liste continue des seules opérations pointées. J'ai essayé par formules sans succès
Merci
Michel
LSteph
Bonsoir, La liste dans ces trois feuilles ne doit donc pas excèder le tiers de la feuille ...continuité..dans quel ordre? Admettons en A les croix ou n'importe en b en b les opéretions Feuilles 1 à 3 et récap en Feuil4
Sub synth4() Dim i As Integer, j As Integer, x As Long For j = 1 To 3 For i = 1 To [a21846].End(xlUp).Row If Sheets(j).Cells(i, 1).Value <> "" Then x = x + 1 Sheets(4).Cells(x, 1) = _ Sheets(j).Cells(i, 2).Value End If Next i Next j End Sub
'lSteph
"Michir" a écrit dans le message de news: 43a1bf1b$0$19694$
Bonsoir,
Soit plusieurs feuilles (mettons 3) avec une liste en colonne d'opérations et une colonne pour les pointer (avec un "X" par exemple). Je souhaiterais faire une macro qui récapitule dans une feuille "Récap" une liste continue des seules opérations pointées. J'ai essayé par formules sans succès
Merci
Michel
Bonsoir,
La liste dans ces trois feuilles ne doit donc pas excèder le tiers de la
feuille ...continuité..dans quel ordre?
Admettons en A les croix ou n'importe en b en b les opéretions
Feuilles 1 à 3 et récap en Feuil4
Sub synth4()
Dim i As Integer, j As Integer, x As Long
For j = 1 To 3
For i = 1 To [a21846].End(xlUp).Row
If Sheets(j).Cells(i, 1).Value <> "" Then
x = x + 1
Sheets(4).Cells(x, 1) = _
Sheets(j).Cells(i, 2).Value
End If
Next i
Next j
End Sub
'lSteph
"Michir" <michir1789@wanadoo.fr> a écrit dans le message de news:
43a1bf1b$0$19694$8fcfb975@news.wanadoo.fr...
Bonsoir,
Soit plusieurs feuilles (mettons 3) avec une liste en colonne d'opérations
et une colonne pour les pointer (avec un "X" par exemple).
Je souhaiterais faire une macro qui récapitule dans une feuille "Récap"
une liste continue des seules opérations pointées.
J'ai essayé par formules sans succès
Bonsoir, La liste dans ces trois feuilles ne doit donc pas excèder le tiers de la feuille ...continuité..dans quel ordre? Admettons en A les croix ou n'importe en b en b les opéretions Feuilles 1 à 3 et récap en Feuil4
Sub synth4() Dim i As Integer, j As Integer, x As Long For j = 1 To 3 For i = 1 To [a21846].End(xlUp).Row If Sheets(j).Cells(i, 1).Value <> "" Then x = x + 1 Sheets(4).Cells(x, 1) = _ Sheets(j).Cells(i, 2).Value End If Next i Next j End Sub
'lSteph
"Michir" a écrit dans le message de news: 43a1bf1b$0$19694$
Bonsoir,
Soit plusieurs feuilles (mettons 3) avec une liste en colonne d'opérations et une colonne pour les pointer (avec un "X" par exemple). Je souhaiterais faire une macro qui récapitule dans une feuille "Récap" une liste continue des seules opérations pointées. J'ai essayé par formules sans succès
Merci
Michel
Michir
Bonsoir, Merci à vous tous anonymousA, JB, Youky, LSteph Je vais essayer de me débrouiller avec votre aide. Un seul détail, l'application des macros sauf peut être celle d'anonymousA n'efface pas le résultat de l'exécution précédente. J'ai essayé un ligne avec clearcontents, mais elle empêche le fonctionnement de la macro. (je suis parti avec celle de LSteph) Merci encore Michel
"Michir" a écrit dans le message de news: 43a1bf1b$0$19694$
Bonsoir,
Soit plusieurs feuilles (mettons 3) avec une liste en colonne d'opérations et une colonne pour les pointer (avec un "X" par exemple). Je souhaiterais faire une macro qui récapitule dans une feuille "Récap" une liste continue des seules opérations pointées. J'ai essayé par formules sans succès
Merci
Michel
Bonsoir,
Merci à vous tous anonymousA, JB, Youky, LSteph
Je vais essayer de me débrouiller avec votre aide.
Un seul détail, l'application des macros sauf peut être celle d'anonymousA
n'efface pas le résultat de l'exécution précédente. J'ai essayé un ligne
avec clearcontents, mais elle empêche le fonctionnement de la macro. (je
suis parti avec celle de LSteph)
Merci encore
Michel
"Michir" <michir1789@wanadoo.fr> a écrit dans le message de news:
43a1bf1b$0$19694$8fcfb975@news.wanadoo.fr...
Bonsoir,
Soit plusieurs feuilles (mettons 3) avec une liste en colonne d'opérations
et une colonne pour les pointer (avec un "X" par exemple).
Je souhaiterais faire une macro qui récapitule dans une feuille "Récap"
une liste continue des seules opérations pointées.
J'ai essayé par formules sans succès
Bonsoir, Merci à vous tous anonymousA, JB, Youky, LSteph Je vais essayer de me débrouiller avec votre aide. Un seul détail, l'application des macros sauf peut être celle d'anonymousA n'efface pas le résultat de l'exécution précédente. J'ai essayé un ligne avec clearcontents, mais elle empêche le fonctionnement de la macro. (je suis parti avec celle de LSteph) Merci encore Michel
"Michir" a écrit dans le message de news: 43a1bf1b$0$19694$
Bonsoir,
Soit plusieurs feuilles (mettons 3) avec une liste en colonne d'opérations et une colonne pour les pointer (avec un "X" par exemple). Je souhaiterais faire une macro qui récapitule dans une feuille "Récap" une liste continue des seules opérations pointées. J'ai essayé par formules sans succès