[VBA] Test sur 2 cellules au moment de la modification [résolu]

darkneo

XLDnaute Nouveau
Bonjour,

j'ai une base de formulaire simple et les champs sur lesquels je voudrais effectuer un test sont ceux correspondant à l'adresse.

Lorsque le type de voie et le nom de voie sont renseignés, je veux vérifier si le couple [type voie;nom voie] existe dans la base de données qui est dans la feuille "Voies", sachant que je dois également récupérer le code de la Voie dans la feuille "Type Voie utile".

Mon principal problème est l'instruction qui me permettrait de lancer le test au moment de la saisie du nom de voie.

Code:
[Au moment où D7 et E7 sont remplis]
Dim typeVoie As String, nomVoie As String, Dim test As Boolean
typeVoie = cells(7,4).Value
nomVoie = cells(7,5).Value
test = False

Sheets("Type Voie utile").Select
For i = 2 to 30
  If typeVoie = cells(i,2).value Then
    typeVoie = cells(i,2).value
    Exit For
  End If
Next

Sheets("Voies utile").Select
lastRow = Range("B65536").End(xlup).row 'Derniere ligne remplie
For i = 2 to lastRow
  If nomVoie = cells(i,1).value And typeVoie = cells(i,5).Value Then
    test = True
    Exit For
  End If
Next

if test = False Then
  MsgBox("L'adresse n'existe pas")
End If
 

Pièces jointes

  • Formulaire test2.xlsm
    24.2 KB · Affichages: 46
  • Formulaire test2.xlsm
    24.2 KB · Affichages: 36
  • Formulaire test2.xlsm
    24.2 KB · Affichages: 47
Dernière édition:
C

Compte Supprimé 979

Guest
Re : [VBA] Test sur 2 cellules au moment de la modification

Bonjour Darkneo

Mon principal problème est l'instruction qui me permettrait de lancer le test au moment de la saisie du nom de voie.
Cela s'appelle un évènement et tu as la possibilité de le coder dans la feuille elle même

Code:
Private Sub Worksheet_Change(ByVal Target As Range)[/cocde]
Tu as d'ailleurs un code dans cette partie

A+
 

darkneo

XLDnaute Nouveau
Re : [VBA] Test sur 2 cellules au moment de la modification

Merci, je pensais qu'il fallait une instruction comme celle de la première macro, je n'avais pas compris que le Worksheet_Change s'exécutait à chaque changement (ce qui est assez bête effectivement..)


En revanche je me retrouve confronté à un autre problème :
la macro que j'écris fonctionne quand elle est exécutée via le bouton macro, mais pas lorsqu'elle est exécutée dans Worksheet_Change.
 

Pièces jointes

  • Formulaire test2.xlsm
    26 KB · Affichages: 55
  • Formulaire test2.xlsm
    26 KB · Affichages: 62
  • Formulaire test2.xlsm
    26 KB · Affichages: 59

Discussions similaires

Statistiques des forums

Discussions
311 709
Messages
2 081 766
Membres
101 815
dernier inscrit
sgep59