Probleme d'automatisation en VBA sous Excel

Probleme d'automatisation en VBA sous Excel - VB/VBA/VBS - Programmation

Marsh Posté le 10-07-2008 à 13:47:19    

Bonjour à Tous
 
Je vous explique mon problème
 
Voila j'ai un tableaux de consommateurs électrique. Ma première colonne est réservé à l'indice de révision (Rev A,B,C etc...)
 
Or je voudrais qu'à chaque fois qu'une valeur sur une ligne change, l'indice de révision passe à B.
 
Voici le code que j'ai fais et qui marche bien, le seul problème est que je suis obligé de le répeter par le nombre de ligne en changemant à chaque fois les valeurs.  
 
Pouvez vous m'aider SVP:
 
 
 
 
Dim MemoCell As String
 
Private Sub Worksheet_Change(ByVal Target As Range)
 
    Dim iRange As Range
     
    If Not (Intersect(Target, Range(Cells(1, 2), Cells(1, 7))) Is Nothing) Then
        Cells(1, 1) = "B"
    End If
     
     
    If Not (Intersect(Target, Range(Cells(2, 2), Cells(2, 7))) Is Nothing) Then
        Cells(2, 1) = "B"
         
    End If
     
     
         
    If Not (Intersect(Target, Range(Cells(3, 2), Cells(3, 7))) Is Nothing) Then
        Cells(3, 1) = "B"
         
    End If
     
End Sub

 
 
Merci par avance pour votre aide.


Message édité par djeev le 11-07-2008 à 11:22:52
Reply

Marsh Posté le 10-07-2008 à 13:47:19   

Reply

Marsh Posté le 10-07-2008 à 16:26:15    

Personne pour m'aider SVP ??

Reply

Marsh Posté le 11-07-2008 à 09:30:38    

Bon finalement j'ai trouvez moi même
 
Voila je voulais répéter "B" sur la première colonne, à chaque fois qu'il y avait un changement sur un ligne.
 
Voici donc le code, j'espère que ça servira a d'autre:
 
=====================================================
Private Sub Worksheet_Change(ByVal Target As Range)
 
    Dim iRange As Range
    Dim i As Integer, j As Integer
     
For i = 1 To 2000
     
     
    If Not (Intersect(Target, Range(Cells(i, 2), Cells(i, 7))) Is Nothing) Then
     
 
        Cells(i, 1) = "B"
         
    End If
     
 Next
End Sub

=====================================================
 
@+ Et merci quand même d'avoir lu mon sujet :)


Message édité par djeev le 11-07-2008 à 11:22:39
Reply

Marsh Posté le 15-07-2008 à 13:40:06    

Voici ce même code avec en plus la possibilité de changer la couleur de la case où la modification s'effectue:
 
Private Sub Worksheet_Change(ByVal Target As Range)
 
    Dim iRange As Range
    Dim i As Integer, j As Integer
     
For i = 1 To 2000
     
     
    If Not (Intersect(Target, Range(Cells(i, 2), Cells(i, 7))) Is Nothing) Then
     
 
        Cells(i, 1) = "B"
 Target(1, 1).Interior.ColorIndex = 24
         
    End If
     
 Next
End Sub

 
 
Voilà
 
@+
 

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed