Formulaire d'insertion de ligne et SORT

Birone

XLDnaute Nouveau
[REGLÉ] Formulaire d'insertion de ligne et SORT

Bonjour le Forum !


Je vous explique le truc, je voudrais asvoir si il était possible de créer un formulaire avec un USERForm ou autre sur la feuille 1 du document joint,qui, après remplissage par l'utilisateur, insére une ligne dans la feuille 2 avec les infos du formulaire et que la ligne se mette à la bonne place (Ordre alphabétiaue de la 1ere colonne).

Par étape la solution idéale donnerait :


1- Sur feuille 1 : Je clique sur un Bouton qui m'ouvre un formulaire. ce formulaire comprend des champs correspondants aux colonnes de la feuille 2.

2- Une fois le formulaire rempli, l'utilisateur clique sur envoyer.

3- La magie opère, une ligne est insérer dans la feuille2, par ordre alphabétique de la colonne Banque.



Je voudrais savoir si, déjà, c'est réalisable ? si oui, pouvez vous m'aider ?


Merci par avance et n'hésitez pas à me demander des renseignements complémentaires.
 

Pièces jointes

  • insertion.xls
    13.5 KB · Affichages: 43
  • insertion.xls
    13.5 KB · Affichages: 47
  • insertion.xls
    13.5 KB · Affichages: 46
Dernière édition:

bqtr

XLDnaute Accro
Re : Formulaire d'insertion de ligne et SORT

Bonsoir Birone

Un exemple en PJ

La macro ne gére que la saisie, l'insertion dans la feuille 2 et le tri Alphabétique.

Si cela te convient, on peut améliorer la chose :
Avertir l'utilisateur si un des champs n'est pas rempli lors de la validation.
Demander aprés la validation si l'on veut continuer la saisie ou pas.

Bonne nuit
 

Pièces jointes

  • insertion.xls
    39 KB · Affichages: 75
  • insertion.xls
    39 KB · Affichages: 78
  • insertion.xls
    39 KB · Affichages: 74

Birone

XLDnaute Nouveau
Re : Formulaire d'insertion de ligne et SORT

Merci Beaucoup pour ta réponse. La macro dans ton fichier en PJ ne marche pas chez moi... J'ai excel 2000 en Anglais (boulot), je sais pas si ça a un lien ou pas.

Concernant les améliorations possibles, il n'y aurait que la confirmation avant insertion qui pourrait m'etre utile, c a d que le formulaire recapitulerai les données et demanderai une confirmation.

Il faudrait également que le champ Banque ne soit pas vide, les autres champs peuvent l'être par contre.


Merci encore.

Edit: Concernant l'erreur du fichier, en fait il semblerait que c la fonction de tri qui ne marche pas, car après avoir validé, il me signale un bug dans la macro mais je vois que les lignes ont quand même été ajoutées à la fin de la liste.
 
Dernière édition:

Birone

XLDnaute Nouveau
Re : Formulaire d'insertion de ligne et SORT

VB me surligne ce passage quand je clique sur Debug :

.Range("A2 : C" & .Range("C65536").End(xlUp).Row).Sort Key1:=.Range("A2"), Order1:=xlAscending, Header:=xlNo, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal

Une idée sur cette erreur ? Je précise que ça me fait l'erreur sur XL2000 mais pas sur 2003.

Merci
 

bqtr

XLDnaute Accro
Re : Formulaire d'insertion de ligne et SORT

Bonsoir,

Je ne sais pas quoi te dire, je suis incapable de te dire si la méthode de tri de Excel 2003 est différente de Excel 2000 !!!!
Sur 2003, le code fonctionne bien.

As tu fais une recherche dans l'aide d'Excel en VBA sur la méthode de tri ?

Il y a des gens ici qui sont sous Excel 2000, peut-être pourront t'ils faire un essai avec le fichier de mon 1er message.

A tout hasard, essaye ce code. il sélectionne la plage à trier avant de faire le tri.

Code:
Private Sub CommandButton2_Click()

Dim lign As Long
Application.ScreenUpdating = False
lign = Sheets("Sheet2").Range("A65536").End(xlUp).Row

With Sheets("Sheet2")
    .Activate
    .Cells(lign + 1, 1) = TextBox1
    .Cells(lign + 1, 2) = TextBox2
    .Cells(lign + 1, 3) = TextBox3
    lign = .Range("A65536").End(xlUp).Row
    .Range("A2:C" & lign).Select
    Selection.Sort Key1:=Range("A2"), Order1:=xlAscending, Header:=xlNo, _
    OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
    DataOption1:=xlSortNormal
End With

Unload Me
Sheets("Sheet1").Activate
Application.ScreenUpdating = True
End Sub
Je suis un peu ennuyé de ne pas pouvoir faire plus pour l'instant.

A+
 
Dernière édition:

Birone

XLDnaute Nouveau
Re : Formulaire d'insertion de ligne et SORT

Ne soit pas ennuyé ;) C'est déjà bien sympa de te pencher sur le problème. J'essayerai ce code demain au boulot et je te tiendrai au courant.

En attendant, si un connaisseur ayant XL 2000 veut se pencher sur le pb, qu'il ne se gène pas ;)


Merci

++
 

bqtr

XLDnaute Accro
Re : Formulaire d'insertion de ligne et SORT

Bonjour tous le monde,

Juste un petit UP, il y a plus de monde qu'en début de nuit :) .

Si quelqu'un avec Excel 2000 pouvait tester le fichier pour voir si ca fonctionne chez lui.
J'ai recherché dans l'aide VBA et sur internet ce matin, mais je n'ai rien trouvé sur une incompatibilité de la méthode de tri "sort" entre Excel 2000 et 2003.

Est-ce dû à la version anglaise d'Excel 2000 ?

Merci pour Birone

Bonne journée
 

Birone

XLDnaute Nouveau
Re : Formulaire d'insertion de ligne et SORT

Rebonjour le forum,

Bon j'ai testé au boulot avec le code que tu as mis ci-dessus et ça fait toujours pareil malheureusement.

Je vais essayer de bidouiller... mais j'avoue que je suis bloqué au boulot du coup... Help si quelqu'un ayant XL 2000 (anglais ou pas), svp, juste essayer le fichier pour tester et me dire si ça marche chez vous, merci bcp
 

Birone

XLDnaute Nouveau
Re : Formulaire d'insertion de ligne et SORT

Rerere le forum :)

Bon, j'ai réussi à faire marcher tout ça !

En fait, étant donné que c'était la fonction de tri qui buggé, et vu que je suis complétement novice, bah j'ai enregistré une macro de tri, je l'ai visualisé dans VB et comparé au code que j'avais. En fait, j'ai supprimé ce qui est en rouge et ça marche :

.Range("A2:C" & .Range("C65536").End(xlUp).Row).Sort Key1:=.Range("A2"), Order1:=xlAscending, Header:=xlNo, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal


Me demandez pas à quoi servait ce qui est en rouge...j'en sais rien lol, tout ce que je sais, c'est que ça insère bien, ça tri bien.


Je pense que nous pouvons donc passer à la suite lol !!!

il n'y aurait que la confirmation avant insertion qui pourrait m'etre utile, c a d que le formulaire recapitulerai les données et demanderai une confirmation.

Il faudrait également que le champ Banque ne soit pas vide, les autres champs peuvent l'être par contre.
 

Birone

XLDnaute Nouveau
Re : Formulaire d'insertion de ligne et SORT

Autre question subsidiaire :

L'insertion marche bien et le tri aussi. Cependant, le quadrillage ne suit pas le mouvement... c a d qu'à la fin du tableau, étant donné qu'1 ligne a été ajoutée, la dernière ligne se retrouve sous le quadrillage. Y'a t-il moyen de faire se decaler le quadrillage ?

Merci
 

bqtr

XLDnaute Accro
Re : Formulaire d'insertion de ligne et SORT

Re,

Pour DataOption1:=xlSortNormal : extrait de l'aide

DataOption1 Argument de type XlSortDataOption facultatif. Indique comment trier le texte dans la clé 1. Cet argument ne peut être utilisé lors du tri de rapports de tableau croisé dynamique.
XlSortDataOption peut être l'une de ces constantes XlSortDataOption. xlSortTextAsNumbers. Traite le texte comme données numériques pour le tri. xlSortNormal par défaut. Trie les données numériques et textuelles séparément.


Maintenant pourquoi ca fonctionne pas sous Excel 2000 GB : Mystère

Dans le fichier, tu as la demande de confirmation avant l'insertion des données dans le formulaire et la vérification que le champ Banque n'est pas vide.
Le quadrillage s'ajoute automatiquement.


Bonne fin de journée

 

Pièces jointes

  • insertion.xls
    46 KB · Affichages: 73
  • insertion.xls
    46 KB · Affichages: 65
  • insertion.xls
    46 KB · Affichages: 70

Birone

XLDnaute Nouveau
Re : Formulaire d'insertion de ligne et SORT

Merci beaucoup bqtr, heureusement que tu étais là car mon sujet n'a pas inspiré grand monde lol :)

Le fichier que tu as fais est parfait et j'ai pu l'adapter au mien sans problème.


Merci encore et bonne soirée !
 

Discussions similaires

Réponses
0
Affichages
267
Réponses
10
Affichages
472

Statistiques des forums

Discussions
312 690
Messages
2 090 976
Membres
104 720
dernier inscrit
drd74