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 :

Problème de boucle avec un find


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
    Juin 2007
    Messages
    25
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 25
    Par défaut Problème de boucle avec un find
    Bonjour tout le monde.
    J'ai un gros probleme, je fais une recherche sur un mot (Sem) pour les encadrer mais le pronleme c'est qu'il ne trouve que la premiere et pas les autres. J'ai essayer beaucoup de chose et rien ne marche.
    Voici le code en question:
    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
     
        For k = 3 To 40
        Cells.Find(What:="Sem ").Select
     
        Range(Cells(ActiveCell.Row, 1), Cells(ActiveCell.Row, 9)).Select
     
        With Selection.Borders(xlEdgeTop)
            .LineStyle = xlContinuous
            .Weight = xlThick
            Selection.Font.Bold = True
        End With
        With Selection.Borders(xlEdgeBottom)
           .LineStyle = xlContinuous
           .Weight = xlThick
        End With
     
        Next k
    J'attend vos sugestion
    Merci d'avance

  2. #2
    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
    A quoi il te sert ton k ???

  3. #3
    Membre averti
    Inscrit en
    Juin 2007
    Messages
    25
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 25
    Par défaut
    le k sert a parcourir le tableau

  4. #4
    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
    pourquoi il n'apparait pas dans ton code ??

  5. #5
    Membre averti
    Inscrit en
    Juin 2007
    Messages
    25
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 25
    Par défaut
    Oui effectivement il n'est pas dans le code, mais je ne sais pas comment faire en fait. En fait il cherche la premiere cellule qui contient "sem" et la boucle s'arrete.

  6. #6
    Membre chevronné Avatar de mordrhim
    Inscrit en
    Avril 2007
    Messages
    270
    Détails du profil
    Informations personnelles :
    Âge : 43

    Informations forums :
    Inscription : Avril 2007
    Messages : 270
    Par défaut
    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
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
     
    Sub Macro1()
     
    '
    ' Macro1 Macro
    ' Macro enregistrée le 21/06/2007 par MCX
    '
     
    '
        Dim PremCell As Range
        Dim CellTrouve As Range
     
        'recherche la premiere fois
        Set PremCell = Cells.Find(What:="Sem", After:=ActiveCell, LookIn:=xlFormulas, LookAt:= _
        xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:=False)
     
        With Range(Cells(CellTrouve.Row, 1), Cells(CellTrouve.Row, 9))
            With .Borders(xlEdgeTop)
                .LineStyle = xlContinuous
                .Weight = xlThick
                Selection.Font.Bold = True
            End With
            With .Borders(xlEdgeBottom)
               .LineStyle = xlContinuous
               .Weight = xlThick
            End With
        End With
     
        'Boucle jusqu'à ce qu'on soit sur la premiere cellule trouvée
        Set CellTrouve = Cells.FindNext(After:=PremCell)
        While CellTrouve.Row <> PremCell.Row Or CellTrouve.Column <> PremCell.Column
            With Range(Cells(CellTrouve.Row, 1), Cells(CellTrouve.Row, 9))
                With .Borders(xlEdgeTop)
                    .LineStyle = xlContinuous
                    .Weight = xlThick
                    Selection.Font.Bold = True
                End With
                With .Borders(xlEdgeBottom)
                   .LineStyle = xlContinuous
                   .Weight = xlThick
                End With
            End With
        Set CellTrouve = Cells.FindNext(After:=CellTrouve)
        Wend
    End Sub
    EDIT : Mise à jour du macro

  7. #7
    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
    est-ce que ta cellule contient uniquement "sem" ou il y a quelque chose d'autre du style "sem 42" ?

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [XL-2007] Problème de Boucles avec feuilles multiples
    Par dmoluc dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 10/08/2012, 19h23
  2. Problème de boucle avec Timer
    Par SandrillonC dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 28/04/2010, 12h40
  3. [XSLT] Problème de boucle avec for-each
    Par knack8 dans le forum XSL/XSLT/XPATH
    Réponses: 1
    Dernier message: 29/04/2009, 01h42
  4. Problème dans boucle avec matrice et vecteur
    Par lilyla dans le forum MATLAB
    Réponses: 9
    Dernier message: 26/11/2007, 19h45
  5. Problème de boucle avec for
    Par ions dans le forum ActionScript 1 & ActionScript 2
    Réponses: 2
    Dernier message: 20/11/2007, 08h58

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