2011-11-28 4 views
2

aide: Excel 2007.feuille de calcul données à l'aide VBA

Problème: Une feuille de calcul contient plusieurs colonnes et lignes de données. Une colonne, appelée "Probabilité", contient des pourcentages compris entre 0% et 100%. Comment écrire une macro qui supprime conditionnellement une ligne en lui donnant une valeur de "Probabilité" est moins de 50%? Mise à jour: Cela ne peut pas simplement être fait en enregistrant une macro, car les valeurs de pourcentage varient avec chaque nouveau téléchargement de données.

Merci!

+0

enregistrement Makro est l'une des façons les plus simples à apprendre VBA. –

Répondre

1

Si par exemple vos données de probabilité était dans la colonne A de la feuille active, vous pouvez utiliser Autofilter

  1. manuellement, Autofilter la colonne, ajoutez un critère de < 50%, puis supprimez les résultats
  2. Exécutez la même approche dans le code ci-dessous

    Sub QuickCull() 
        Application.ScreenUpdating = False 
        With ActiveSheet 
         .AutoFilterMode = False 
         .Columns("A").AutoFilter Field:=1, Criteria1:="<50%" 
         .AutoFilter.Range.Offset(1, 0).EntireRow.Delete 
         .AutoFilterMode = False 
        End With 
        Application.ScreenUpdating = True 
    End Sub 
    
+0

Comment "supprimer les résultats" est le même que l'exigence de OP pour "filtrer" la feuille de calcul. C'est une mauvaise réponse. –

+0

@JohnJoseph OP a demandé de "supprimer" les lignes dans leur question, puis a accepté cela comme réponse. Ceci est raisonnablement clair ci-dessus. – brettdj

+1

désolé - le titre de l'OP était trompeur. Vous avez raison. Ma faute. –

Questions connexes