Excel10 Ligne vierge de saisie haut tableau

Résolu/Fermé
Marine63 - 5 mars 2012 à 10:37
 Marine63 - 7 mars 2012 à 12:46
Bonjour,

Je suis en train de créer un tableau de saisie de chantiers d'entretien.
Le but est de venir le compléter régulièrement avec de nouveaux chantiers par l'utilisateur.
Je souhaitais savoir s'il était possible d'avoir une ligne blanche en première ligne de tableau qui permet la saisie d'un nouveau chantier. Et qu'après cette saisie, le chantier vient se mettre à la suite du tableau en bas.
Cela éviterai à l'utlisateur de descendre tout en bas du tableau à chaque nouveau chantier...

Merci beaucoup pour les réponses que vous pourrez m'apporter !

Cordialement,
A voir également:

25 réponses

Mike-31 Messages postés 18310 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 29 mars 2024 5 073
5 mars 2012 à 10:46
Salut,

Oui bien sur mais en VBA si tu as quelques notions
0
C'est là qu'est l'os hélas..

Un petit exemple à me donner s'il vous plait Mike-31 !!
0
Mike-31 Messages postés 18310 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 29 mars 2024 5 073
5 mars 2012 à 11:28
Re,

Pour faire simple, si tu veux déplacer les données de la plage A2 à K2 sur la première ligne vide de ton tableau

il faut ouvir le visual clic en même temps les toches Alt et la F11, insérer un module et coller ce code à associer à un bouton

Sub Déplace()
Range("A2:K2").Cut
Range("A65536").End(xlUp)(2, 1).Select
ActiveSheet.Paste
[A2].Select
End Sub
0
hum hum... lol
Bon je crois que c'est un peu compliqué pour moi...
Mais merci quand même!!!

Je vais tenter comme cela, sinon pas grave, nous resterons sur une ancienne méthode !!

Bonne fin de journée !
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Mike-31 Messages postés 18310 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 29 mars 2024 5 073
5 mars 2012 à 11:47
Re,

ne baisse pas les bras comme cela,

on va essayer de faire encore plus simple,
(si tu me donne ta version excel je te donnerai point par point le cheminement
pour créer sur ta feuille un bouton activeX )

Private Sub CommandButton1_Click()
Range("A2:K2").Cut
Range("A65536").End(xlUp)(2, 1).Select
ActiveSheet.Paste
[A2].Select
End Sub

regarde le fichier joint, sur la ligne2 de A2 à K2 tu saisis des données et tu clic sur le bouton

https://www.cjoint.com/?BCflVdQ8cq6
0
Je travaille sur Excel 2010.

Je te rassure, je préfèrerais trouver la solution !! Alors je te suis point par point scrupuleusement. Merci de ^prendre le temps !

j'ai ouvert ton fichier excel...c'est ce que je souhaite !!
0
Mike-31 Messages postés 18310 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 29 mars 2024 5 073
5 mars 2012 à 11:53
Re,

on va avancer doucement

As tu l'onglet Développeur visible au dessus de ton Ruban, il est juste à droite de l'onglet Révision et Affichage
0
Oui je l'ai
0
Mike-31 Messages postés 18310 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 29 mars 2024 5 073
Modifié par Mike-31 le 5/03/2012 à 12:14
Re,

Alors clic sur l'onglet Dévelppeur puis dans le module Contrôles sur Insérer, dans la partie basse de la boite à outils tu verras Activex clic sur le premier (Bouton de commande)

va sur ta feuille et déssine ton bouton puis reviens je t'expliquerai le code
A+
Mike-31

Une période d'échec est un moment rêvé pour semer les graines du savoir.
0
Ok,

je l'ai créé, je vais manger en 3 min et je reviens faire ce que tu m'auras écrit !
Merci !!!
0
Mike-31 Messages postés 18310 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 29 mars 2024 5 073
5 mars 2012 à 13:00
Clic droit sur le bouton et Visualiser le code
sur la feuille Visual tu verras

Private Sub CommandButton1_Click()

End Sub

entre les deux lignes tu colles ce code que tu pourras modifier plus tard

Range("A2:K2").Cut Range("A65536").End(xlUp)(2, 1).Select ActiveSheet.Paste [A2].Select

ce qui donnera

Private Sub CommandButton1_Click()
Range("A2:K2").Cut Range("A65536").End(xlUp)(2, 1).Select ActiveSheet.Paste [A2].Select
End Sub

une fois terminé fais signe
0
ok !

Jusque là je te suis. J'en suis au même résultat.
0
Mike-31 Messages postés 18310 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 29 mars 2024 5 073
5 mars 2012 à 13:19
Dans le dernier post le code s'est mis sur la même ligne, je sais pas pourquoi,

contrôle le il doit être comme cela et si une ligne est en rouge signale le moi

Private Sub CommandButton1_Click()
Range("A2:K2").Cut
Range("A65536").End(xlUp)(2, 1).Select
ActiveSheet.Paste
[A2].Select
End Sub

Tu peux changer le texte du bouton qui actuellement est

CommandButton1
pour cela clic droit sur le bouton et Propriétés
dans la boite de dialogue qui s'ouvre cherche Caption
tu verras en face CommandButton1 efface le et met un titre à ton bouton comme Cliquez pour déplacer

Pour adapter le code, cette ligne
Range("A2:K2").Cut
veut dire cellule de A2 à K2.Couper (il est facile de modifier la plage)

cette ligne
Range("A65536").End(xlUp)(2, 1).Select
sélectionne la cellule A65536.remonte jusqu'à la première cellule non vide
(2,1) redescend d'une ligne pour se positionner sur la cellule vide

cette ligne
ActiveSheet.Paste correspond à coller

et [A2].Select revient sur la cellule A2

Le système s'est automatiquement mis en mode création à la création du bouton, pour le libérer et tester ton travail, Onglet Développeur/module Contrôle désactive le mode création en un clic.

Tu peux fermer les fenêtres qui seraient restées ouvertes
0
Ok donc j'ai tout fait. et le code était bien sur une ligne à part, pas comme sur ton poste (bizarre)...

Alors J'ai 2 petits problèmes :

1/ serait-il possible de conserver la mise en page de la ligne une fois que la confirmation de l'enregistrement a été faite? Je m'explique, quand j'appuie sur le boutton, ca me transfert bien la ligne en dessous, malheureusement dans ma ligne de "saisie" j'ai des listes déroulantes que ça me coupe aussi !

2/On ne peut pas revenir en arrière après avoir validé l'enregistrement?

Et ça m'a mis un débogage sur la ligne code "ActiveSheet.Paste".

Voilà, je suis désolée de t'embêter avec cela !!! Mais je trouve cette fonction super alors j'aimerais bien que cela marche !!
0
Mike-31 Messages postés 18310 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 29 mars 2024 5 073
5 mars 2012 à 13:43
Ce n'est pas un problème, je vais t'écrire un autre code qui copiera et collera simplement les valeurs afin de ne pas toucher aux mise en forme de la ligne cible mais là je suis pris par le temps je reviens dans l'après midi
0
Pas de soucis, je comprends. Je le garde de côté.
Merci beaucoup
0
Mike-31 Messages postés 18310 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 29 mars 2024 5 073
5 mars 2012 à 14:15
Re,

maintenant que tu commences à te familiariser, entre ces deux lignes

Private Sub CommandButton1_Click()


End Sub

remplace les lignes de code par ces lignes


Range("A2:K2").Copy
Range("A65536").End(xlUp)(2, 1).PasteSpecial Paste:=xlPasteValues
Application.CutCopyMode = False
Range("A2:K2").ClearContents
[A2].Select

pour avoir

Private Sub CommandButton1_Click()
Range("A2:K2").Copy
Range("A65536").End(xlUp)(2, 1).PasteSpecial Paste:=xlPasteValues
Application.CutCopyMode = False
Range("A2:K2").ClearContents
[A2].Select
End Sub

et dis moi ce qui se passe
0
Yeahhhhh ça marche !!!

Par contre (tu vas finir par me haïr...prochaine question je change de pseudo !!) dans cette ligne de"saisie" j'ai aussi une formule de calcul.... qui s'en va quand la ligne se "copy"...
0
Mike-31 Messages postés 18310 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 29 mars 2024 5 073
5 mars 2012 à 15:55
Si ton fichier ce contient pas de notes confidentielles, peux tu le mettre à notre disposition, si oui clic sur ce lien, puis sur parcourir pour sélectionner ton fichier, puis sur créer le lien.
Un lien sera géné, il suffira de le copier dans un post

https://www.cjoint.com/
0
http://cjoint.com/?BCfqahcOyrz

Voilà !!
Je termine à 16h30 (j'attaque à 7h le matin...) donc je ne réponds plus après cet horaire. Mais j'en prendrais connaissance demain matin !
Merci encore
0
Mike-31 Messages postés 18310 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 29 mars 2024 5 073
5 mars 2012 à 19:54
Re,

En G3 la cellule est en erreur, que veux tu afficher !

dans les lignes au dessous de la ligne 9, tu n'as pas besoin de conserver les formules qui seront effacé par le collage de la ligne 9,

si toutes les cellules de la ligne 9 sont renseignées avant le déplacement de la ligne, il est possible de bloquer le déclenchement du code pour obliger l'utilisateur de mettre une donnée dans chaque cellule

https://www.cjoint.com/?BCft2BMCogT
0