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 :

Effacer la valeur d'une cellule en fin d'execution du code


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
    Février 2013
    Messages
    12
    Détails du profil
    Informations forums :
    Inscription : Février 2013
    Messages : 12
    Par défaut Effacer la valeur d'une cellule en fin d'execution du code
    Bonjour,

    J'ai un code VBA pour lequel la case V1 prend une valeur au cours de l'execution de celui-ci, cependant, je voudrais qu'en fin d'execution du code, V1 prenne la valeur "None".
    J'ai essayé de mettre en fin de code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    If range("V1").value <> "" then 
    range("V1").value = "None"
    Mais ça n'a pas fonctionné, j'ai aussi essayé de l'effecer avec clear, de changer ça valeur, mais rien ne fonctionne...

    Voici mon code et merci d'avance pour votre aide:

    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
    Private Sub Worksheet_Change(ByVal Target As Range)
    n = Target.Row
    Dim NumSafetyEasy As Long
    For x = 1 To 17
    If Cells(n, 1) <> "" And Cells(n, 6) <> "" And Cells(n, 7) = "Ok" And Cells(n, 9) <> "" And Cells(n, 11) <> "" And (Cells(n, 15) = "" Or Cells(n, 16) = "") Then
    Cells(n, x).Interior.ColorIndex = 44
    End If
    If Cells(n, 4) = "SAE canceled" And Cells(n, 17) = "Validé" Then
    Cells(n, x).Interior.ColorIndex = 41
    End If
    If Cells(n, 4) = "SAE canceled" And Cells(n, 17) = "Validé" Then
    NumSafetyEasy = Cells(n, 6)
    End If
    If Cells(n, 4) = "SAE canceled" And Cells(n, 17) = "Validé" Then
    Range("V1").Value = NumSafetyEasy
    End If
    If Application.Intersect(Range("V1"), Target) Is Nothing Then
        For a = 9 To 100
        For b = 1 To 17
        If Cells(a, 6) = Range("V1").Value Then
        Cells(a, b).Interior.ColorIndex = 2
        End If
        Next b '
        Next a '
    End If
    Next x '
    End Sub

  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
    Je ne vois pas l'utilité d'utiliser la cellule V1.

    Testes ce code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Private Sub Worksheet_Change(ByVal Target As Range)
    Dim NumSafetyEasy As Long, n As Long
    Dim A As Byte
     
    n = Target.Row
    NumSafetyEasy = Cells(n, 6)
    If Cells(n, 1) <> "" And Cells(n, 6) <> "" And Cells(n, 7) = "Ok" And Cells(n, 9) <> "" And Cells(n, 11) <> "" And (Cells(n, 15) = "" Or Cells(n, 16) = "") Then Range("A" & n & ":Q" & n).Interior.ColorIndex = 44
    If Cells(n, 4) = "SAE canceled" And Cells(n, 17) = "Validé" Then Range("A" & n & ":Q" & n).Interior.ColorIndex = 41
    For A = 9 To 100
        Range("A" & A & ":Q" & A).Interior.ColorIndex = IIf(Cells(A, 6) = NumSafetyEasy, 2, xlNone)
    Next A
    End Sub
    PS: Peut être avec un ElseIf sur le second IF (ça dépend des conditions)

  3. #3
    Membre averti
    Inscrit en
    Février 2013
    Messages
    12
    Détails du profil
    Informations forums :
    Inscription : Février 2013
    Messages : 12
    Par défaut
    Merci mais ton code ne permet pas de faire ce que fait le mien...
    Je voudrais juste pouvoir supprimer le contenu d'une cellule en fin de code...

    Tant pis je vais me débrouiller

  4. #4
    Membre émérite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2013
    Messages
    388
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Conseil

    Informations forums :
    Inscription : Janvier 2013
    Messages : 388
    Par défaut
    Bonjour.
    Et cette commande ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    If Cells("V1") <> "" Then Cells("V1") = "None"

Discussions similaires

  1. Réponses: 2
    Dernier message: 19/02/2013, 11h01
  2. [XL-2003] Effacer toute la ligne suite à l'action d'effacer la valeur d'une cellule
    Par will-1981 dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 30/09/2010, 14h40
  3. [XL-2003] Concatener la valeur d'une cellule a la fin de la valeur de la cellule du dessus.
    Par vincent-57 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 29/06/2009, 12h39
  4. stocker la valeur d'une cellule effacée au cours de la procédure
    Par NATOU2 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 17/10/2008, 18h10
  5. [VBA-E] Effacer les valeurs d'une plage de cellules
    Par jfamiens dans le forum Macros et VBA Excel
    Réponses: 10
    Dernier message: 10/06/2006, 11h07

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