Erreur 1004 méthode 'Range' dans boucle
Keyran
-
Keyran -
Keyran -
Bonjour,
J'avais un macro très simple qui me permettait de supprimer la ligne d'un tableau si celle-ci comportait moins de 4 valeurs. Cela fonctionnait, mais j'ai voulu améliorer un peu tout ça en lançant le traitement automatiquement sur toutes les feuilles de mon classeur.
Depuis, mon code ne fonctionne plus et l'erreur s'affiche : "Erreur d'exécution '1004' : la méthode 'Range' de l'objet 'Worksheets' a échoué"
Je vous mets ici mon code défaillant. En gras ce que j'ai modifié depuis le programme qui fonctionnait (boucle + changé Sheets('Feuil1') en 'FS') :
Merci de votre aide, je ne trouve pas du tout le soucis.
Rose
J'avais un macro très simple qui me permettait de supprimer la ligne d'un tableau si celle-ci comportait moins de 4 valeurs. Cela fonctionnait, mais j'ai voulu améliorer un peu tout ça en lançant le traitement automatiquement sur toutes les feuilles de mon classeur.
Depuis, mon code ne fonctionne plus et l'erreur s'affiche : "Erreur d'exécution '1004' : la méthode 'Range' de l'objet 'Worksheets' a échoué"
Je vous mets ici mon code défaillant. En gras ce que j'ai modifié depuis le programme qui fonctionnait (boucle + changé Sheets('Feuil1') en 'FS') :
<bold>Dim FS As Worksheet
For Each FS In Worksheets</bold>
Dim i As Integer
For i = 1700 To 3 Step -1
If Application.WorksheetFunction.CountBlank(<bold>FS</bold>.Range(Cells(i, 30), Cells(i, 39))) > 4 Then
Range(Cells(i, 29), Cells(i, 39)).Delete Shift:=xlUp
End If
Next i
<bold>Next FS</bold>
Merci de votre aide, je ne trouve pas du tout le soucis.
Rose
| EDIT : Ajout des balises de code (la coloration syntaxique).
Explications disponibles ici : ICI Merci d'y penser dans tes prochains messages. |
A voir également:
- Erreur 1004 méthode 'Range' dans boucle
- Dans la table des matières du document à télécharger, le chapitre 6 et ses 2 sections n'apparaissent pas. trouvez l'erreur dans la structure du document et corrigez-la. mettez à jour la table des matières. quel est le mot formé par les lettres en majuscules de la table des matières après sa mise à jour ? - Forum Word
- Out of range écran - Forum Windows
- Mon pc s'allume et s'éteint en boucle ✓ - Forum Matériel & Système
- Erreur 3000 france tv - Forum Lecteurs et supports vidéo
- Erreur t32 ✓ - Forum Livebox
2 réponses
Bonjour Keyran, bonjour le forum,
Peut-être comme ça :
Peut-être comme ça :
Sub Macro1()
Dim FS As Worksheet
Dim i As Integer
For Each FS In Worksheets
For i = 1700 To 3 Step -1
If Application.WorksheetFunction.CountBlank(FS.Range(FS.Cells(i, 30), FS.Cells(i, 39))) > 4 Then
FS.Range(FS.Cells(i, 29), FS.Cells(i, 39)).Delete Shift:=xlUp
End If
Next i
Next FS
End Sub
Résolu : Il me suffisait simplement de taper 'FS.Activate' après la ligne For Each FS In WorkSheets.
Ce n'est peut-être pas le plus élégant mais ça fonctionne, merci encore de votre aide !
PS : ayant posté ce message en invité, je ne suis pas reconnue comme son auteur et n'arrive pas à le mettre en résolu, une idée ?
Ce n'est peut-être pas le plus élégant mais ça fonctionne, merci encore de votre aide !
PS : ayant posté ce message en invité, je ne suis pas reconnue comme son auteur et n'arrive pas à le mettre en résolu, une idée ?