bonjour,
je ne maitrise pas bien les boucles.
je voudrais appliquer une opération pour un sélection de feuille, j'ai fais
ça mais ça ne fonctionne pas. (je veux supprimer des lignes sur chacun de mes
onglets "10, "20", .."90")
Merci de votre aide :
------------
Sub EffaceSousCycle()
For Each F In Array("10,20,30,40,50,60,70,80,90")
'On Error Resume Next
Sheets(F).Activate
For I = Cells(Rows.Count, "a").End(1).Row To 2 Step -1
If Cells(I, 1) > 100000 And Cells(I, 1) < 99999999 Then
Rows(I).Delete
Next
Next
End Sub
----------
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
Daniel.C
Bonjour. For Each F In Array("10", "20", "30", "40", "50", "60", "70", "80", "90") (Les noms de feuilles ne sont de type string). Daniel
bonjour, je ne maitrise pas bien les boucles. je voudrais appliquer une opération pour un sélection de feuille, j'ai fais ça mais ça ne fonctionne pas. (je veux supprimer des lignes sur chacun de mes onglets "10, "20", .."90") Merci de votre aide : ------------ Sub EffaceSousCycle() For Each F In Array("10,20,30,40,50,60,70,80,90") 'On Error Resume Next Sheets(F).Activate For I = Cells(Rows.Count, "a").End(1).Row To 2 Step -1 If Cells(I, 1) > 100000 And Cells(I, 1) < 99999999 Then Rows(I).Delete Next Next End Sub ----------
Bonjour.
For Each F In Array("10", "20", "30", "40", "50", "60", "70", "80",
"90")
(Les noms de feuilles ne sont de type string).
Daniel
bonjour,
je ne maitrise pas bien les boucles.
je voudrais appliquer une opération pour un sélection de feuille, j'ai fais
ça mais ça ne fonctionne pas. (je veux supprimer des lignes sur chacun de mes
onglets "10, "20", .."90")
Merci de votre aide :
------------
Sub EffaceSousCycle()
For Each F In Array("10,20,30,40,50,60,70,80,90")
'On Error Resume Next
Sheets(F).Activate
For I = Cells(Rows.Count, "a").End(1).Row To 2 Step -1
If Cells(I, 1) > 100000 And Cells(I, 1) < 99999999 Then
Rows(I).Delete
Next
Next
End Sub
----------
Bonjour. For Each F In Array("10", "20", "30", "40", "50", "60", "70", "80", "90") (Les noms de feuilles ne sont de type string). Daniel
bonjour, je ne maitrise pas bien les boucles. je voudrais appliquer une opération pour un sélection de feuille, j'ai fais ça mais ça ne fonctionne pas. (je veux supprimer des lignes sur chacun de mes onglets "10, "20", .."90") Merci de votre aide : ------------ Sub EffaceSousCycle() For Each F In Array("10,20,30,40,50,60,70,80,90") 'On Error Resume Next Sheets(F).Activate For I = Cells(Rows.Count, "a").End(1).Row To 2 Step -1 If Cells(I, 1) > 100000 And Cells(I, 1) < 99999999 Then Rows(I).Delete Next Next End Sub ----------
Corona
Bonjour, Voici un exemple de lecture de feuilles d'un classeur dans lequel est écrit le code VBA Sub EffaceSousCycle() Dim F As Worksheet For Each F In ActiveWorkbook.Worksheets Select Case F.Name Case "10", "20", "30", "40", "50", "60", "70", "80", "90" ' Ici le code de destruction de lignes ' F.Cells( etc ... End Select Next End Sub Philippe Tulliez
sunburn a écrit :
bonjour, je ne maitrise pas bien les boucles. je voudrais appliquer une opération pour un sélection de feuille, j'ai fais ça mais ça ne fonctionne pas. (je veux supprimer des lignes sur chacun de mes onglets "10, "20", .."90") Merci de votre aide : ------------ Sub EffaceSousCycle() For Each F In Array("10,20,30,40,50,60,70,80,90") 'On Error Resume Next Sheets(F).Activate For I = Cells(Rows.Count, "a").End(1).Row To 2 Step -1 If Cells(I, 1) > 100000 And Cells(I, 1) < 99999999 Then Rows(I).Delete Next Next End Sub ----------
Bonjour,
Voici un exemple de lecture de feuilles d'un classeur dans lequel est
écrit le code VBA
Sub EffaceSousCycle()
Dim F As Worksheet
For Each F In ActiveWorkbook.Worksheets
Select Case F.Name
Case "10", "20", "30", "40", "50", "60", "70", "80", "90"
' Ici le code de destruction de lignes
' F.Cells( etc ...
End Select
Next
End Sub
Philippe Tulliez
sunburn a écrit :
bonjour,
je ne maitrise pas bien les boucles.
je voudrais appliquer une opération pour un sélection de feuille, j'ai fais
ça mais ça ne fonctionne pas. (je veux supprimer des lignes sur chacun de mes
onglets "10, "20", .."90")
Merci de votre aide :
------------
Sub EffaceSousCycle()
For Each F In Array("10,20,30,40,50,60,70,80,90")
'On Error Resume Next
Sheets(F).Activate
For I = Cells(Rows.Count, "a").End(1).Row To 2 Step -1
If Cells(I, 1) > 100000 And Cells(I, 1) < 99999999 Then
Rows(I).Delete
Next
Next
End Sub
----------
Bonjour, Voici un exemple de lecture de feuilles d'un classeur dans lequel est écrit le code VBA Sub EffaceSousCycle() Dim F As Worksheet For Each F In ActiveWorkbook.Worksheets Select Case F.Name Case "10", "20", "30", "40", "50", "60", "70", "80", "90" ' Ici le code de destruction de lignes ' F.Cells( etc ... End Select Next End Sub Philippe Tulliez
sunburn a écrit :
bonjour, je ne maitrise pas bien les boucles. je voudrais appliquer une opération pour un sélection de feuille, j'ai fais ça mais ça ne fonctionne pas. (je veux supprimer des lignes sur chacun de mes onglets "10, "20", .."90") Merci de votre aide : ------------ Sub EffaceSousCycle() For Each F In Array("10,20,30,40,50,60,70,80,90") 'On Error Resume Next Sheets(F).Activate For I = Cells(Rows.Count, "a").End(1).Row To 2 Step -1 If Cells(I, 1) > 100000 And Cells(I, 1) < 99999999 Then Rows(I).Delete Next Next End Sub ----------
michdenis
Bonjour Sunburn,
Essaie quelque chose comme ceci :
La procédure prend pour acquis que la première ligne sert aux étiquettes des colonnes.
'----------------------------------------- Sub EffaceSousCycle()
Dim Rg As Range For Each F In Array(10, 20, 30, 40, 50, 60, 70, 80, 90) With Sheets(CStr(F)) With .Range("A1:A" & .Range("A65536").End(xlUp).Row) .AutoFilter field:=1, Criteria1:=">" & 100000, _ Criteria2:="<" & 99999999 Set Rg = .Range("_FilterDataBase") Rg.Offset(1).Resize(Rg.Rows.Count - 1).SpecialCells _ (xlCellTypeVisible).EntireRow.Delete .AutoFilter End With End With Next End Sub '-----------------------------------------
"sunburn" a écrit dans le message de groupe de discussion : bonjour, je ne maitrise pas bien les boucles. je voudrais appliquer une opération pour un sélection de feuille, j'ai fais ça mais ça ne fonctionne pas. (je veux supprimer des lignes sur chacun de mes onglets "10, "20", .."90") Merci de votre aide : ------------ Sub EffaceSousCycle() For Each F In Array("10,20,30,40,50,60,70,80,90") 'On Error Resume Next Sheets(F).Activate For I = Cells(Rows.Count, "a").End(1).Row To 2 Step -1 If Cells(I, 1) > 100000 And Cells(I, 1) < 99999999 Then Rows(I).Delete Next Next End Sub ----------
Bonjour Sunburn,
Essaie quelque chose comme ceci :
La procédure prend pour acquis que la première ligne
sert aux étiquettes des colonnes.
'-----------------------------------------
Sub EffaceSousCycle()
Dim Rg As Range
For Each F In Array(10, 20, 30, 40, 50, 60, 70, 80, 90)
With Sheets(CStr(F))
With .Range("A1:A" & .Range("A65536").End(xlUp).Row)
.AutoFilter field:=1, Criteria1:=">" & 100000, _
Criteria2:="<" & 99999999
Set Rg = .Range("_FilterDataBase")
Rg.Offset(1).Resize(Rg.Rows.Count - 1).SpecialCells _
(xlCellTypeVisible).EntireRow.Delete
.AutoFilter
End With
End With
Next
End Sub
'-----------------------------------------
"sunburn" <sunburn@discussions.microsoft.com> a écrit dans le message de groupe de
discussion : D4388774-5176-4D88-B967-D912A2AB417C@microsoft.com...
bonjour,
je ne maitrise pas bien les boucles.
je voudrais appliquer une opération pour un sélection de feuille, j'ai fais
ça mais ça ne fonctionne pas. (je veux supprimer des lignes sur chacun de mes
onglets "10, "20", .."90")
Merci de votre aide :
------------
Sub EffaceSousCycle()
For Each F In Array("10,20,30,40,50,60,70,80,90")
'On Error Resume Next
Sheets(F).Activate
For I = Cells(Rows.Count, "a").End(1).Row To 2 Step -1
If Cells(I, 1) > 100000 And Cells(I, 1) < 99999999 Then
Rows(I).Delete
Next
Next
End Sub
----------
La procédure prend pour acquis que la première ligne sert aux étiquettes des colonnes.
'----------------------------------------- Sub EffaceSousCycle()
Dim Rg As Range For Each F In Array(10, 20, 30, 40, 50, 60, 70, 80, 90) With Sheets(CStr(F)) With .Range("A1:A" & .Range("A65536").End(xlUp).Row) .AutoFilter field:=1, Criteria1:=">" & 100000, _ Criteria2:="<" & 99999999 Set Rg = .Range("_FilterDataBase") Rg.Offset(1).Resize(Rg.Rows.Count - 1).SpecialCells _ (xlCellTypeVisible).EntireRow.Delete .AutoFilter End With End With Next End Sub '-----------------------------------------
"sunburn" a écrit dans le message de groupe de discussion : bonjour, je ne maitrise pas bien les boucles. je voudrais appliquer une opération pour un sélection de feuille, j'ai fais ça mais ça ne fonctionne pas. (je veux supprimer des lignes sur chacun de mes onglets "10, "20", .."90") Merci de votre aide : ------------ Sub EffaceSousCycle() For Each F In Array("10,20,30,40,50,60,70,80,90") 'On Error Resume Next Sheets(F).Activate For I = Cells(Rows.Count, "a").End(1).Row To 2 Step -1 If Cells(I, 1) > 100000 And Cells(I, 1) < 99999999 Then Rows(I).Delete Next Next End Sub ----------
sunburn
Bonsoir, je vous remercie tous pour votre aide. A l'usage, ta technique est la plus rapide. merci.
YANN
"michdenis" wrote:
Bonjour Sunburn,
Essaie quelque chose comme ceci :
La procédure prend pour acquis que la première ligne sert aux étiquettes des colonnes.
'----------------------------------------- Sub EffaceSousCycle()
Dim Rg As Range For Each F In Array(10, 20, 30, 40, 50, 60, 70, 80, 90) With Sheets(CStr(F)) With .Range("A1:A" & .Range("A65536").End(xlUp).Row) .AutoFilter field:=1, Criteria1:=">" & 100000, _ Criteria2:="<" & 99999999 Set Rg = .Range("_FilterDataBase") Rg.Offset(1).Resize(Rg.Rows.Count - 1).SpecialCells _ (xlCellTypeVisible).EntireRow.Delete .AutoFilter End With End With Next End Sub '-----------------------------------------
"sunburn" a écrit dans le message de groupe de discussion : bonjour, je ne maitrise pas bien les boucles. je voudrais appliquer une opération pour un sélection de feuille, j'ai fais ça mais ça ne fonctionne pas. (je veux supprimer des lignes sur chacun de mes onglets "10, "20", .."90") Merci de votre aide : ------------ Sub EffaceSousCycle() For Each F In Array("10,20,30,40,50,60,70,80,90") 'On Error Resume Next Sheets(F).Activate For I = Cells(Rows.Count, "a").End(1).Row To 2 Step -1 If Cells(I, 1) > 100000 And Cells(I, 1) < 99999999 Then Rows(I).Delete Next Next End Sub ----------
Bonsoir,
je vous remercie tous pour votre aide.
A l'usage, ta technique est la plus rapide.
merci.
YANN
"michdenis" wrote:
Bonjour Sunburn,
Essaie quelque chose comme ceci :
La procédure prend pour acquis que la première ligne
sert aux étiquettes des colonnes.
'-----------------------------------------
Sub EffaceSousCycle()
Dim Rg As Range
For Each F In Array(10, 20, 30, 40, 50, 60, 70, 80, 90)
With Sheets(CStr(F))
With .Range("A1:A" & .Range("A65536").End(xlUp).Row)
.AutoFilter field:=1, Criteria1:=">" & 100000, _
Criteria2:="<" & 99999999
Set Rg = .Range("_FilterDataBase")
Rg.Offset(1).Resize(Rg.Rows.Count - 1).SpecialCells _
(xlCellTypeVisible).EntireRow.Delete
.AutoFilter
End With
End With
Next
End Sub
'-----------------------------------------
"sunburn" <sunburn@discussions.microsoft.com> a écrit dans le message de groupe de
discussion : D4388774-5176-4D88-B967-D912A2AB417C@microsoft.com...
bonjour,
je ne maitrise pas bien les boucles.
je voudrais appliquer une opération pour un sélection de feuille, j'ai fais
ça mais ça ne fonctionne pas. (je veux supprimer des lignes sur chacun de mes
onglets "10, "20", .."90")
Merci de votre aide :
------------
Sub EffaceSousCycle()
For Each F In Array("10,20,30,40,50,60,70,80,90")
'On Error Resume Next
Sheets(F).Activate
For I = Cells(Rows.Count, "a").End(1).Row To 2 Step -1
If Cells(I, 1) > 100000 And Cells(I, 1) < 99999999 Then
Rows(I).Delete
Next
Next
End Sub
----------
Bonsoir, je vous remercie tous pour votre aide. A l'usage, ta technique est la plus rapide. merci.
YANN
"michdenis" wrote:
Bonjour Sunburn,
Essaie quelque chose comme ceci :
La procédure prend pour acquis que la première ligne sert aux étiquettes des colonnes.
'----------------------------------------- Sub EffaceSousCycle()
Dim Rg As Range For Each F In Array(10, 20, 30, 40, 50, 60, 70, 80, 90) With Sheets(CStr(F)) With .Range("A1:A" & .Range("A65536").End(xlUp).Row) .AutoFilter field:=1, Criteria1:=">" & 100000, _ Criteria2:="<" & 99999999 Set Rg = .Range("_FilterDataBase") Rg.Offset(1).Resize(Rg.Rows.Count - 1).SpecialCells _ (xlCellTypeVisible).EntireRow.Delete .AutoFilter End With End With Next End Sub '-----------------------------------------
"sunburn" a écrit dans le message de groupe de discussion : bonjour, je ne maitrise pas bien les boucles. je voudrais appliquer une opération pour un sélection de feuille, j'ai fais ça mais ça ne fonctionne pas. (je veux supprimer des lignes sur chacun de mes onglets "10, "20", .."90") Merci de votre aide : ------------ Sub EffaceSousCycle() For Each F In Array("10,20,30,40,50,60,70,80,90") 'On Error Resume Next Sheets(F).Activate For I = Cells(Rows.Count, "a").End(1).Row To 2 Step -1 If Cells(I, 1) > 100000 And Cells(I, 1) < 99999999 Then Rows(I).Delete Next Next End Sub ----------