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 :

macro _ double


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Inscrit en
    Février 2008
    Messages
    271
    Détails du profil
    Informations forums :
    Inscription : Février 2008
    Messages : 271
    Par défaut macro _ double
    bjr
    j'ai fait un macro dont le but est de trouver les double que j'ai dans la colonne où j'ai saisie des "n° de cadre"
    le macro:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    sub macro1()
    whith sheets(1)
        for i=2 to .range("a65535").end(xlup).row
           for j=1+i to .range("a65535").end(xlup).row
               if .cells(i,1)=.cells(j,1)and .cells(i,1)<>"" and .cells(j,1)<>"" then
                   msgbox "ce n°      " & .cells(i,1) & "      de cadre est déjà saisi"
               end if
           next
        next
    end with
    end sub
    le prob c'est que je veux que le message s'affiche lors de la saisi, est ce que c'est possible.
    merci.

  2. #2
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Par défaut
    Déjà, ce n'est pas Whith mais With (avec)
    Pour le reste, je regarde

    NB - Pense à baliser ton code, icône # -> Sélection du code + 1 clic sur #

  3. #3
    Membre éclairé
    Inscrit en
    Février 2008
    Messages
    271
    Détails du profil
    Informations forums :
    Inscription : Février 2008
    Messages : 271
    Par défaut
    vous avez des grandes yeux.

    merci

  4. #4
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Par défaut
    Si ça résoud ton problème, alors un petit clic sur pour qu'on sâche que c'est résolu (en bas de cette fenêtre)

  5. #5
    Membre éclairé
    Inscrit en
    Février 2008
    Messages
    271
    Détails du profil
    Informations forums :
    Inscription : Février 2008
    Messages : 271
    Par défaut
    non pas encore
    je voulais que la macro s'execute lors de la saisie
    merci.

  6. #6
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Par défaut
    Citation Envoyé par abouhossam Voir le message
    non pas encore
    je voulais que la macro s'execute lors de la saisie
    merci.
    Tu peux également par une macro dans l'événement Change de la feuille de calculs -> Editeur VBA - Deux clics sur le nom de la feuille.
    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
    28
    29
    30
    31
    32
    33
    34
    Private Sub Worksheet_Change(ByVal Target As Range)
    'l'événement Change se produit en quittant la cellule que l'on vient de renseigner
    Dim firstAddress As String, c As Range
        'Target correspond à la cellule active avant d'en sortir
        'si la cellule est vide, on sort sans rien faire
        If Target = "" Then Exit Sub
        'La recherche de la donnée saisie se fait dans la colonne de Target
        With ActiveSheet.Columns(Target.Column)
            'Si la donnée est trouvée, c la contient
            'Cette donnée, c'est celle qui se trouve dans la cellule active (Target)... donc
            Set c = .Find(Target.Value, LookIn:=xlValues)
            'c n'est pas "rien" si la donnée a été trouvée
            If Not c Is Nothing Then
                'on mémorise l'adresse de la donnée trouvée afin d'éviter une boucle sans fin
                firstAddress = c.Address
                'La donnée existe forcément puisqu'on vient de la saisir
                'mais on ignore si ce n'est pas une donnée pré-existante
                Do
                    'Donc, si l'adresse de cette donnée est différente de celle de Target
                    'on sait que target est un doublon
                    If c.Address <> Target.Address Then
                        MsgBox "Le cadre " & Target & " existe déjà"
                        'On retourne alors sur Target
                        Target.Select
                        '... et on efface la donnée
                        Target = ""
                        Exit Do
                    End If
                    Set c = .FindNext(c)
                    'Tant que la boucle ne nous replace pas sur la première donnée trouvée
                Loop While Not c Is Nothing And c.Address <> firstAddress
            End If
        End With
    End Sub
    Si une formule ne te suffit pas

  7. #7
    Membre chevronné
    Inscrit en
    Janvier 2008
    Messages
    483
    Détails du profil
    Informations forums :
    Inscription : Janvier 2008
    Messages : 483
    Par défaut
    Bonjour
    sans vba Données>Validation>Autoriserersonnalisé
    dans la zone Formule:
    onglet Alerte d'erreur Ect…..
    Abed_H

  8. #8
    Membre éclairé
    Inscrit en
    Février 2008
    Messages
    271
    Détails du profil
    Informations forums :
    Inscription : Février 2008
    Messages : 271
    Par défaut
    ça marche pas.

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

Discussions similaires

  1. Macro controle double saisie
    Par Cic-ec dans le forum Macro
    Réponses: 16
    Dernier message: 19/06/2012, 10h54
  2. Demande d'aide sur macro a double conditions
    Par zinebs dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 11/11/2007, 23h23
  3. [Macro] ouverture d'un fichier csv par macro différent du double-clic
    Par Caro-Line dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 19/04/2007, 16h36
  4. Double macro facultative?
    Par Pragmateek dans le forum C
    Réponses: 13
    Dernier message: 23/03/2006, 19h43
  5. [VBA-E] Effacer les doubles dans 1 colonne grace à une macro
    Par Stef.proxi dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 05/08/2004, 15h44

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