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 valeur par une macro


Sujet :

Macros et VBA Excel

  1. #1
    Membre averti Avatar de bosk1000
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    706
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 706
    Points : 367
    Points
    367
    Par défaut effacer valeur par une macro
    bonjour

    voila je veux faire une macro qui lorsque la cellule n4 n'est pas vide, je recupère la valeur (un nom et un prenom) de la cellule b4, pour effacer toutes les valeurs du tableau identique a b4

    pour l'instant j'ai fait ça
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    Option Explicit
    Sub test()
    Dim nom As Variant
    Range("n4").Select
    If ActiveCell.Value <> "" Then Range("b4").Select
    ActiveCell.Value = nom
        'Selection.Copy
    '    Cells.Replace What:="nom" Replacement:="", LookAt:=xlPart, SearchOrder:=xlByRows
        Cells.Replace What:=nom, Replacement:="", LookAt:=xlPart, SearchOrder:=xlByRows
    End Sub
    mais la fin ne fonctionne pas, la partie remplacer valeur de b4 par "" ne se declenche pas

    autre bmol, lorsque la commande " ActiveCell.Value = nom" s'execute elle efface la cellule b4, ça ne me pose pas de souci sur cette macro, mais peux etre problematique ailleur, donc comment recuperer la valeur de la cellule sans l'effacer ?

  2. #2
    Membre chevronné Avatar de Krovax
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    1 888
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 1 888
    Points : 2 168
    Points
    2 168
    Par défaut
    Ton code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    " ActiveCell.Value = nom"
    met la valeur de la variable nom dans la cellule active c'est sans doute pour cela que la cellule s'efface si ta variable est vide pour récupérer un valeur dans une variable

    X étant le numéo de ligne
    Y le numéro de colonne

    Pour le reste de ta question je risque de dire une bétise je laisse donc un autre te répondre

  3. #3
    Membre expérimenté Avatar de laetitia
    Profil pro
    Inscrit en
    Décembre 2002
    Messages
    1 281
    Détails du profil
    Informations personnelles :
    Âge : 34
    Localisation : France

    Informations forums :
    Inscription : Décembre 2002
    Messages : 1 281
    Points : 1 512
    Points
    1 512
    Par défaut
    bonjour bosk1000 Krovax le forum comme je comprends !!

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Option Explicit
    Sub test()
    If [n4] <> "" Then [b4] = ""
    End Sub
    salutations

  4. #4
    Membre expérimenté
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    1 563
    Détails du profil
    Informations personnelles :
    Âge : 61
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 563
    Points : 1 691
    Points
    1 691
    Par défaut
    en fait, krovax a raison pour la variable, c'est la variable qui doit prendre la valeur de la cellule
    Option Explicit
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    Sub test()
    Dim nom As Variant
    Range("n4").Select
    If ActiveCell.Value <> "" Then Range("b4").Select
    nom =ActiveCell.Value 
    'Selection.Copy
    ' Cells.Replace What:="nom" Replacement:="", LookAt:=xlPart, SearchOrder:=xlByRows
    Cells.Replace What:=nom, Replacement:="", LookAt:=xlPart, SearchOrder:=xlByRows
    End Sub
    théoriquement, si je comprend bien ton code, il prend la valeur écrite dans ta cellule, puis il efface le nom en question de la feuille entiere, y compris dans la cellule n4

  5. #5
    Membre averti Avatar de bosk1000
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    706
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 706
    Points : 367
    Points
    367
    Par défaut
    merci a vous tous
    ce simple détail a suffit a faire fonctionner l'ensemble

    encore merci

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

Discussions similaires

  1. Réponses: 8
    Dernier message: 15/12/2009, 12h04
  2. lancer une sub par une macro
    Par ganizate dans le forum Access
    Réponses: 2
    Dernier message: 04/04/2006, 16h01
  3. [Debutant]Remplacer une liste de valeur par une liste de val
    Par Sebbo dans le forum Collection et Stream
    Réponses: 3
    Dernier message: 31/03/2006, 13h15
  4. remplacement d'une valeur par une autre
    Par hugoos dans le forum Langage
    Réponses: 9
    Dernier message: 20/09/2005, 22h43
  5. [Excel] Utiliser une application externe par une macro
    Par thierry2.dlp dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 09/08/2005, 23h07

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