Vous utilisez un navigateur obsolète. Il se peut que ce site ou d'autres sites Web ne s'affichent pas correctement. Vous devez le mettre à jour ou utiliser un navigateur alternatif.
Bonjour Apt ,
Au niveau compatibilité, les TextBox sont à mon avis plus fiable ...
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 ...
Bon courage
Bonjour Apt ,
Au niveau compatibilité, les TextBox sont à mon avis plus fiable ...
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 ...
Bon courage
Re ,
Avec un vrai tableau 2007 par exemple ...
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
Bonne suite
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.
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.
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 ...)
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 ). 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 !
Bon courage
Ce site utilise des cookies pour personnaliser le contenu, adapter votre expérience et vous garder connecté si vous vous enregistrez.
En continuant à utiliser ce site, vous consentez à notre utilisation de cookies.