Vérifier range

Bonjour

J'ai défini un range de 8 cellules (B1 à I1)

Chaque cellule contient un chiffre ou est vide

Le code doit inscrire 1 dans la cellule A1 si ce chiffre est absent du range défini ci-dessus.

Sub TestCandidats()

Dim ws As Worksheet

Dim r As Range

Dim cell As Range ' cell within worksheet range

Dim bFound As Boolean ' boolean flag

Dim s As String

Set ws = ThisWorkbook.Worksheets(1)

Set r = ws.Range("B1:I1")

For Each cell In r

bFound = False: s = "1"

[a1] = "1"

Next

End Sub

Malheureusement ça ne fonctionne pas. Le code inscrit 1 même si ce chiffre est présent dans le range. J'ai essayé de mettre un "if...Then" mais sans succès.

J'ai donc besoin d'un petit coup de main. Merci infiniment.

Bonsoir et

Juste une petite question, pourquoi faire ça avec du VBA

@+

Allo

Je veux faire une application qui inscrit les candidats dans les cellules vides d'un sudoku.

Re,

Pas bien compris, mais voici le code

Sub TestCandidats()
  Dim ws As Worksheet
  Dim Cell As Range
  Dim Inc As Integer
  ' Définir les objets et variables
  Set ws = ThisWorkbook.Worksheets("Toto")
  Inc = 0
  ' Parcourir les cellules
  For Each Cell In ws.Range("B1:I1")
    If Cell.Value <> "" Then Inc = Inc + 1
  Next
  ' Vérifier si le total des 8 colonnes est OK
  If Inc = 8 Then ws.Range("A1").Value = 1
  ' Effacer les variables objet
  Set ws = Nothing
End Sub

Ça ne fonctionne pas. Je vais essayer d'être plus clair.

Chacune des cellules du range (B1:I1) contient un chiffre unique ou est vide.

Le code doit inscrire 1 dans la cellule A1 si ce chiffre n'est présent dans aucune cellule du range.

Le code n'inscrit rien si le chiffre 1 est présent dans une cellule du range.

Merci de m'aider.

Re,

Désolé, je ne l'avais pas lu comme ça

Voici le code

Sub TestCandidats()
  Dim ws As Worksheet
  Dim Cell As Range
  Dim bFound As Boolean
  ' Définir les objets et variables
  Set ws = ThisWorkbook.Worksheets("Toto")
  ' Initialiser le FLAG
  bFound = False
  ' Parcourir les cellules
  For Each Cell In ws.Range("B1:I1")
    If Cell.Value = 1 Then bFound = True: Exit For
  Next
  ' Vérifier si le 1 0 2T2 TROUV2
  If bFound = False Then ws.Range("A1").Value = 1
  ' Effacer les variables objet
  Set ws = Nothing
End Sub

A+

Bonjour,

Le code doit inscrire 1 dans la cellule A1 si ce chiffre n'est présent dans aucune cellule du range.

Ce chiffre, quel chiffre ?

Si c'est celui en B1, il y est par la force des choses.

Si c'est le 1 de A1 vraiment pas besoin de macro non plus, quelle que soit la raison, comme dit Bruno.

Ou alors c'est un devoir

eric

Ça ne fonctionne toujours pas. Récapitulons.

Chacune des cellules du range (B1:I1) contient un chiffre ou est vide.

Le code doit inscrire 1 dans la cellule A1 si 1 n'est présent dans aucune cellule du range.

Le code n'inscrit rien si le chiffre 1 est présent dans une ou plusieurs cellules du range.

J'ai essayé avec la méthode "For each" sans succès

J'ai essayé avec la méthode "Find" sans succès.

merci de m'aider.

Re,

Ça ne fonctionne toujours pas. Récapitulons.

Chacune des cellules du range (B1:I1) contient un chiffre ou est vide.

Le code doit inscrire 1 dans la cellule A1 si 1 n'est présent dans aucune cellule du range.

Le code n'inscrit rien si le chiffre 1 est présent dans une ou plusieurs cellules du range.

J'ai essayé avec la méthode "For each" sans succès

Je suppose que tu veux plaisanter

Une petite vidéo vaut mieux que mille mots, regarde si cela ne marche pas

uH5sImcKgWc

PS : Tu aurais mis un fichier au départ, cela aurait été plus simple... non

Ça marche. Mais il fallait préalablement renommer la feuille "Toto" avant d'exécuter le code.

J'imagine cependant qu'on peut le faire avec la méthode Find.

Merci infiniment de Montréal. Si tu as un eBook sur VBA Excel, j'aimerais avoir.

Re,

Ça marche. Mais il fallait préalablement renommer la feuille "Toto" avant d'exécuter le code.

Arfff tu m'as tué

J'imagine cependant qu'on peut le faire avec la méthode Find.

Oui, mais pour moi, c'est bien plus long

Merci infiniment de Montréal. Si tu as un eBook sur VBA Excel, j'aimerais avoir.

De rien "cousin", mais effectivement tu as un grand petit besoin

Pourquoi ne pas commencer par la formation sur ce site

https://www.excel-pratique.com/fr/formation

@+

Rechercher des sujets similaires à "verifier range"