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 :

Les codes vba qui s'entrechoquent


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    139
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 139
    Par défaut Les codes vba qui s'entrechoquent
    Bonjour
    Dans ma fenetre visual basic la feuille 1, j’avais un code :

    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
    Private Sub Worksheet_Change(ByVal Target As Range)
     
    Dim plage As Range, cel As Range
    Dim LastLig As Long
     
    If Target.Column <> 1 And Target.Count > 1 Then Exit Sub
     
    LastLig = Sheets("Feuil1").Range("A65536").End(xlUp).Row
    Set plage = Sheets("Feuil1").Range("A4:A" & LastLig)
     
    Set cel = plage.Find(Target.Value, LookIn:=xlValues, lookat:=xlWhole)
     
    If Not cel Is Nothing Then
    Target.Offset(0, 1) = cel.Offset(0, 1) & " " & cel.Offset(0, 2)
    End If
     
    End Sub
    J’ai rajouté un second code à la suite, pour teinter des cellules selon une fourchette d’heure ci-dessous


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    Private Sub Worksheet_Change(ByVal Target As Range)
    Dim plage As Range, c As Range
    Set plage = Intersect(Target, Range("A1:F10"))
    If Not plage Is Nothing Then
       For Each c In plage
          If c <> "" And Hour(Now) >= 15 And Hour(Now) < 21 Then
             c.Interior.ColorIndex = 34
          Else
             c.Interior.ColorIndex = xlNone
          End If
       Next c
    End If
    End Sub
    Ce second code fonctionne bien lorsqu’il est seul sur la feuille 1, je l'ai testé avec succès en supprimant le premier code , mais lorsque les deux codes sont à la suite ça ne fonctionne pas.
    Que faut-il faire sachant que je ne peux supprimer le premier et que je voudrais intégrer le second.
    Merci d’avance Bob

  2. #2
    Expert éminent Avatar de mercatog
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    9 435
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations forums :
    Inscription : Juillet 2008
    Messages : 9 435
    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
    Private Sub Worksheet_Change(ByVal Target As Range)
    Dim plage As Range, cel As Range
    Dim LastLig As Long
     
    If Target.Column = 1 And Target.Count = 1 Then
        LastLig = Sheets("Feuil1").Range("A65536").End(xlUp).Row
        Set plage = Sheets("Feuil1").Range("A4:A" & LastLig)
        Set cel = plage.Find(Target.Value, LookIn:=xlValues, lookat:=xlWhole)
        If Not cel Is Nothing Then Target.Offset(0, 1) = cel.Offset(0, 1) & " " & cel.Offset(0, 2)
    ElseIf Not Intersect(Target, Range("A1:F10")) Is Nothing Then
        For Each cel In Intersect(Target, Range("A1:F10"))
            If cel <> "" And Hour(Now) >= 15 And Hour(Now) < 21 Then
                cel.Interior.ColorIndex = 34
            Else
                cel.Interior.ColorIndex = xlNone
            End If
        Next cel
    End If
    End Sub

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    139
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 139
    Par défaut Les codes vba qui s'entrechoquent
    merci mercatog tu es un vrai champion et en plus hyper rapide
    A bientôt
    Bob

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

Discussions similaires

  1. Code VBA qui modifie du Code VBA ?
    Par tictactoc dans le forum Excel
    Réponses: 2
    Dernier message: 30/07/2009, 09h43
  2. [E-00] Code VBA qui insère du code VBA
    Par _Sool_ dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 25/11/2008, 09h16
  3. code vba qui fonctionnes plus du jour au lendemain
    Par alexkickstand dans le forum VBA Access
    Réponses: 1
    Dernier message: 29/07/2008, 16h41
  4. Code VBA qui supprime une requête
    Par Fredo67 dans le forum VBA Access
    Réponses: 2
    Dernier message: 28/05/2008, 17h47
  5. [excel-vba]imprimer les code vba
    Par CIBOOX dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 18/07/2007, 16h39

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