Se connecter / S'enregistrer
Votre question

[VBA] probleme valeur requete

Tags :
  • element
  • Programmation
Dernière réponse : dans Programmation
30 Novembre 2010 17:06:16

Bonsoir,

J'aimerai vérifier par une requete que si mon nom_fic sélectionné dans ma listview est égal à mon nom_fic dans une table alors j'affiche une fenetre sinon MsgBox ("Erreur")

J'ai ce code :

  1. Private Sub CBconvert_Click()
  2. Dim liaison1 As String
  3. 'va chercher le nom_fic selectionné
  4. liaison1 = ListFichiers.SelectedItem.SubItems(1)
  5.  
  6. 'va chercher tout les nom_fic dans la base
  7. requete = "select nom_fic from Liaisons where nom_fic = '" & liaison1 & "'"
  8.  
  9. 'Déclaration du recordset
  10. Set liaison2 = base.OpenRecordset(requete)
  11.  
  12. If liaison2(0) Then
  13. 'Déclaration des requète de selection
  14. Liaisons.Show
  15.  
  16. Else
  17. MsgBox "GOOD!"
  18. End If
  19.  
  20. End Sub


Mais j'ai une erreur "Incompatibilité de type" ! Ca vien de mon " If liaison2(0) Then " je suppose mais je ne vois pas du tout quoi mettre.

Une idée SVP!

Autres pages sur : vba probleme valeur requete

a c 232 L Programmation
30 Novembre 2010 17:18:48

Salut,

C'est parce que tu fais une condition, et donc il s'attend à ce qu'il y a entre If et Then soit un booléen, alors que toi tu lui donnes un élément de Recordset qui n'est pas un booléen.

Au passage, pas sûr qu'il faille utiliser OpenRecordset, tu es dans un fichier access ?
m
0
l
1 Décembre 2010 08:36:29

Non je code sur Excel, mais ma base de données est sur Access. Donc qu'est ce qu'il faut changer ?
m
0
l
1 Décembre 2010 09:31:44

J'ai trouvé :
  1. Private Sub CBconvert_Click()
  2. Dim liaison1 As String
  3. Dim liaison2 As Recordset 'endroit où sont stockés les enregistrements
  4.  
  5. 'va chercher le nom_fic selectionné
  6. liaison1 = ListFichiers.SelectedItem.SubItems(1)
  7.  
  8. 'va chercher tout les nom_fic dans la base
  9. requete = "select count(nom_fic) from Liaisons where nom_fic = '" & liaison1 & "'"
  10.  
  11. 'Déclaration du recordset
  12. Set liaison2 = base.OpenRecordset(requete)
  13.  
  14. If liaison2(0) > 0 Then
  15.  
  16. 'Déclaration des requètes de selection
  17. Liaisons.Show
  18.  
  19. Else
  20. MsgBox "Voulez vous vraiment convertir ce fichier ?", vbYesNo
  21. End If
  22.  
  23. End Sub
m
0
l
Tom's guide dans le monde
  • Allemagne
  • Italie
  • Irlande
  • Royaume Uni
  • Etats Unis
Suivre Tom's Guide
Inscrivez-vous à la Newsletter
  • ajouter à twitter
  • ajouter à facebook
  • ajouter un flux RSS