Bonjour,
Je souhaite creer une macro: si il y a une celle qui contient #N/A alors supprimer toute la ligne.
Je vous remercie pour votre aide.
Cordialement,
Bonjour,
Je souhaite creer une macro: si il y a une celle qui contient #N/A alors supprimer toute la ligne.
Je vous remercie pour votre aide.
Cordialement,
Utilise la fonction Isna.
debut = 1ère cellule de la plage
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 For i = fin To debut Step -1 If Application.WorksheetFunction.IsNA(cells(i,k) Then Rows(i).Delete Next
fin = dernière cellule de la plage
k= colonne contenant tes valeurs
Une autre méthode.
Si tu as des formules en colonne E avec certaines qui renvoient une erreur
Si ce ne sont pas des formules, remplace xlFormulas par xlConstants
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 On Error Resume Next Worksheets("Feuil1").Range("E:E").SpecialCells(xlFormulas, xlErrors).EntireRow.Delete On Error GoTo 0
Cordialement.
J'utilise toujours le point comme séparateur décimal dans mes tests.
A la louche, quelles sont les dimensions de ton tableau ?
Parce que la semaine dernière, ma macro a ramé pendant un moment sur un tableau de .... 45 000 lignes...
Si j'ai pu vous aider, dites le avec 1 pouce
Merci,
J'ai 1400 lignes, une vingtaine de colonnes, J'ai des valeurs et formules qui renvoies #N/A et #REF!
Je souhaite specifier un certain nombre de valeur pour k (= colonne contenant les valeurs) et generaliser le code pour #N/A et #REF!
Merci pour l'aide
Ok, je vois.
Pas très poétique mais efficace:
Qu'en penses-tu ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 Sub Remplacer_Cellules_Cibles() ' ' L'Albatros ' Dim compteur As Integer 'Balayage du tableau For compteur = 2 To Range("K2").End(xlDown).Row 'Condition de ciblage 1 If Range("K" & compteur) = "#N/A" Then 'Exemple d'action sur la cellule cible Range("K" & cpt) = "coucou" End If 'Condition de ciblage 2 If Range("K" & compteur) = "#REF" Then 'Exemple d'action sur la cellule cible Range("K" & compteur) = "coucou2" End If Next compteur ' End Sub
Si j'ai pu vous aider, dites le avec 1 pouce
Merci c'est parfait!
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager