Bonjour , on peut sélectionner pls enregistrements contigus pour faire une suppression ou un copie colle ds un formulaire.
Existe t'il un moyen en vba de récupérer la clé des enregistrements selectionnes
Merci
Bonjour , on peut sélectionner pls enregistrements contigus pour faire une suppression ou un copie colle ds un formulaire.
Existe t'il un moyen en vba de récupérer la clé des enregistrements selectionnes
Merci
Alors Voila
Code place ds un module appelé recordsel
Soit un formulaire(fTypeSpectacle) avec un bouton pour declencher la recuperation de la cle primaire de chaque enregistrement selectionne dont le code est le suivant:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35 Compare Database Option Explicit Dim MySelTop As Long Dim MySelHeight As Long Dim MySelForm As Form Dim fMouseDown As Integer Function SelRecord(F As Form, MouseEvent As String) Select Case MouseEvent Case "Move" ' Store the form and the form's Sel property settings ' in the MySel variables ONLY if mouse down has not ' occurred. If fMouseDown = True Then Exit Function Set MySelForm = F MySelTop = F.SelTop MySelHeight = F.SelHeight Case "Down" ' Set flag indicating the mouse button has been pushed. fMouseDown = True Case "Up" ' Reset the flag for the next time around. fMouseDown = False End Select End Function Public Sub SelRestore() Debug.Print "got into Restore" ' Restore the form's Sel property settings with the values ' stored in the MySel variables. MySelForm.SelTop = MySelTop MySelForm.SelHeight = MySelHeight End Sub
Le code de la fonction de recuperation par msgbox
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 Sub cmdSelectedCompanyNames_Click() Dim x ' Restore the lost selection. SelRestore ' Enumerate the list of selected company names. x = DisplaySelectedCompanyNames End Sub
Et les 3 codes places sur les evenements up down et move de la souris dans le formulaire
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 Function DisplaySelectedCompanyNames() Dim i As Long Dim F As Form Dim RS As Recordset ' Get the form and its recordset. Set F = Me Set RS = F.RecordsetClone ' Move to the first record in the recordset. RS.MoveFirst ' Move to the first selected record. RS.Move F.SelTop - 1 ' Enumerate the list of selected records presenting ' the CompanyName field in a message box. For i = 1 To F.SelHeight MsgBox RS![idTypeSpectacle] RS.MoveNext Next i End Function
=SelRecord([Formulaire];"down")
=SelRecord([Formulaire];"up")
=SelRecord([Formulaire];"move")
VOILOU!!!!
Maintenant, il s'agit de savoir s 'il vaut mieux gerer les actions de suppression et de copier coller etc par ce biais (fausse multiselection puisque les enrgts doivent etre contigus ou supprimer simplement les selecteurs d enregt (plus de suppression possible par inadvertance)et mettre a la place des cases a cocher ds toutes les tables et gerer "proprement" ces actions???????
Je me demande si la reponse n'est pas deja ds le ton de la question???
Salut membres du forum !
J'ai essayé d'appliquer les 3 codes dans un sous formulaires mais voici mes erreurs:
Je voudrais mieux comprendre
Cordialement.Et les 3 codes places sur les evenements up down et move de la souris dans le formulaire
=SelRecord([Formulaire];"down")
=SelRecord([Formulaire];"up")
=SelRecord([Formulaire];"move")
Je ne Suis Pas un Expert en Programmation
Le savoir est la lumière de l'esprit
Le chemin de la réussite
Les savants sont les héritiers de la science
Qui cherche positivement trouve
Tout ce qui brille n'est pas l'or ou diamant
Mais l'or et le diamant se trouvent avec sagesse, intelligence et effort
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager