Formulaire de saisie multiple

apt

XLDnaute Impliqué
Bonjour à tous,

Dans un UserForm j'aurais à saisir 5 enregistrements pour une saisie multiple, et chacun est composé de 5 TextBox.

En tout ça fera 25 champs TextBox dans le même UserForm.

Est-ce une bonne idée d'avoir tout cela dans le même formulaire ou peut-on avoir une meilleure alternative (par exemple une DataGrid ... )

Merci.
 

JNP

XLDnaute Barbatruc
Re : Formulaire de saisie multiple

Bonjour Apt :),
Au niveau compatibilité, les TextBox sont à mon avis plus fiable :rolleyes:...
Si tu les numérotes intelligement, tu pourras boucler dessus avec Controls("TextBox" & I) ;)...
Et si tu as besoin que plusieurs réagissent de la même façon, les Modules de Classe t'aideront bien :p...
Bon courage :cool:
 

apt

XLDnaute Impliqué
Re : Formulaire de saisie multiple

:) Bonsoir JNP,

Bonjour Apt :),
Au niveau compatibilité, les TextBox sont à mon avis plus fiable :rolleyes:...
Si tu les numérotes intelligement, tu pourras boucler dessus avec Controls("TextBox" & I) ;)...
Et si tu as besoin que plusieurs réagissent de la même façon, les Modules de Classe t'aideront bien :p...
Bon courage :cool:

Un exemple en PJ, mais ça parait tout moche ... :(

Y a-t-il une solution acceptable pour rendre ce formulaire plus présentable ?
 

Pièces jointes

  • saisie.xls
    42 KB · Affichages: 160
  • saisie.xls
    42 KB · Affichages: 141
  • saisie.xls
    42 KB · Affichages: 146

JNP

XLDnaute Barbatruc
Re : Formulaire de saisie multiple

Re :),
Avec un vrai tableau 2007 par exemple :p...
Soit avec la tabulation, les lignes s'ajoutent automatiquement, soit tu bloques ton tableau à 5 lignes, et par VBA, lorsque la dernière ligne est remplie, tu envoies dans le récap ;)...
Voir PJ :rolleyes:
Bonne suite :cool:
 

Pièces jointes

  • saisie.xlsm
    27.1 KB · Affichages: 160
  • saisie.xlsm
    27.1 KB · Affichages: 148
  • saisie.xlsm
    27.1 KB · Affichages: 150

apt

XLDnaute Impliqué
Re : Formulaire de saisie multiple

Bonsoir JNP,

Je n'ai pas ouvrir la PJ parce qu'elle n'est pas compatible avec Excel 2007.

Et puis il faut que je traites deux cas de saisie :

1 - Parfois je ne dois saisir que deux entrées, celle de la colonne E et la colonne F, dans le cas ou les valeurs des cellules Ax, Bx, Cx, Dx sont déjà remplies (le cas mettre à jour une ligne).

2 - Je dois saisir toute la ligne (de Ax à Fx) parce que la valeur Ax ne s'y trouve pas.

Et tout cela selon que la valeur Ax existe déjà dans le tableau de saisie ou non.

Par exemple en PJ, j'ai les données du tableau de saisie suivantes :

Si je tape 1EE12 et cette valeur existe déjà, tout le reste des données existantes à savoir Tr=T001, Pr=100 et L3=541 s'affiche en ne me laissant que les champs AD et Pt vide pour une éventuelle saisie.

Si je tape 6PP6 et cette valeur n'existe pas, alors tout le reste des champs apparaitra vide.


Voila j'espère avoir bien exposé ma problématique :D
 

Pièces jointes

  • saisie_v1.xls
    28 KB · Affichages: 134
Dernière édition:

JNP

XLDnaute Barbatruc
Re : Formulaire de saisie multiple

Je n'ai pas ouvrir la PJ parce qu'elle n'est pas compatible avec Excel 2007.

Et puis il faut que je traites deux cas de saisie :

1 - Parfois je ne dois saisir que deux entrées, celle de la colonne E et la colonne F, dans le cas ou les valeurs des cellules Ax, Bx, Cx, Dx sont déjà remplies (le cas mettre à jour une ligne).

2 - Je dois saisir toute la ligne (de Ax à Fx) parce que la valeur Ax ne s'y trouve pas.

Et tout cela selon que la valeur Ax existe déjà dans le tableau de saisie ou non.

Voila j'espère avoir bien exposé ma problématique :D
Je viens de recharger le fichier, il ne pose aucun problème, et, jusqu'à preuve du contraire, il n'y a pas d'incompatibilité de fichier à l'ouverture entre 2007 et 2010 (éventuellement, le VBA ne tourne pas et tu perds les rubans personnalisés, mais c'est tout :p...) :rolleyes:
Effectivement, ça change ton problème, car complèter des lignes insuffisamment renseignées, ce n'est plus ce qu'on appelle de la "saise" ;)...
Diificile d'aller plus loin, je pense qu'on manque d'un certain nombre de cas particulier, mais en gros, ton premier fichier semble la meilleure solution (la ListView pose des problème de compatibilité, comme dit précédemment :rolleyes:). Donc en gros, si je comprends bien, cas 1 :
Il te suffit de scanner ta BDD ligne par ligne, et de vérifier si tu as des vides avec
Code:
Application.WorksheetFunction.CountBlank (Range("A" & I & ":F" & I))
ou
Code:
Evaluate("COUNTBLANK(A" & I & ":F" & I)
et en cas de vide, faire une boucle sur les Controls comme indiqué (profites-en pour ajouter des Label dans lesquels tu mettras la ligne concernée, ce sera plus simple pour enregistrer les ajouts :)).
Cas 2 :
Quand la personne clique enregistrer, tu rajoutes en fin de BDD et tu nettoies ton USF.
Pour séparer les 2 types, tu mets un bouton bascule pour que la personne puisse choisir entre traiter la BDD (à chaque enregistrement, tu scannes la suite jusqu'à ce que la BDD soit correctement renseignée), ou saisie pure :p !
Bon courage :cool:
 

apt

XLDnaute Impliqué
Re : Formulaire de saisie multiple

Bonsoir JNP et JB,

Merci JB de ton fichier.

J'aimerais joindre un exemple pour bien éclaircir l'idée qui tourne dans ma tête.

S'il y a des corrections/ajouts à faire quelles soient les bienvenues.

Merci.
 

Pièces jointes

  • saisie_v2.xls
    50 KB · Affichages: 200
Dernière édition:

Discussions similaires

Réponses
93
Affichages
2 K
Réponses
14
Affichages
665

Statistiques des forums

Discussions
312 386
Messages
2 087 848
Membres
103 668
dernier inscrit
Aekhassen