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 :

Création macro: niveau novice


Sujet :

Macros et VBA Excel

  1. #1
    Candidat au Club
    Femme Profil pro
    ajusteur monteur
    Inscrit en
    Mars 2020
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 36
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : ajusteur monteur

    Informations forums :
    Inscription : Mars 2020
    Messages : 3
    Par défaut Création macro: niveau novice
    Bonjour,
    Je suis une novice en macro et vous allez vite le voir.
    Je souhaite numériser un document existant dans mon travail.
    Dans ma macro que je souhaite créer je voudrais que ma macro soit lié à un bouton "OK" que lorsque l'on clique dessus la valeur qui se trouve en A3 aille en E3 et que la valeur en A3 se supprime.
    Mon début de macro est la suivante

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Dim CC As Range
     
    For Each CC In Range ("B3:B30")
        If CC.Value = "OK" Then
    Pouvez-vous m'aider ?
    Merci d'avance.

  2. #2
    Expert confirmé Avatar de Patrice740
    Homme Profil pro
    Retraité
    Inscrit en
    Mars 2007
    Messages
    2 478
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 71
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Mars 2007
    Messages : 2 478
    Par défaut
    Bonjour,

    Dans un module standard, écrire la macro suivante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Option Explicit
    Sub Ok_Click()
    Dim celOrg As Range
    Dim celDst As Range
      Set celOrg = ThisWorkbook.Worksheets("Feuil1").Range("A3")  'Adapter le nom de la feuill
      Set celDst = ThisWorkbook.Worksheets("Feuil1").Range("E3")
      ' je voudrais que la valeur qui se trouve en A3 aille en E3 :
      celDst.Value = celOrg.Value
      ' et que la valeur en A3 se supprime :
      celOrg.ClearContents
    End Sub
    je voudrais que ma macro soit lié à un bouton "OK" que lorsque l'on clique dessus...
    Ajouter un bouton sur la feuille et y affecter la macro ci dessus.

  3. #3
    Membre averti
    Homme Profil pro
    Technicien
    Inscrit en
    Février 2020
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien

    Informations forums :
    Inscription : Février 2020
    Messages : 13
    Par défaut
    Coucou Worksheet_SelectionChange est ta solution




    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
    Private Sub Worksheet_SelectionChange(ByVal Target As Range)
     
    If ActiveCell.Columns = 2 Then
     
    If ActiveCell.Row > 2 And ActiveCell.Row < 31 Then
     
    Cells(ActiveCell.Row, 5).Value = Cells(ActiveCell.Row, 1).Value
     
    Cells(ActiveCell.Row, 1).Value = ""
     
    End If
     
    End If
     
    End Sub

  4. #4
    Expert confirmé Avatar de Patrice740
    Homme Profil pro
    Retraité
    Inscrit en
    Mars 2007
    Messages
    2 478
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 71
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Mars 2007
    Messages : 2 478
    Par défaut
    Bonjour,
    Citation Envoyé par Lion-Soul Voir le message
    Coucou Worksheet_SelectionChange est ta solution
    C'est possible (bien que ce ne soit pas la demande exacte).

    Mais j'ai mis un pour ton code qui s'adresse à un novice car comme il commence la programmation il faut lui répondre avec une grande rigueur.
    On ne doit pas proposer une solution approximative qui peut l'induire en erreur dans sa phase d'apprentissage.
    Ton code présente au moins 2 anomalies :
    1) Il ne faut pas confondre ActiveCell et Target.
    2) Pour supprimer la valeur d'une cellule, Cells(ActiveCell.Row, 1).Value = "" n'est pas efficace dans tous les cas, une des bonnes syntaxes serait Cells(ActiveCell.Row, 1).Value = Empty

Discussions similaires

  1. Création macro word pour copier-coller
    Par marmi dans le forum VBA Word
    Réponses: 2
    Dernier message: 18/04/2017, 09h26
  2. [XL-2003] Création Macro VBA conditionnelle
    Par choudoudou15 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 16/05/2009, 13h45
  3. Création macro (filtre automatique et sous-totaux)
    Par emmath dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 26/05/2008, 23h41
  4. création macro "parcourir
    Par marie100282 dans le forum Access
    Réponses: 3
    Dernier message: 05/05/2006, 15h12

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