× Aidez la recherche contre le COVID-19 avec votre ordi ! Rejoignez l'équipe PC Astuces Folding@home
 > Tous les forums > Forum Bureautique
 Incrémentation enregistrement dans formulaire BDSujet résolu
Ajouter un message à la discussion
Page : [1] 
Page 1 sur 1
supersaxo7
  Posté le 16/03/2006 @ 14:37 
Aller en bas de la page 
Petit astucien

Coucou c'est coucou voilà, voilà... qui peux me tuyauter dans ce superforum de branchés Excel [idee] j'ai une base de donnée avec un formulaire pour mes enregistrements... je voudrais numéroter mes enregistrements (facile, bien sûr) mais, mais, comment faire pour conserver le numéro d'enregistrement sans avoir besoin d'une formule ?? car bien sûr, avec une formule, lorsque je fais un tri dans le tableau de la base de donnée, le numéro initial reste lié sur la cellule d'enregistrement, alors que les données dans un tri, sont déplacées, et se retrouvent avec un numéro qui n'a plus rien à voir avec celui qui lui avait été attribué, lors de l'enregistrement.... ouf compris tout ça ? [reglement] moi y en a infiniment reconnaissant à cui qui saura
Publicité
galopin01
 Posté le 16/03/2006 à 20:13 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Astucien
boujour, pour une base de données standart (1 ligne d'en-tête de colonne et le premier enregistrement en ligne 2) le N° du prochain enregistrement répond à la formule suivante :[code]Sub Test() i = Cells(65535, 1).End(xlUp).Row MsgBox "N° nouvel enregistrement = " & i End Sub[/code] A+

Modifié par galopin01 le 16/03/2006 20:13
supersaxo7
 Posté le 16/03/2006 à 23:20 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien

bonjour, la réponse reçue est juste, mais ne correspond pas à ma demande qui est sans mal exprimée. aussi, je vous envoie ma question dans un fichier test http://cjoint.com/?dqxod6wXAf je précise que c'est en relation avec une base de donnée Excel, où dans le formulaire de saisie je voudrais (si c'est possible) voir apparaitre le numéro d'enregistrement suivant, qui serait à saisir merci
pat1545
 Posté le 17/03/2006 à 02:12 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien
Salut, N° enregistrement suivant = =NBVAL(Num_Formule) + 1 si j'ai compris Patrick
galopin01
 Posté le 17/03/2006 à 03:00 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Astucien
bonour, désolé, il y a quelque chose qui m'échappe ! A+

Modifié par galopin01 le 17/03/2006 08:06
galopin01
 Posté le 17/03/2006 à 08:04 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Astucien
bonjour, Pour comprendre, il faudrait examiner l'ensemble de ton formulaire et les "processus" (macros) qui vont avec. Le problème avec ce genre de formulaire, c'est que chacun, y fait un peu n'importe quoi, il n'y a pas de standart. Il semble que ton formulaire ne fonctionne qu'en mode "ajout" ? Dans ce cas je ne comprend pas l'incidence du tri ou non-tri de la base de donnée. Cette formule : i = Cells(65535, 1).End(xlUp).Row...te donne un N° "en dur" insensible au tri. De plus, Si le formulaire ne fonctionne qu'en mode ajout je ne vois pas l'intêret d'afficher le N° d'enregistrement dans le formulaire de saisie. Ce N° n'est qu'un pb interne à résoudre par la macro lors de la validation de la saisie : Inutile d'encombrer ton formulaire de données inutiles. Maintenant si tu tiens absolument à mettre ce N° dans ton formulaire... Je suppose que ton formulaire comporte une macro "reset" il suffit de (à la fin du reset) d'écrire :[code]... i = Sheets("TaBD").Cells(65535, 1).End(xlUp).Row Sheets("FRM").Range("C1") = i End Sub[/code]ainsi ton formulaire (FRM) comportera d'emblée le prochain N° de ligne... Ok ?
supersaxo7
 Posté le 17/03/2006 à 08:33 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien

!!!! je n'ai pas le temps de bien formuler mes questions que des réponses arrivent !!! je n'ai pas encore compris tout le sens des propositions de Mr. galopin01... mais je m'y attacherai ce soir.[manger] mais comme j'avais essayé de reformuler mon problème, je lance le sujet quand même ! http://cjoint.com/?driAp6rfrF je sens qu'on approche du but [lol]
galopin01
 Posté le 17/03/2006 à 09:18 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Astucien
Bonjour, On a une conception diamétralement opposée de ce ce qui est "en dur" mais sur le fond mon explication ne varie pas. (selon un usage communément admis "en dur" caractérise une donnée entrée par l'utilisateur ou par programme, mais pas une donnée calculée par formule) Que la base soit triée ou pas n'y change rien : le prochain "i" sera le n° précédent + 1. La seule chose peut être qui pose problème, c'est justement l'existence de cette colonne A (dans ton fichier joint) qui comporte des formules. Je ne fais jamais référence à ta colonne A. Par conséquent mon "i" suis ton enregistrement partout. En fait je me réfère plutôt au formulaire que j'avais déjà... Il convient de modifier ma macro de la manière suivante : i = Sheets("TaBD").Cells(65535, 2).End(xlUp).Row ...de manière à faire référence aux données et non pas à cette colonne A qui "parasite" la question. Nota : Le 2 dans cette formule est la colonne qui sert à calculer le N° de l'enregistrement suivant. Il est important que cette colonne ne contienne aucune formule mais fasse bien référence à des enregistrements existants, sinon en change le 2 en 3 ou 4... A+

Modifié par galopin01 le 17/03/2006 10:09
supersaxo7
 Posté le 19/03/2006 à 15:18 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien

me voilà de retour... [chuchoter] je suis toujours étonné de voir la bienveillance qui vous anime, particulièrement Mr. Golopin01 !!!! Alors, bien sûr que votre formule fonctionne parfaitement... Mais,,, ce que je cherche, ce n'est pas ça... ou plutôt si, mais que cette formule d'incrémentation s'accomplisse à chaque saisie dans le formulaire Excel pour base de donnée... Est-ce possible ??? [question]
Publicité
galopin01
 Posté le 19/03/2006 à 18:16 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Astucien
bonjour, [idee] Un 'tite démo ? [url="http://perso.wanadoo.fr/galopin01/Perso/DemoValidFrm.zip"]ici[/url] A+
supersaxo7
 Posté le 19/03/2006 à 19:48 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien

Mon Dieu, c'est incroyable, c'est magique, c'est SUPER.... BRAVO à Mr. Galopin01, et merci... c'est parfait [merci]
Page : [1] 
Page 1 sur 1

Vous devez être connecté pour poster des messages. Cliquez ici pour vous identifier.

Vous n'avez pas de compte ? Créez-en un gratuitement !


Les bons plans du moment PC Astuces

Tous les Bons Plans
32,63 €Mallette à outils Popoman (97 pièces) à 32,63 € avec le code U4T9FU5X
Valable jusqu'au 28 Septembre

Amazon fait une promotion sur la mallette à outils Popoman (97 pièces) qui passe à 32,63 € au lieu 47 €.  Cette malette contient tous les outils nécessaires pour les réparations à la maison. Pour profiter de l'offre, passez la souris sur le bandeau Message promotionnel sur la page du produit et cliquez sur Appliquer à côté des 32% de remise. Vous pouvez aussi utiliser le code promo U4T9FU5X sur la page de paiement.


> Voir l'offre
74,63 €LEGO Le Bateau Pirate Creator 3 en 1 31109 à 74,63 € livré
Valable jusqu'au 27 Septembre

Amazon Royaume-Uni fait une belle promotion sur le set LEGO Le Bateau Pirate Creator 3 en 1 (référence 31109) qui passe à 60 £. Avec la conversion en euros et la livraison en France, il vous reviendra à 76,63 € livré alors qu'on le trouve ailleurs à partir de 90 € et chez LEGO à 109,99 €. Ce set LEGO Creator 3-en-1 offre au moins 3 expériences de jeu et de construction. Les enfants peuvent construire un bateau pirate puis le transformer en une auberge de pirates ou une terrifiante île au crâne.

Vous pouvez utiliser votre compte Amazon FR sur Amazon UK et il n'y a pas de douane.


> Voir l'offre
87,02 €Set de 10 clés mixtes à cliquet Bosch Professional (8 à 19 mm) à 87,02 € livré
Valable jusqu'au 28 Septembre

Amazon Allemagne fait une promotion sur le set de 10 clés mixtes à cliquet Bosch Professional (8 à 19 mm) à 80,06 € (avec la TVA ajustée). Comptez 6,96 € pour la livraison en France (gratuite en Belgique) soit un total de 87,02 € livré. On trouve le lot ailleurs autour de 115 €. Utilisez votre compte Amazon FR sur Amazon DE. Pas de douane.


> Voir l'offre

Sujets relatifs
[Image dans formulaire ACCESS 2010]
Incapable de faire un enregistrement dans Word 2007
Formulaire dans Excel 2007
Comment inserer bouton ajouter dans formulaire libreoffice
Comment inserer bouton enregistrer dans formulaire libreoffice
Comment inserer bouton envoyer dans formulaire libreoffice
Comment avoir 0 devant les centimes dans un formulaire LibreOffice
Format d'enregistrement Excel dans Open Office 4
Pb bouton ouvrir formulaire sur un enregistrement
calcul dans formulaire
Plus de sujets relatifs à Incrémentation enregistrement dans formulaire BD
 > Tous les forums > Forum Bureautique