Delete row MSFlexGrid [Résolu]

Signaler
Messages postés
16
Date d'inscription
mercredi 21 décembre 2005
Statut
Membre
Dernière intervention
17 janvier 2010
-
Messages postés
15
Date d'inscription
mercredi 1 avril 2009
Statut
Membre
Dernière intervention
10 avril 2011
-
Bonjour.

Comment puis-je supprimer une ligne de msflexgrid?

Private Sub del_Click()
On Error GoTo err
If (MsgBox("Confirmer  [" & msI.RemoveItem msI.RowSel.Value & "]?", vbYesNo + vbQuestion, "Del") = vbYes) Then
    
    Call Connect
    mobjrec.SQL = "Delete from CLIENTS where IDClient='" & msI.RemoveItem msI.RowSel.Value & "'"
    mobjrec.RSOpen
    Call Deconnect
    msI.RemoveItem msI.RowSel
End If
GoTo fin
err:
    MsgBox "Tu ne puex pas supprimer[" & msI.RemoveItem msI.RowSel.Value & "], deja utilise", vbInformation, "Erreur"
fin:
End Sub


Merci beacoup!

8 réponses

Messages postés
13280
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
42
salut,

houla c'est quoi ta requête?
REMOVEITEM ne renvoie pas de STRING
et rowsel renvoie un LONG étant la position, pas la valeur de ton ID

et ID est un numérique?
si l'ID est dans la première colonne :
mobjrec.SQL "Delete from CLIENTS where IDClient " & msI.TextMatrix(msI.RowSel, 0) & ";"


et sous le DECONNECT le remove est correct

[hr]
Messages postés
16
Date d'inscription
mercredi 21 décembre 2005
Statut
Membre
Dernière intervention
17 janvier 2010

Salut,

Je donne:

Syntax error Missing operator in querry expresion "IDClient=".

Merci
Messages postés
16
Date d'inscription
mercredi 21 décembre 2005
Statut
Membre
Dernière intervention
17 janvier 2010

Ne pas sélectionner IDClient

Private Sub del_Click()
On Error GoTo err
If CodeClient.Text = "" Then
        MsgBox "Selectez le client!"
    Else
If (MsgBox("Confirmez la Suppression du Client [" & ListC.TextMatrix(ListC.RowSel, 0) & "]?", vbYesNo + vbQuestion, "Suppression") = vbYes) Then    
    Call Connect
    mobjrec.SQL "Delete from CLIENTIS where IDClient" & ListC.TextMatrix(ListC.RowSel, 0) & ";"
    mobjrec.RSOpen
    Call Deconnect
    ListC.RemoveItem ListC.RowSel
End If
End If
GoTo fin
err:
   MsgBox "Tu ne puex pas supprimer[" & ListC.TextMatrix(ListC.RowSel, 0) & "], deja utilise", vbInformation, "Erreur"   
fin:
End Sub


et
Syntax error Missing operator in querry expresion "IDClient=".


Merci
Messages postés
13280
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
42
1) j'ai enlevé les apostrophes en supposant que ID est un numérique, tu n'as pas répondu?... et si c'est un TEXT il faut bien sûr remettre ces apostrophes

2) CLIENTS devient CLIENTIS ??

3) vérifie que le ROWSEL soit toujours valide après le msgbox, au cas où.... (perte de focus, perte de sélection?)
Messages postés
16
Date d'inscription
mercredi 21 décembre 2005
Statut
Membre
Dernière intervention
17 janvier 2010

IDClient est AutoNumber

CLIENTS ne devient pas CLIENTIS ...J'ai écrit mal
IDClient n'est pas visible in msgbox. Affiche:

Confirmez la Suppression du Client []?

rien entre parenthèses

Merci
Messages postés
13280
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
42
donc de quoi tu t'étonnes?
normal d'avoir une erreur SQL si tu essayes de détruire un enregistrement dont l'ID autoincrement est NULL !!

je n'ai pas ta grille sous les yeux et ne sais donc pas dans quelle colonne est ton ID
j'ai bien indiqué :


si l'ID est dans la première colonne :
mobjrec.SQL "Delete from CLIENTS where IDClient " & msI.TextMatrix(msI.RowSel, 0) & ";"


à toi de modifier en fonction des données que tu es le seul à connaître!
Messages postés
16
Date d'inscription
mercredi 21 décembre 2005
Statut
Membre
Dernière intervention
17 janvier 2010

L'ID est dans la première colonne, mais j'obtiens encore l'erreur
J'ai réussi à me donner MsgBox correctement, puis-je obtenir d'erreur

Syntax error Missing operator in querry expression "IDClient=".

Dans le reste tout va bien

Merci
Messages postés
15
Date d'inscription
mercredi 1 avril 2009
Statut
Membre
Dernière intervention
10 avril 2011

salut svp besoin d'aide .
j'affiche tous les patients dans Msflexrid et je veux effacer un seul patient que je le sélctionne moi même :) merci pr votre attention