IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

selectionner plage de cellule


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Mai 2007
    Messages
    42
    Détails du profil
    Informations forums :
    Inscription : Mai 2007
    Messages : 42
    Par défaut selectionner plage de cellule
    Bonjour


    Cette fonction a pour but de me créer une alerte dans le cas où j’aurais sept points consécutifs croissants. J’aimerai savoir comment arriver à ce qu’il sélectionne automatiquement la dernière ligne d’un tableau d’extraction et sept points au-dessus.
    Je m’explique, mon tableau d’extraction se met à jour quotidiennement, et pour l’instant je suis obligé de sélectionner manuellement la plage à analyser (la plage étant les sept derniers points extraits).

    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
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
     
    Function Progression(ParamArray x() As Variant) As Boolean
    Dim maxi As Variant
    Dim boucle As Variant
    Dim compose As Variant
    maxi = -10 ^ 308
    For Each boucle In x
    If VarType(boucle) > 8192 Then
        For Each compose In boucle
            If maxi >= compose Then
            GoTo fin
            Else
                    maxi = compose
                    End If
        Next compose
    Else
    If maxi >= boucle Then
        GoTo fin
        Else
        maxi = boucle
    End If
    End If
        Next boucle
    Beep
    Beep
    Beep
    Progression = True
     
    Exit Function
    fin:
    Progression = False
    End Function


    Merci

  2. #2
    Membre expérimenté Avatar de ilcocodrillo
    Profil pro
    Inscrit en
    Février 2007
    Messages
    260
    Détails du profil
    Informations personnelles :
    Âge : 19
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 260
    Par défaut
    J'ai pas tout compris. Tu voudrais que le programme (automatiquement lorsqu'il se passe qqch ou sur ordre?) te donne une alerte lorsque dans une plage de données (connue ?) il trouve sept valeurs consécutives croissantes, c'est bien ça ?

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    191
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 191
    Par défaut
    Bonjour,

    tu pourrais essayer un test sur la ligne pour savoir si elle est vide ou non puis de sélectionner les 7 lignes au dessus. Un truc tout simple du style:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Public Sub selection()
    Dim ligne, i As Integer
    For ligne = 1 To 100
        If Cells(ligne, 1) = "" Then
            Range("A" & ligne - 1, "IV" & ligne - 7).Select
            'tu met ce que tu veux faire ici
            Exit For
        End If
    Next ligne
    End Sub
    Je sais c'est super simple mais ça marche ...

  4. #4
    Membre averti
    Inscrit en
    Mai 2007
    Messages
    42
    Détails du profil
    Informations forums :
    Inscription : Mai 2007
    Messages : 42
    Par défaut
    En fait tu as très bien compris, sauf que je fais le test sur chaque colonne.
    Ton idée est très bonne par contre je ne comprends pas très bien cette ligne de code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Range("A" & ligne - 1, "IV" & ligne - 7).Select
    Lorsque j'essaye de l'executer, j'ai un message d'erreur 1004
    "la méthode 'Range' de l'objet '_Global' a échoué"

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    191
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 191
    Par défaut
    C'est marrant moi j'ai eu le même probleme avec la methode rows.select ... En fait j'ai du prendre cette parade à cause de mon excel. Mais peut être que pour toi ça marchera:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Rows(ligne-1:ligne-7).Select
    En gros cette instruction me sert juste à selectionner les 7 dernières lignes

    Cordialement,

    Lyonel

  6. #6
    Membre averti
    Inscrit en
    Mai 2007
    Messages
    42
    Détails du profil
    Informations forums :
    Inscription : Mai 2007
    Messages : 42
    Par défaut
    La dernière ligne de code que tu m'as envoyé n'est pas valide et aussi je ne vois pas comment je vais pouvoir utiliser ton code et ma fonction en meme temps.
    As tu essayé mon code? car on te demande de selectionner une plage de cellule et je ne sais pas trop pour remplacer cette requete par ton bout de code.

    Merci

    En fait je ne sais pas comment remplacer la fonction ParamArray x() par un code qui me chercherait la derniere cellule vide et prendrait les 7 cellules au dessus de manière à éviter de selectionner manuellement la plage de cellule

  7. #7
    Membre averti
    Inscrit en
    Mai 2007
    Messages
    42
    Détails du profil
    Informations forums :
    Inscription : Mai 2007
    Messages : 42
    Par défaut
    Quelqu'un saurait-il comment remplacer la fonction ParamArray x() par un code qui me chercherait la derniere cellule vide et prendrait les 7 cellules au dessus de manière à éviter de selectionner manuellement la plage de cellule?

    Merci

Discussions similaires

  1. Selectionner une plage de cellule
    Par kennyflorian dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 21/07/2008, 20h55
  2. Modification d'une fonction pour selectionner une plage de cellule
    Par jackbauer972 dans le forum Macros et VBA Excel
    Réponses: 9
    Dernier message: 01/08/2007, 15h07
  3. comment selectionner une plages de cellule?
    Par potters dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 28/05/2007, 12h28
  4. [VBA-E]selectionner une plage de cellules
    Par k-eisti dans le forum Macros et VBA Excel
    Réponses: 14
    Dernier message: 07/05/2007, 10h50
  5. Réponses: 2
    Dernier message: 17/12/2006, 18h17

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo