Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1531 connectés 

  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  Por emp^cher la saisie de doublons en VBA ??

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Por emp^cher la saisie de doublons en VBA ??

n°645128
miguel69
Fô bien s'entraider non ?
Posté le 17-02-2004 à 11:53:09  profilanswer
 

Bonjour,
Voilà mon pb.
Je saisi par une form des infos dans une feuille excel. No problémo mais là ou ça coince, c que je peux saisir x fois le même enregistrement, Alors comment empêcher la saisie d'un enregistrement qui existe déjà (Nom en colonne 1) ? et où mettre le code ?
Sympa de ma répondre
Merci


---------------
Miguel69
mood
Publicité
Posté le 17-02-2004 à 11:53:09  profilanswer
 

n°645144
beliaf
Posté le 17-02-2004 à 12:03:37  profilanswer
 

Slt,
 
pour le ou :
sous VB, dans la parties "Microsoft Excel Objects" tu doubles click sur le nom de ton onglet, la sur la gauche du choisi worksheet dans la combo (General), puis dans la combo de gauche levenement aproprier, jdirais "Change" dans ton cas, après tu met le code ke tu veux derrière genre recherche si la valeur ke tu viens de rentrer exist dejà ;)
 
 
voilou
 
@+

n°645149
miguel69
Fô bien s'entraider non ?
Posté le 17-02-2004 à 12:08:32  profilanswer
 

J'te remercie, mais ce genre de prg j'suis pas à l'aise
t'aurais pas un bout d'code
En te remerciant encore A+


---------------
Miguel69
n°645166
beliaf
Posté le 17-02-2004 à 12:25:28  profilanswer
 

bon vu ke je suis un peux au taf G fe ça vite fe y'a surment mieux comme methode :)
 
donc tu met tout ça la ou je T dis tout a lheure ;)
[#00aa55][#00f00e]
Private Sub Worksheet_Change(ByVal Target As Range)
Dim newval As String
Dim i As Integer
Dim err As Boolean
err = False
 
newval = Cells(ActiveCell.Row - 1, 1).Value
 
If ActiveCell.Row > 2 Then
    i = ActiveCell.Row - 2
    Do While i >= 1 And err = False
     
    If Range("A" & i).Value = newval Then
    MsgBox ("Cette Entrée exist !!" )
    err = True
    Cells(ActiveCell.Row - 1, 1).Delete
    Cells(ActiveCell.Row - 1, 1).Activate
    End If
     
    i = i - 1
    Loop
Else
    If Range("A1" ).Value = Range("A2" ).Value Then
    MsgBox ("Cette Entrée exist !!" )
    Cells(ActiveCell.Row - 1, 1).Delete
    Cells(ActiveCell.Row - 1, 1).Activate
    End If
End If
 
End Sub
[/#00aa55][/#00aa55]
 
voila en esperant ke ça marche chez toi ....
 
@+

n°645180
beliaf
Posté le 17-02-2004 à 12:34:25  profilanswer
 

rectification :
 
met la ligne :
 
newval = Cells(ActiveCell.Row - 1, 1).Value  
 
après  
If ActiveCell.Row > 2 Then
 
sinon ça marche ps trop, pis si tu veux effacer la colonne A, efface un par un sinon si tu selectionne tout et ke tu fe suppr ça plante !
G fe ça vite fe .... ;)
 
@+
 
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  Por emp^cher la saisie de doublons en VBA ??

 

Sujets relatifs
créer et ouvrir une requete SELECT en VBASupprimer les doublons dans un List COntrol
[VBA Excel] Comment incorporer une frame html dans un UserForm ?[VBA] creer dynamiquement une combobox - marche tjs pas :sweat:
Calculs en VBA[JAVA]récupérer une saisie clavier
Pb VBA/Excelrelation BD/VBA
Comment modifier les tag MP3 avec VBA ?VBA sans Access
Plus de sujets relatifs à : Por emp^cher la saisie de doublons en VBA ??


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR