bonjour
encore encore moi !
une dernière question :
en vba, comment afficher un message dans dans une plage de cellules a1:b10
de la feuille feuil1 si une valeur existe déja ?
par exemple si en A1 j'ai "bc", et q'en b9 je tape "bc" alors j'ai le
message "Valeur déjà saisie!"
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Joel
Re ;-)
à placer dans le module privé de la feuille concernée :
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Count > 1 Then Exit Sub End If If Target.Row > 9 Or Target.Column > 2 Or Target.Value = "" Then Exit Sub End If
Dim oCell As Range For Each oCell In Range("A1:B9") If oCell.Value = Target.Value And Target.Address <> oCell.Address Then MsgBox Target.Value & " a déjà été saisi en " & oCell.Address Target.ClearContents Target.Select Exit For End If Next End Sub
--
Bien cordialement,
Joël GARBE www.joelgarbe.fr "Frédéric LEGEAI" a écrit dans le message de news:cc1n0h$cfd$
bonjour encore encore moi ! une dernière question : en vba, comment afficher un message dans dans une plage de cellules a1:b10 de la feuille feuil1 si une valeur existe déja ?
par exemple si en A1 j'ai "bc", et q'en b9 je tape "bc" alors j'ai le message "Valeur déjà saisie!"
mille mille mercis ;0)
Re ;-)
à placer dans le module privé de la feuille concernée :
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Count > 1 Then
Exit Sub
End If
If Target.Row > 9 Or Target.Column > 2 Or Target.Value = "" Then
Exit Sub
End If
Dim oCell As Range
For Each oCell In Range("A1:B9")
If oCell.Value = Target.Value And Target.Address <> oCell.Address Then
MsgBox Target.Value & " a déjà été saisi en " & oCell.Address
Target.ClearContents
Target.Select
Exit For
End If
Next
End Sub
--
Bien cordialement,
Joël GARBE
www.joelgarbe.fr
"Frédéric LEGEAI" <kikigames@wanadoo.fr> a écrit dans le message de
news:cc1n0h$cfd$1@news-reader5.wanadoo.fr...
bonjour
encore encore moi !
une dernière question :
en vba, comment afficher un message dans dans une plage de cellules a1:b10
de la feuille feuil1 si une valeur existe déja ?
par exemple si en A1 j'ai "bc", et q'en b9 je tape "bc" alors j'ai le
message "Valeur déjà saisie!"
à placer dans le module privé de la feuille concernée :
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Count > 1 Then Exit Sub End If If Target.Row > 9 Or Target.Column > 2 Or Target.Value = "" Then Exit Sub End If
Dim oCell As Range For Each oCell In Range("A1:B9") If oCell.Value = Target.Value And Target.Address <> oCell.Address Then MsgBox Target.Value & " a déjà été saisi en " & oCell.Address Target.ClearContents Target.Select Exit For End If Next End Sub
--
Bien cordialement,
Joël GARBE www.joelgarbe.fr "Frédéric LEGEAI" a écrit dans le message de news:cc1n0h$cfd$
bonjour encore encore moi ! une dernière question : en vba, comment afficher un message dans dans une plage de cellules a1:b10 de la feuille feuil1 si une valeur existe déja ?
par exemple si en A1 j'ai "bc", et q'en b9 je tape "bc" alors j'ai le message "Valeur déjà saisie!"
mille mille mercis ;0)
AV
en vba, comment afficher un message dans dans une plage de cellules a1:b10 de la feuille feuil1 si une valeur existe déja ?
Solution 1 : Sélection de la plage A1:B10 > Données > Validation > Options > Autoriser : "Personnalisée > Formule : =NB.SI($A$1:$B$10;A1)=1
Ajuster ensuite les éventuels messages
Solution 2 : Clic droit sur l'onglet de feuille > Visualiser le code > Copier/Coller :
Private Sub Worksheet_Change(ByVal zz As Excel.Range) If Selection.Count > 1 Then Exit Sub If Intersect(zz, [A1:B10]) Is Nothing Or zz = "" Then Exit Sub Set C = [A1:B10].Find(zz(1), zz(1)) If C.Address <> zz(1).Address Then MsgBox "Valeur déjà présente en " _ & C.Address, vbCritical, "Doublon !" Application.EnableEvents = False zz = "": zz.Select Application.EnableEvents = True 'SendKeys "{F2}+{HOME}" 'pour passer en mode édition End If End Sub
AV
en vba, comment afficher un message dans dans une plage de cellules a1:b10
de la feuille feuil1 si une valeur existe déja ?
Solution 1 :
Sélection de la plage A1:B10 > Données > Validation > Options > Autoriser :
"Personnalisée > Formule :
=NB.SI($A$1:$B$10;A1)=1
Ajuster ensuite les éventuels messages
Solution 2 :
Clic droit sur l'onglet de feuille > Visualiser le code > Copier/Coller :
Private Sub Worksheet_Change(ByVal zz As Excel.Range)
If Selection.Count > 1 Then Exit Sub
If Intersect(zz, [A1:B10]) Is Nothing Or zz = "" Then Exit Sub
Set C = [A1:B10].Find(zz(1), zz(1))
If C.Address <> zz(1).Address Then
MsgBox "Valeur déjà présente en " _
& C.Address, vbCritical, "Doublon !"
Application.EnableEvents = False
zz = "": zz.Select
Application.EnableEvents = True
'SendKeys "{F2}+{HOME}" 'pour passer en mode édition
End If
End Sub
en vba, comment afficher un message dans dans une plage de cellules a1:b10 de la feuille feuil1 si une valeur existe déja ?
Solution 1 : Sélection de la plage A1:B10 > Données > Validation > Options > Autoriser : "Personnalisée > Formule : =NB.SI($A$1:$B$10;A1)=1
Ajuster ensuite les éventuels messages
Solution 2 : Clic droit sur l'onglet de feuille > Visualiser le code > Copier/Coller :
Private Sub Worksheet_Change(ByVal zz As Excel.Range) If Selection.Count > 1 Then Exit Sub If Intersect(zz, [A1:B10]) Is Nothing Or zz = "" Then Exit Sub Set C = [A1:B10].Find(zz(1), zz(1)) If C.Address <> zz(1).Address Then MsgBox "Valeur déjà présente en " _ & C.Address, vbCritical, "Doublon !" Application.EnableEvents = False zz = "": zz.Select Application.EnableEvents = True 'SendKeys "{F2}+{HOME}" 'pour passer en mode édition End If End Sub
AV
sabatier
il a dit en vba le monsieur : c'est quoi cette solution 1? un excès de zèle? ah! je commence à en avoir marre de ces MVP ; bon, allez, moi, je me désabonne, ne supprime pas le fichier .dbx d' OE puisque, pour être en union avec mon ange et l'abominable FxM, je suis sur NN mais jette carrément mon PC par la fenêtre, écris à MS pour leur dire que je ne veux plus de leur distinction, tente de leur rendre des valises entières de CD et des dizaines de chemises bleu nuit que je n'ai jamais reçus, les prie de ne m'inviter à Seattle qu'à titre privé avec billet avion en first, limousine avec chauffeur à dispo, hôtel 5****NN en suite présidentielle, open bar dans tous les bistrots de la ville sans oublier une vingtaine de tickets-repas chez MacDo histoire de passer inaperçu, ce que tout compte fait j'aime le plus...je veux dire : vivre incognito jps (ex MVP HS qui fonce sur le PC de son fils pour renouer avec cette drogue de mpfe dont je ne souhaiterais vraiment pas que quelque québécois, trop souvent énervé mais pas assez enclin à la tolérance, ait pu être victime d'une overdose)
AV a écrit:
en vba, comment afficher un message dans dans une plage de cellules a1:b10 de la feuille feuil1 si une valeur existe déja ?
Solution 1 : Sélection de la plage A1:B10 > Données > Validation > Options > Autoriser : "Personnalisée > Formule : =NB.SI($A$1:$B$10;A1)=1
Ajuster ensuite les éventuels messages
Solution 2 : Clic droit sur l'onglet de feuille > Visualiser le code > Copier/Coller :
Private Sub Worksheet_Change(ByVal zz As Excel.Range) If Selection.Count > 1 Then Exit Sub If Intersect(zz, [A1:B10]) Is Nothing Or zz = "" Then Exit Sub Set C = [A1:B10].Find(zz(1), zz(1)) If C.Address <> zz(1).Address Then MsgBox "Valeur déjà présente en " _ & C.Address, vbCritical, "Doublon !" Application.EnableEvents = False zz = "": zz.Select Application.EnableEvents = True 'SendKeys "{F2}+{HOME}" 'pour passer en mode édition End If End Sub
AV
il a dit en vba le monsieur : c'est quoi cette solution 1? un excès de
zèle? ah! je commence à en avoir marre de ces MVP ; bon, allez, moi, je
me désabonne, ne supprime pas le fichier .dbx d' OE puisque, pour être
en union avec mon ange et l'abominable FxM, je suis sur NN mais jette
carrément mon PC par la fenêtre, écris à MS pour leur dire que je ne
veux plus de leur distinction, tente de leur rendre des valises entières
de CD et des dizaines de chemises bleu nuit que je n'ai jamais reçus,
les prie de ne m'inviter à Seattle qu'à titre privé avec billet avion en
first, limousine avec chauffeur à dispo, hôtel 5****NN en suite
présidentielle, open bar dans tous les bistrots de la ville sans oublier
une vingtaine de tickets-repas chez MacDo histoire de passer inaperçu,
ce que tout compte fait j'aime le plus...je veux dire : vivre incognito
jps (ex MVP HS qui fonce sur le PC de son fils pour renouer avec cette
drogue de mpfe dont je ne souhaiterais vraiment pas que quelque
québécois, trop souvent énervé mais pas assez enclin à la tolérance, ait
pu être victime d'une overdose)
AV a écrit:
en vba, comment afficher un message dans dans une plage de cellules a1:b10
de la feuille feuil1 si une valeur existe déja ?
Solution 1 :
Sélection de la plage A1:B10 > Données > Validation > Options > Autoriser :
"Personnalisée > Formule :
=NB.SI($A$1:$B$10;A1)=1
Ajuster ensuite les éventuels messages
Solution 2 :
Clic droit sur l'onglet de feuille > Visualiser le code > Copier/Coller :
Private Sub Worksheet_Change(ByVal zz As Excel.Range)
If Selection.Count > 1 Then Exit Sub
If Intersect(zz, [A1:B10]) Is Nothing Or zz = "" Then Exit Sub
Set C = [A1:B10].Find(zz(1), zz(1))
If C.Address <> zz(1).Address Then
MsgBox "Valeur déjà présente en " _
& C.Address, vbCritical, "Doublon !"
Application.EnableEvents = False
zz = "": zz.Select
Application.EnableEvents = True
'SendKeys "{F2}+{HOME}" 'pour passer en mode édition
End If
End Sub
il a dit en vba le monsieur : c'est quoi cette solution 1? un excès de zèle? ah! je commence à en avoir marre de ces MVP ; bon, allez, moi, je me désabonne, ne supprime pas le fichier .dbx d' OE puisque, pour être en union avec mon ange et l'abominable FxM, je suis sur NN mais jette carrément mon PC par la fenêtre, écris à MS pour leur dire que je ne veux plus de leur distinction, tente de leur rendre des valises entières de CD et des dizaines de chemises bleu nuit que je n'ai jamais reçus, les prie de ne m'inviter à Seattle qu'à titre privé avec billet avion en first, limousine avec chauffeur à dispo, hôtel 5****NN en suite présidentielle, open bar dans tous les bistrots de la ville sans oublier une vingtaine de tickets-repas chez MacDo histoire de passer inaperçu, ce que tout compte fait j'aime le plus...je veux dire : vivre incognito jps (ex MVP HS qui fonce sur le PC de son fils pour renouer avec cette drogue de mpfe dont je ne souhaiterais vraiment pas que quelque québécois, trop souvent énervé mais pas assez enclin à la tolérance, ait pu être victime d'une overdose)
AV a écrit:
en vba, comment afficher un message dans dans une plage de cellules a1:b10 de la feuille feuil1 si une valeur existe déja ?
Solution 1 : Sélection de la plage A1:B10 > Données > Validation > Options > Autoriser : "Personnalisée > Formule : =NB.SI($A$1:$B$10;A1)=1
Ajuster ensuite les éventuels messages
Solution 2 : Clic droit sur l'onglet de feuille > Visualiser le code > Copier/Coller :
Private Sub Worksheet_Change(ByVal zz As Excel.Range) If Selection.Count > 1 Then Exit Sub If Intersect(zz, [A1:B10]) Is Nothing Or zz = "" Then Exit Sub Set C = [A1:B10].Find(zz(1), zz(1)) If C.Address <> zz(1).Address Then MsgBox "Valeur déjà présente en " _ & C.Address, vbCritical, "Doublon !" Application.EnableEvents = False zz = "": zz.Select Application.EnableEvents = True 'SendKeys "{F2}+{HOME}" 'pour passer en mode édition End If End Sub
AV
Pierre CFI [mvp]
Les ordres sont clairs : Il faut abattre le soldat JPS et tenter de réparer les dégats causés dans le coeur des jolies femmes :o)))
-- Pierre CFI MVP Microsoft Access Mail : http://cerbermail.com/?z0SN8cN53B
Site perso http://access.cfi.free.fr "sabatier" a écrit dans le message de news:
il a dit en vba le monsieur : c'est quoi cette solution 1? un excès de zèle? ah! je commence à en avoir marre de ces MVP ; bon, allez, moi, je me désabonne, ne supprime pas le fichier .dbx d' OE puisque, pour être en union avec mon ange et l'abominable FxM, je suis sur NN mais jette carrément mon PC par la fenêtre, écris à MS pour leur dire que je ne veux plus de leur distinction, tente de leur rendre des valises entières de CD et des dizaines de chemises bleu nuit que je n'ai jamais reçus, les prie de ne m'inviter à Seattle qu'à titre privé avec billet avion en first, limousine avec chauffeur à dispo, hôtel 5****NN en suite présidentielle, open bar dans tous les bistrots de la ville sans oublier une vingtaine de tickets-repas chez MacDo histoire de passer inaperçu, ce que tout compte fait j'aime le plus...je veux dire : vivre incognito jps (ex MVP HS qui fonce sur le PC de son fils pour renouer avec cette drogue de mpfe dont je ne souhaiterais vraiment pas que quelque québécois, trop souvent énervé mais pas assez enclin à la tolérance, ait pu être victime d'une overdose)
AV a écrit:
en vba, comment afficher un message dans dans une plage de cellules a1:b10 de la feuille feuil1 si une valeur existe déja ?
Solution 1 : Sélection de la plage A1:B10 > Données > Validation > Options > Autoriser : "Personnalisée > Formule : =NB.SI($A$1:$B$10;A1)=1
Ajuster ensuite les éventuels messages
Solution 2 : Clic droit sur l'onglet de feuille > Visualiser le code > Copier/Coller :
Private Sub Worksheet_Change(ByVal zz As Excel.Range) If Selection.Count > 1 Then Exit Sub If Intersect(zz, [A1:B10]) Is Nothing Or zz = "" Then Exit Sub Set C = [A1:B10].Find(zz(1), zz(1)) If C.Address <> zz(1).Address Then MsgBox "Valeur déjà présente en " _ & C.Address, vbCritical, "Doublon !" Application.EnableEvents = False zz = "": zz.Select Application.EnableEvents = True 'SendKeys "{F2}+{HOME}" 'pour passer en mode édition End If End Sub
AV
Les ordres sont clairs : Il faut abattre le soldat JPS et tenter de réparer les dégats causés dans le coeur des jolies femmes :o)))
--
Pierre CFI
MVP Microsoft Access
Mail : http://cerbermail.com/?z0SN8cN53B
Site perso
http://access.cfi.free.fr
"sabatier" <biscotteUnScudJpsabatdelaile@wanadoo.fr> a écrit dans le message de news:40E5007D.1060006@wanadoo.fr...
il a dit en vba le monsieur : c'est quoi cette solution 1? un excès de
zèle? ah! je commence à en avoir marre de ces MVP ; bon, allez, moi, je
me désabonne, ne supprime pas le fichier .dbx d' OE puisque, pour être
en union avec mon ange et l'abominable FxM, je suis sur NN mais jette
carrément mon PC par la fenêtre, écris à MS pour leur dire que je ne
veux plus de leur distinction, tente de leur rendre des valises entières
de CD et des dizaines de chemises bleu nuit que je n'ai jamais reçus,
les prie de ne m'inviter à Seattle qu'à titre privé avec billet avion en
first, limousine avec chauffeur à dispo, hôtel 5****NN en suite
présidentielle, open bar dans tous les bistrots de la ville sans oublier
une vingtaine de tickets-repas chez MacDo histoire de passer inaperçu,
ce que tout compte fait j'aime le plus...je veux dire : vivre incognito
jps (ex MVP HS qui fonce sur le PC de son fils pour renouer avec cette
drogue de mpfe dont je ne souhaiterais vraiment pas que quelque
québécois, trop souvent énervé mais pas assez enclin à la tolérance, ait
pu être victime d'une overdose)
AV a écrit:
en vba, comment afficher un message dans dans une plage de cellules a1:b10
de la feuille feuil1 si une valeur existe déja ?
Solution 1 :
Sélection de la plage A1:B10 > Données > Validation > Options > Autoriser :
"Personnalisée > Formule :
=NB.SI($A$1:$B$10;A1)=1
Ajuster ensuite les éventuels messages
Solution 2 :
Clic droit sur l'onglet de feuille > Visualiser le code > Copier/Coller :
Private Sub Worksheet_Change(ByVal zz As Excel.Range)
If Selection.Count > 1 Then Exit Sub
If Intersect(zz, [A1:B10]) Is Nothing Or zz = "" Then Exit Sub
Set C = [A1:B10].Find(zz(1), zz(1))
If C.Address <> zz(1).Address Then
MsgBox "Valeur déjà présente en " _
& C.Address, vbCritical, "Doublon !"
Application.EnableEvents = False
zz = "": zz.Select
Application.EnableEvents = True
'SendKeys "{F2}+{HOME}" 'pour passer en mode édition
End If
End Sub
Les ordres sont clairs : Il faut abattre le soldat JPS et tenter de réparer les dégats causés dans le coeur des jolies femmes :o)))
-- Pierre CFI MVP Microsoft Access Mail : http://cerbermail.com/?z0SN8cN53B
Site perso http://access.cfi.free.fr "sabatier" a écrit dans le message de news:
il a dit en vba le monsieur : c'est quoi cette solution 1? un excès de zèle? ah! je commence à en avoir marre de ces MVP ; bon, allez, moi, je me désabonne, ne supprime pas le fichier .dbx d' OE puisque, pour être en union avec mon ange et l'abominable FxM, je suis sur NN mais jette carrément mon PC par la fenêtre, écris à MS pour leur dire que je ne veux plus de leur distinction, tente de leur rendre des valises entières de CD et des dizaines de chemises bleu nuit que je n'ai jamais reçus, les prie de ne m'inviter à Seattle qu'à titre privé avec billet avion en first, limousine avec chauffeur à dispo, hôtel 5****NN en suite présidentielle, open bar dans tous les bistrots de la ville sans oublier une vingtaine de tickets-repas chez MacDo histoire de passer inaperçu, ce que tout compte fait j'aime le plus...je veux dire : vivre incognito jps (ex MVP HS qui fonce sur le PC de son fils pour renouer avec cette drogue de mpfe dont je ne souhaiterais vraiment pas que quelque québécois, trop souvent énervé mais pas assez enclin à la tolérance, ait pu être victime d'une overdose)
AV a écrit:
en vba, comment afficher un message dans dans une plage de cellules a1:b10 de la feuille feuil1 si une valeur existe déja ?
Solution 1 : Sélection de la plage A1:B10 > Données > Validation > Options > Autoriser : "Personnalisée > Formule : =NB.SI($A$1:$B$10;A1)=1
Ajuster ensuite les éventuels messages
Solution 2 : Clic droit sur l'onglet de feuille > Visualiser le code > Copier/Coller :
Private Sub Worksheet_Change(ByVal zz As Excel.Range) If Selection.Count > 1 Then Exit Sub If Intersect(zz, [A1:B10]) Is Nothing Or zz = "" Then Exit Sub Set C = [A1:B10].Find(zz(1), zz(1)) If C.Address <> zz(1).Address Then MsgBox "Valeur déjà présente en " _ & C.Address, vbCritical, "Doublon !" Application.EnableEvents = False zz = "": zz.Select Application.EnableEvents = True 'SendKeys "{F2}+{HOME}" 'pour passer en mode édition End If End Sub
AV
sabatier
:-)))))))))))) jps (et une bise à mon soigneur individuel et portatif)
Pierre CFI [mvp] a écrit:
Les ordres sont clairs : Il faut abattre le soldat JPS et tenter de réparer les dégats causés dans le coeur des jolies femmes :o)))
:-))))))))))))
jps (et une bise à mon soigneur individuel et portatif)
Pierre CFI [mvp] a écrit:
Les ordres sont clairs : Il faut abattre le soldat JPS et tenter de réparer les dégats causés dans le coeur des jolies femmes :o)))
:-)))))))))))) jps (et une bise à mon soigneur individuel et portatif)
Pierre CFI [mvp] a écrit:
Les ordres sont clairs : Il faut abattre le soldat JPS et tenter de réparer les dégats causés dans le coeur des jolies femmes :o)))
frédéric legeai
mille merci c'est ok !
"Frédéric LEGEAI" a écrit dans le message de news:cc1n0h$cfd$
bonjour encore encore moi ! une dernière question : en vba, comment afficher un message dans dans une plage de cellules a1:b10 de la feuille feuil1 si une valeur existe déja ?
par exemple si en A1 j'ai "bc", et q'en b9 je tape "bc" alors j'ai le message "Valeur déjà saisie!"
mille mille mercis ;0)
mille merci c'est ok !
"Frédéric LEGEAI" <kikigames@wanadoo.fr> a écrit dans le message de
news:cc1n0h$cfd$1@news-reader5.wanadoo.fr...
bonjour
encore encore moi !
une dernière question :
en vba, comment afficher un message dans dans une plage de cellules a1:b10
de la feuille feuil1 si une valeur existe déja ?
par exemple si en A1 j'ai "bc", et q'en b9 je tape "bc" alors j'ai le
message "Valeur déjà saisie!"
"Frédéric LEGEAI" a écrit dans le message de news:cc1n0h$cfd$
bonjour encore encore moi ! une dernière question : en vba, comment afficher un message dans dans une plage de cellules a1:b10 de la feuille feuil1 si une valeur existe déja ?
par exemple si en A1 j'ai "bc", et q'en b9 je tape "bc" alors j'ai le message "Valeur déjà saisie!"
mille mille mercis ;0)
FxM
Bonjour Ôh Maître es-HS,
en union avec mon ange et l'abominable FxM, je suis sur NN mais jette
Non mais ça va pas ? Déclaration de guerre à 8h28 du matin ... et pis quoi encore ? C'est un peu tôt jeune homme ! On pouvait faire bien des choses en plus du somme ... :o)
Au fait ... pour le NN, ca fait déjà quelques mois que je suis sur Mozilla et quelques semaines sur Thunderbird, mais tout cela n'est que détail ... pas assez déprimé pour prendre OE :o)
@+ FxM
Bonjour Ôh Maître es-HS,
en union avec mon ange et l'abominable FxM, je suis sur NN mais jette
Non mais ça va pas ? Déclaration de guerre à 8h28 du matin ... et pis
quoi encore ? C'est un peu tôt jeune homme ! On pouvait faire bien des
choses en plus du somme ... :o)
Au fait ... pour le NN, ca fait déjà quelques mois que je suis sur
Mozilla et quelques semaines sur Thunderbird, mais tout cela n'est que
détail ... pas assez déprimé pour prendre OE :o)
en union avec mon ange et l'abominable FxM, je suis sur NN mais jette
Non mais ça va pas ? Déclaration de guerre à 8h28 du matin ... et pis quoi encore ? C'est un peu tôt jeune homme ! On pouvait faire bien des choses en plus du somme ... :o)
Au fait ... pour le NN, ca fait déjà quelques mois que je suis sur Mozilla et quelques semaines sur Thunderbird, mais tout cela n'est que détail ... pas assez déprimé pour prendre OE :o)