Base de données Access - Logiciels - Windows & Software
Marsh Posté le 26-01-2006 à 16:58:34
Salut,
Directement avec une requête Access, je ne vois pas de possibilité.
En revanche, avec un code VBA, ça doit être possible :
As-tu une expérience VBA ?
A+
Horatio
Marsh Posté le 26-01-2006 à 17:02:53
Oui, j'ai fait du VBA mais que pour Excel.
J'avais fait la programmation sous Excel mais je n'ai pas pu continuer en raison la taille de ma base.
La programmation est-elle identique entre Excel et Access?
Marsh Posté le 26-01-2006 à 17:15:19
Re,
Fondamentalement, c'est le même langage VB mais pour chaque logiciel de la suite Office, VBA propose des objets spécifiques.
Par exemple Range est l'objet VBA-Excel qui correspond à une cellule ou une plage de cellule.
L'équivalent VBA-Access serait l'objet Recordset, représentatif d'un ou plusieurs enregistrements.
J'espère que cet indice pourra t'aider.
A+
Horatio
Marsh Posté le 28-01-2006 à 16:18:08
Je n'arrive pas à trouver l'équivalent dans VBA-Access de la formulation VBA-Excel:
If Cells (i+1,2)-Cells(i,1)=1 Then
Cells(i,2)=Cells(i+1,2)
Cells(i+1,2).EntireRow.Delete
End If
Savez-vous s'il est possible d'écrire ce genre de subroutine en Access?
Merci pour votre aide!
Marsh Posté le 29-01-2006 à 21:05:22
Salut,
Oui, c'est possible. Mais pour un début en Access-VBA, tu places la barre très haut !
Voici à quoi ressemblerait le code correspondant à ta moulinette :
|
Je n'ai pas retenu ton idée de suppression d'enregistrement mais préféré copier dans une nouvelle table les données retraitées.
A toi de jouer !
A+
Horatio
Marsh Posté le 02-02-2006 à 13:47:01
Merci Horatio pour ton aide!
J'ai utilisé ton code. Je n'ai pas d'erreurs lors de la compilation. Par contre, le programme ne fait qu'inverser les lignes...
Peut-être sauras-tu d'où vient ce problème?!
Merci encore!
Marsh Posté le 02-02-2006 à 20:02:54
Salut,
Je ne vois pas ce qui pourrait inverser les lignes. Copies le code que tu as fait tourner pour que je l'examine.
A+
Horatio
Marsh Posté le 15-02-2006 à 16:46:27
J'ai réussi à faire tourner le programme pour en finir.
Merci pour ton aide!
Marsh Posté le 26-01-2006 à 16:32:40
Bonjour,
Je débute avec l'utilisation de Access. J'ai une base (1seule table) importante de données à traiter (1million de lignes, 15champs).
Je souhaite faire la différence entre deux lignes de ma base et, suivant le résultat, fusionner les lignes.
Exemple :
Ligne Début Fin Nb jours
1 15/01 18/01 3
2 19/01 24/01 6
Si 19/01-18/01=1 alors je souhaite obtenir une seule ligne :
Ligne Début Fin Nb jours
1 15/01 24/01 9
Je n'ai trouvé dans aucun bouquin ce genre de requêtes. Est-il possible de le faire sous Access, si oui par quel moyen?
Je vous remercie par avance de vos réponses