Supression de lignes sous conditions multiple
Résolu/Fermé
Micky_Willys
Messages postés
5
Date d'inscription
samedi 29 mars 2008
Statut
Membre
Dernière intervention
2 avril 2008
-
29 mars 2008 à 16:01
Micky_Willys Messages postés 5 Date d'inscription samedi 29 mars 2008 Statut Membre Dernière intervention 2 avril 2008 - 2 avril 2008 à 19:46
Micky_Willys Messages postés 5 Date d'inscription samedi 29 mars 2008 Statut Membre Dernière intervention 2 avril 2008 - 2 avril 2008 à 19:46
A voir également:
- Supression de lignes sous conditions multiple
- Liste déroulante choix multiple excel - Guide
- Site de vente en ligne particulier - Guide
- Partage de photos en ligne - Guide
- Excel trier par ordre alphabétique en gardant les lignes - Guide
- Ecran multiple pc - Guide
2 réponses
dubcek
Messages postés
18755
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
14 novembre 2024
5 621
29 mars 2008 à 16:45
29 mars 2008 à 16:45
hello
mettre les arguments de test (CASH BALANCES, CASH, MARGIN,... ) dans un tableau et faire une boucle en comparant ActiveCell.Offset(0, 12) avec chaque élément du tableau ?
mettre les arguments de test (CASH BALANCES, CASH, MARGIN,... ) dans un tableau et faire une boucle en comparant ActiveCell.Offset(0, 12) avec chaque élément du tableau ?
dubcek
Messages postés
18755
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
14 novembre 2024
5 621
29 mars 2008 à 17:28
29 mars 2008 à 17:28
même en mettant la liste dans une seule variable, il faut tester chaque élément en manipulant la chaine de caractères, il me semble plus simple d'utiliser un tableau
Micky_Willys
Messages postés
5
Date d'inscription
samedi 29 mars 2008
Statut
Membre
Dernière intervention
2 avril 2008
2 avril 2008 à 13:09
2 avril 2008 à 13:09
Un grand merci, j'ai suivi votre conseil et il est vrai que c'est beaucoup plus lisible.
Micky_Willys
Messages postés
5
Date d'inscription
samedi 29 mars 2008
Statut
Membre
Dernière intervention
2 avril 2008
2 avril 2008 à 19:46
2 avril 2008 à 19:46
Bonjour,
Ma question va peut etre sonnée stupide ou bizarre, mais je me demande si une macro peut etre trop rapide pour l'execution de certaines taches.
En effet, lorsque j'execute la macro tache par tache (avec F8) j'obtiens le résultat excompté mais des que je l'execute en mode lecture, no results!
Le principe de ma macro est de comparer une valeur a un ensemble de valeur afin de supprimer les lignes inutiles de ma feuille Excel.
Voici mon code:
'create a table with all the securities you don't want to see appaer in the report
Range("Z10001").Select
ActiveCell.Formula = "CASH BALANCES"
Range("Z10002").Select
ActiveCell.Formula = "MARGIN"
Range("Z10003").Select
ActiveCell.Formula = "EXTERNAL FX HEDGE"
Range("Z10004").Select
ActiveCell.Formula = "FX CASH BALANCES"
Range("Z10005").Select
ActiveCell.Formula = "FUNDING FOREX"
Range("Z10006").Select
ActiveCell.Formula = "FUTURE"
Range("Z10007").Select
ActiveCell.Formula = "HEDGE FORWARD FX"
' select the first row of the file
Range("A1").Select
'going to go until the last cell populated
Do Until ActiveCell = ""
'initialize the counter
i = 10001
'going to compare the column M (Type) to the table created previously
Do Until i = 10008
If ActiveCell.Offset(0, 12).Value = Range("Z" & i).Value Then
ActiveCell.Offset(0, 0).Rows("1:1").EntireRow.Select
Selection.Delete Shift:=xlUp
Else
i = i + 1
End If
Loop
ActiveCell.Offset(1, 0).Select
Loop
'delete the table
Range("Z8001:Z10007").Select
Selection.ClearContents
Range("A1").Select
Merci d'avance,
M.
Ma question va peut etre sonnée stupide ou bizarre, mais je me demande si une macro peut etre trop rapide pour l'execution de certaines taches.
En effet, lorsque j'execute la macro tache par tache (avec F8) j'obtiens le résultat excompté mais des que je l'execute en mode lecture, no results!
Le principe de ma macro est de comparer une valeur a un ensemble de valeur afin de supprimer les lignes inutiles de ma feuille Excel.
Voici mon code:
'create a table with all the securities you don't want to see appaer in the report
Range("Z10001").Select
ActiveCell.Formula = "CASH BALANCES"
Range("Z10002").Select
ActiveCell.Formula = "MARGIN"
Range("Z10003").Select
ActiveCell.Formula = "EXTERNAL FX HEDGE"
Range("Z10004").Select
ActiveCell.Formula = "FX CASH BALANCES"
Range("Z10005").Select
ActiveCell.Formula = "FUNDING FOREX"
Range("Z10006").Select
ActiveCell.Formula = "FUTURE"
Range("Z10007").Select
ActiveCell.Formula = "HEDGE FORWARD FX"
' select the first row of the file
Range("A1").Select
'going to go until the last cell populated
Do Until ActiveCell = ""
'initialize the counter
i = 10001
'going to compare the column M (Type) to the table created previously
Do Until i = 10008
If ActiveCell.Offset(0, 12).Value = Range("Z" & i).Value Then
ActiveCell.Offset(0, 0).Rows("1:1").EntireRow.Select
Selection.Delete Shift:=xlUp
Else
i = i + 1
End If
Loop
ActiveCell.Offset(1, 0).Select
Loop
'delete the table
Range("Z8001:Z10007").Select
Selection.ClearContents
Range("A1").Select
Merci d'avance,
M.
29 mars 2008 à 16:52