Formulaire problème de ligne

Bonjour tout le monde,

Je suis entrain d'effectuer des formulaires sous excel 2003 (j'accepte vos réponses sous excel 2007), mais j'ai un problème !

En effet lors de la saisie, tout s'affiche a la ligne 4 (je l'ai bien evidemment décidé) puis j'appuie sur Ok et tout s'enregistre a merveille !

Cependant !! lorsque je veux enregistrer autre chose, il me l'enregistre toujours sur la ligne 4 et donc me remplace l'ancien !

Comment faire ?

Je vous joint mon fichier pour que cela soit plus compréhensible. Mercii

Bonjour

Modifies ta/tes macro(s)

Private Sub CommandButton1_Click()

ocean.Hide

'Insérer en ligne 4 de la feuille clients la saisie
Rows(4).Insert
Message = MsgBox("Votre saisie est bien enregistrée", vbInformation, "Merci")
'Selection.Delete
End Sub
Banzai64 a écrit :

Bonjour

Modifies ta/tes macro(s)

Private Sub CommandButton1_Click()

ocean.Hide

'Insérer en ligne 4 de la feuille clients la saisie
Rows(4).Insert
Message = MsgBox("Votre saisie est bien enregistrée", vbInformation, "Merci")
'Selection.Delete
End Sub

Bonjour Banzai64,

L'erreur se situe sur le code associé au bouton OK ?

As tu un code qui pourrait me faire avancer ?

Merci

Bonjour

jokoo a écrit :

L'erreur se situe sur le code associé au bouton OK ?

D'après ce que j'ai compris de ton code, oui

jokoo a écrit :

As tu un code qui pourrait me faire avancer ?

Avancer ?

Je ne sais pas où tu en es dans ton programme

Personnellement cela m'a surpris cette méthode de sauvegarde (pas l'habitude)

Je suis plus dans le classique, (les contrôles sont recopiés qu'après le Ok) mais bon si cela fonctionne et si pas d'inconvénient

Peut-être pour la modification ou la suppression ?

Bonjour,

Que veux tu dire par modification ou suppression ?

Pour revenir a ce qui me bloque, j'ai vu sur le forum un code qui semblerait être un début de solution. Qui est :

no_ligne = Range("A65536").End(xlUp).Row + 1

Toute les saisis de mon formulaire s'effectue a la ligne 4, car j'ai mis row(4).insert

A quoi correspond Range("A65536") dans le code ci-dessus ?

Merci

Bonjour

jokoo a écrit :

Que veux tu dire par modification ou suppression ?

As tu essayé de modifier ou de supprimer un enregistrement ?

jokoo a écrit :

Pour revenir a ce qui me bloque

T'es toujours bloqué ?

no_ligne = Range("A65536").End(xlUp).Row + 1

Ce code retourne la 1ère ligne vide dans une colonne

Grosso modo

On se positionne sur la dernière cellule de la colonne (A65536) et on remonte (xlUp) jusqu'à trouver soit la ligne 1 ou une ligne non vide, et on rajoute 1 au numéro trouvé (évite d'écrire dans la ligne non vide)

Bonjour,

Oui toujours bloqué ! (je ne suis vraiment pas doué avec excel )

Même en utilisant ce code, ca me renvois toujours à la ligne 4 et ca m'efface donc ma ligne !

Comme ci le row +1 ne fonctionnait pas haha

Merci pour l'explication

Bonjour

Hemm la macro que j'ai posté, je l'avais essayée et elle fonctionnait

Les infos étaient copiées dans la ligne 4, puis celle-ci (suite à l'insertion) décalée vers le bas

Redonnes ton fichier dans lequel tu fais la modification , j'ai peut-être raté quelque chose

Bonjour Banzi64,

Je te remerci de ton aide, tout marche !

Entre temps, j'ai voulu tout insérer à la ligne 5 au lieu de la ligne 4, donc en essayant ton code, les lignes se décalaient à partir de la ligne 5 mais les données s'inscrivaient à la ligne 4 !

J'avais oublié que dans mes textbox j'avais modifié les proprités dans controlsource, indiquant 'AIR ANGOLA'!A4 ...

Sais tu si il existe un moyen que mes nouvelles donnés s'inscrive par orde croissant ? (Selon la colonne B)

Merci

Bonjour

jokoo a écrit :

Sais tu si il existe un moyen que mes nouvelles donnés s'inscrive par orde croissant ? (Selon la colonne B)

Une fois que les données sont enregistrées fais un tri

Bonjour,

Bien pensé, je voulais trop me compliquer la tâche

Rechercher des sujets similaires à "formulaire probleme ligne"