voila mon probl=E8me :
j'ai une table sous access avec 4 champs et des=20
enregistrements (2000).
Les champs contiennent des chiffres dans le d=E9sordre comme=20
suivant :
12 18 73 51
98 42 40 41
35 75 22 10
...
et je voudrai les remettre dans l'ordre par ligne pour=20
arriver =E0 cela :
12 18 73 51 =3D> 12 18 51 73
98 42 40 41 =3D> 40 41 42 98
35 75 22 10 =3D> 10 22 35 75
et ainsi de suite.
Alors j'ai essay=E9 avec des requetes, du vba mais c'est pas=20
mon fort et cela ne marche pas=20
J'ai tout pass=E9 sous excel et grace =E0 une aide de =20
Michdenis j'ai pu y arriver mais je voudrai trouver=20
directement la solution sous Access pour =E9viter trop de=20
manips qui sont source d'erreur
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Eric
"Albert" écrivait news:d1a401c439bf $68a1afa0$:
Bonjour à tous,
voila mon problème : j'ai une table sous access avec 4 champs et des enregistrements (2000). Les champs contiennent des chiffres dans le désordre comme suivant : 12 18 73 51 98 42 40 41 35 75 22 10 ...
et je voudrai les remettre dans l'ordre par ligne pour arriver à cela : 12 18 73 51 => 12 18 51 73 98 42 40 41 => 40 41 42 98 35 75 22 10 => 10 22 35 75 et ainsi de suite.
Alors j'ai essayé avec des requetes, du vba mais c'est pas mon fort et cela ne marche pas J'ai tout passé sous excel et grace à une aide de Michdenis j'ai pu y arriver mais je voudrai trouver directement la solution sous Access pour éviter trop de manips qui sont source d'erreur
si qq'1 peut m'aider
Merci d'avance Albert
Bonjour Albert
Je te donne une solution mais je te préviens que la méthode de tri employée n'est pas la plus performante (Bubble Sort) En supposant que ta table s'appelle Chiffres et a 4 champs
Sub Test() Dim rs As DAO.Recordset, temp As Long, tableau(3) As Long Dim i As Integer, j As Integer Set rs = CurrentDb.OpenRecordset("Chiffres") rs.MoveFirst While Not rs.EOF For i = 0 To 3 tableau(i) = rs(i) Next i For i = 0 To 2 For j = i + 1 To 3 If tableau(i) > tableau(j) Then temp = tableau(i): tableau(i) = tableau(j) tableau(j) = temp End If Next j Next i For i = 0 To 3 rs.Edit rs(i) = tableau(i) rs.Update Next i Debug.Print rs.MoveNext Wend Set rs = Nothing Erase tableau End Sub
voila mon problème :
j'ai une table sous access avec 4 champs et des
enregistrements (2000).
Les champs contiennent des chiffres dans le désordre comme
suivant :
12 18 73 51
98 42 40 41
35 75 22 10
...
et je voudrai les remettre dans l'ordre par ligne pour
arriver à cela :
12 18 73 51 => 12 18 51 73
98 42 40 41 => 40 41 42 98
35 75 22 10 => 10 22 35 75
et ainsi de suite.
Alors j'ai essayé avec des requetes, du vba mais c'est pas
mon fort et cela ne marche pas
J'ai tout passé sous excel et grace à une aide de
Michdenis j'ai pu y arriver mais je voudrai trouver
directement la solution sous Access pour éviter trop de
manips qui sont source d'erreur
si qq'1 peut m'aider
Merci d'avance
Albert
Bonjour Albert
Je te donne une solution mais je te préviens que la méthode de tri
employée n'est pas la plus performante (Bubble Sort)
En supposant que ta table s'appelle Chiffres et a 4 champs
Sub Test()
Dim rs As DAO.Recordset, temp As Long, tableau(3) As Long
Dim i As Integer, j As Integer
Set rs = CurrentDb.OpenRecordset("Chiffres")
rs.MoveFirst
While Not rs.EOF
For i = 0 To 3
tableau(i) = rs(i)
Next i
For i = 0 To 2
For j = i + 1 To 3
If tableau(i) > tableau(j) Then
temp = tableau(i): tableau(i) = tableau(j)
tableau(j) = temp
End If
Next j
Next i
For i = 0 To 3
rs.Edit
rs(i) = tableau(i)
rs.Update
Next i
Debug.Print
rs.MoveNext
Wend
Set rs = Nothing
Erase tableau
End Sub
voila mon problème : j'ai une table sous access avec 4 champs et des enregistrements (2000). Les champs contiennent des chiffres dans le désordre comme suivant : 12 18 73 51 98 42 40 41 35 75 22 10 ...
et je voudrai les remettre dans l'ordre par ligne pour arriver à cela : 12 18 73 51 => 12 18 51 73 98 42 40 41 => 40 41 42 98 35 75 22 10 => 10 22 35 75 et ainsi de suite.
Alors j'ai essayé avec des requetes, du vba mais c'est pas mon fort et cela ne marche pas J'ai tout passé sous excel et grace à une aide de Michdenis j'ai pu y arriver mais je voudrai trouver directement la solution sous Access pour éviter trop de manips qui sont source d'erreur
si qq'1 peut m'aider
Merci d'avance Albert
Bonjour Albert
Je te donne une solution mais je te préviens que la méthode de tri employée n'est pas la plus performante (Bubble Sort) En supposant que ta table s'appelle Chiffres et a 4 champs
Sub Test() Dim rs As DAO.Recordset, temp As Long, tableau(3) As Long Dim i As Integer, j As Integer Set rs = CurrentDb.OpenRecordset("Chiffres") rs.MoveFirst While Not rs.EOF For i = 0 To 3 tableau(i) = rs(i) Next i For i = 0 To 2 For j = i + 1 To 3 If tableau(i) > tableau(j) Then temp = tableau(i): tableau(i) = tableau(j) tableau(j) = temp End If Next j Next i For i = 0 To 3 rs.Edit rs(i) = tableau(i) rs.Update Next i Debug.Print rs.MoveNext Wend Set rs = Nothing Erase tableau End Sub
A+ Eric
Albert
je te remercie mais ce code je le mets ou exactement ? dans un formulaire ?
voila mon problème : j'ai une table sous access avec 4 champs et des enregistrements (2000). Les champs contiennent des chiffres dans le désordre comme
suivant : 12 18 73 51 98 42 40 41 35 75 22 10 ...
et je voudrai les remettre dans l'ordre par ligne pour arriver à cela : 12 18 73 51 => 12 18 51 73 98 42 40 41 => 40 41 42 98 35 75 22 10 => 10 22 35 75 et ainsi de suite.
Alors j'ai essayé avec des requetes, du vba mais c'est pas
mon fort et cela ne marche pas J'ai tout passé sous excel et grace à une aide de Michdenis j'ai pu y arriver mais je voudrai trouver directement la solution sous Access pour éviter trop de manips qui sont source d'erreur
si qq'1 peut m'aider
Merci d'avance Albert
Bonjour Albert
Je te donne une solution mais je te préviens que la méthode de tri
employée n'est pas la plus performante (Bubble Sort) En supposant que ta table s'appelle Chiffres et a 4 champs
Sub Test() Dim rs As DAO.Recordset, temp As Long, tableau(3) As Long
Dim i As Integer, j As Integer Set rs = CurrentDb.OpenRecordset("Chiffres") rs.MoveFirst While Not rs.EOF For i = 0 To 3 tableau(i) = rs(i) Next i For i = 0 To 2 For j = i + 1 To 3 If tableau(i) > tableau(j) Then temp = tableau(i): tableau(i) = tableau(j)
tableau(j) = temp End If Next j Next i For i = 0 To 3 rs.Edit rs(i) = tableau(i) rs.Update Next i Debug.Print rs.MoveNext Wend Set rs = Nothing Erase tableau End Sub
A+ Eric .
je te remercie mais ce code je le mets ou exactement ?
dans un formulaire ?
voila mon problème :
j'ai une table sous access avec 4 champs et des
enregistrements (2000).
Les champs contiennent des chiffres dans le désordre
comme
suivant :
12 18 73 51
98 42 40 41
35 75 22 10
...
et je voudrai les remettre dans l'ordre par ligne pour
arriver à cela :
12 18 73 51 => 12 18 51 73
98 42 40 41 => 40 41 42 98
35 75 22 10 => 10 22 35 75
et ainsi de suite.
Alors j'ai essayé avec des requetes, du vba mais c'est
pas
mon fort et cela ne marche pas
J'ai tout passé sous excel et grace à une aide de
Michdenis j'ai pu y arriver mais je voudrai trouver
directement la solution sous Access pour éviter trop de
manips qui sont source d'erreur
si qq'1 peut m'aider
Merci d'avance
Albert
Bonjour Albert
Je te donne une solution mais je te préviens que la
méthode de tri
employée n'est pas la plus performante (Bubble Sort)
En supposant que ta table s'appelle Chiffres et a 4 champs
Sub Test()
Dim rs As DAO.Recordset, temp As Long, tableau(3) As
Long
Dim i As Integer, j As Integer
Set rs = CurrentDb.OpenRecordset("Chiffres")
rs.MoveFirst
While Not rs.EOF
For i = 0 To 3
tableau(i) = rs(i)
Next i
For i = 0 To 2
For j = i + 1 To 3
If tableau(i) > tableau(j) Then
temp = tableau(i): tableau(i) =
tableau(j)
tableau(j) = temp
End If
Next j
Next i
For i = 0 To 3
rs.Edit
rs(i) = tableau(i)
rs.Update
Next i
Debug.Print
rs.MoveNext
Wend
Set rs = Nothing
Erase tableau
End Sub
voila mon problème : j'ai une table sous access avec 4 champs et des enregistrements (2000). Les champs contiennent des chiffres dans le désordre comme
suivant : 12 18 73 51 98 42 40 41 35 75 22 10 ...
et je voudrai les remettre dans l'ordre par ligne pour arriver à cela : 12 18 73 51 => 12 18 51 73 98 42 40 41 => 40 41 42 98 35 75 22 10 => 10 22 35 75 et ainsi de suite.
Alors j'ai essayé avec des requetes, du vba mais c'est pas
mon fort et cela ne marche pas J'ai tout passé sous excel et grace à une aide de Michdenis j'ai pu y arriver mais je voudrai trouver directement la solution sous Access pour éviter trop de manips qui sont source d'erreur
si qq'1 peut m'aider
Merci d'avance Albert
Bonjour Albert
Je te donne une solution mais je te préviens que la méthode de tri
employée n'est pas la plus performante (Bubble Sort) En supposant que ta table s'appelle Chiffres et a 4 champs
Sub Test() Dim rs As DAO.Recordset, temp As Long, tableau(3) As Long
Dim i As Integer, j As Integer Set rs = CurrentDb.OpenRecordset("Chiffres") rs.MoveFirst While Not rs.EOF For i = 0 To 3 tableau(i) = rs(i) Next i For i = 0 To 2 For j = i + 1 To 3 If tableau(i) > tableau(j) Then temp = tableau(i): tableau(i) = tableau(j)
tableau(j) = temp End If Next j Next i For i = 0 To 3 rs.Edit rs(i) = tableau(i) rs.Update Next i Debug.Print rs.MoveNext Wend Set rs = Nothing Erase tableau End Sub
A+ Eric .
Eric
"Albert" écrivait news:d46c01c439c4 $20f1b060$:
je te remercie mais ce code je le mets ou exactement ? dans un formulaire ?
re,
Je connais pas ton problème exactement car ton traitement a besoin de n'être exécuté qu'une seule fois ou plusieurs ?
Si tu fais un formulaire indépendant avec un bouton, tu mets le code sur l'évènement click du bouton (sans le Sub et End Sub , adaptes le nom de la table)
Private Sub Bouton_Click() ' ici le code End Sub
Maintenant si tu n'en as besoin qu'1 seule fois, tu mets ca dans un module stantard (tu copies tout de Sub à end sub), tu laisses le curseur dans la procedure et tu cliques sur le bouton Executer Sub.
Voila, je peux pas te dire mieux ou alors me faut plus de détails
je te remercie mais ce code je le mets ou exactement ?
dans un formulaire ?
re,
Je connais pas ton problème exactement car ton traitement a besoin de
n'être exécuté qu'une seule fois ou plusieurs ?
Si tu fais un formulaire indépendant avec un bouton, tu mets le code sur
l'évènement click du bouton (sans le Sub et End Sub , adaptes le nom de la
table)
Private Sub Bouton_Click()
' ici le code
End Sub
Maintenant si tu n'en as besoin qu'1 seule fois, tu mets ca dans un module
stantard (tu copies tout de Sub à end sub), tu laisses le curseur dans la
procedure et tu cliques sur le bouton Executer Sub.
Voila, je peux pas te dire mieux ou alors me faut plus de détails
je te remercie mais ce code je le mets ou exactement ? dans un formulaire ?
re,
Je connais pas ton problème exactement car ton traitement a besoin de n'être exécuté qu'une seule fois ou plusieurs ?
Si tu fais un formulaire indépendant avec un bouton, tu mets le code sur l'évènement click du bouton (sans le Sub et End Sub , adaptes le nom de la table)
Private Sub Bouton_Click() ' ici le code End Sub
Maintenant si tu n'en as besoin qu'1 seule fois, tu mets ca dans un module stantard (tu copies tout de Sub à end sub), tu laisses le curseur dans la procedure et tu cliques sur le bouton Executer Sub.
Voila, je peux pas te dire mieux ou alors me faut plus de détails