Renseigner une base de données grace à une macro

Fermé
tourmarc Messages postés 7 Date d'inscription dimanche 16 septembre 2018 Statut Membre Dernière intervention 30 janvier 2019 - 26 sept. 2018 à 16:10
Patrice33740 Messages postés 8556 Date d'inscription dimanche 13 juin 2010 Statut Membre Dernière intervention 2 mars 2023 - 27 sept. 2018 à 13:03
Slt tout le monde!
Jai une base de données que je renseigne grâce à un formulaire
Jusque la lorsque je lance le bouton enregistrer la macro enregistre les données saisies en A2 ; B2; C2 et inserre une nouvelle ligne au dessus .
J aimerais que ce soit le contraire.
Enregistrer les données en A2 ; B2; C2 et passer à la ligne en dessous. Merci

2 réponses

Patrice33740 Messages postés 8556 Date d'inscription dimanche 13 juin 2010 Statut Membre Dernière intervention 2 mars 2023 1 778
26 sept. 2018 à 16:30
Bonjour,

Essaies de mettre un grand miroir face à ton écran pour
qu'on puisse voir à quoi ressemble ton fichier.

Si tu n'as pas de miroir, publies ton code dans ton prochain post (en le balisant).
0
fabien25000 Messages postés 673 Date d'inscription mercredi 5 octobre 2016 Statut Membre Dernière intervention 28 juillet 2022 59
Modifié le 26 sept. 2018 à 17:10
Patrice, tu vas te retrouver avec la photo d'un miroir prise à partir d'une webcam là ..
0
fabien25000 Messages postés 673 Date d'inscription mercredi 5 octobre 2016 Statut Membre Dernière intervention 28 juillet 2022 59
Modifié le 26 sept. 2018 à 17:09
Bonjour

une piste avec ce bout de code
Dim i As long

i = Worksheets("NOM DE LA FEUILLE").Range("A" & Rows.Count).End(xlUp).Row + 1
Worksheets("NOM DE LA FEUILLE").Rows(i).Insert


Edit : correction de la déclaration de la variable i après la remarque justifiée de Patrice
0
Patrice33740 Messages postés 8556 Date d'inscription dimanche 13 juin 2010 Statut Membre Dernière intervention 2 mars 2023 1 778
26 sept. 2018 à 17:04
Pour un numéro de ligne, il est préférable d'écrire :
Dim i As Long
0
fabien25000 Messages postés 673 Date d'inscription mercredi 5 octobre 2016 Statut Membre Dernière intervention 28 juillet 2022 59 > Patrice33740 Messages postés 8556 Date d'inscription dimanche 13 juin 2010 Statut Membre Dernière intervention 2 mars 2023
26 sept. 2018 à 17:14
Très juste, c'est une mauvaise habitude que j'ai pris : mes fichiers ne dépassant jamais 32767 lignes j'économise 2 octets... On m'a appris comme cela
0
Patrice33740 Messages postés 8556 Date d'inscription dimanche 13 juin 2010 Statut Membre Dernière intervention 2 mars 2023 1 778
26 sept. 2018 à 17:47
Les mauvaises habitudes sont très persistantes, c’était déjà plus valable avec Excel 97 ...
0
fabien25000 Messages postés 673 Date d'inscription mercredi 5 octobre 2016 Statut Membre Dernière intervention 28 juillet 2022 59 > Patrice33740 Messages postés 8556 Date d'inscription dimanche 13 juin 2010 Statut Membre Dernière intervention 2 mars 2023
Modifié le 27 sept. 2018 à 08:58
"Les mauvaises habitudes sont très persistantes"
c'est le moins qu'on puisse dire j'ai suivi une formation VBA l'année dernière..
Pour ma culture: qu'est ce qui n'est plus valable? la valeur de 2 octets de integer? la valeur de 4 octets de long?
0
Patrice33740 Messages postés 8556 Date d'inscription dimanche 13 juin 2010 Statut Membre Dernière intervention 2 mars 2023 1 778
Modifié le 27 sept. 2018 à 13:05
Avec Excel 97, le nombre de lignes est passé à 65536 et donc une variable de type Integer, qui représenterait un nombre de ligne indéterminé, est susceptible de produire une erreur d'exécution 6 : Dépassement de capacité.
Pour éviter cela il faut utiliser le type Long (4 octets).
0