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.
Boostez vos compétences Excel avec notre communauté !
Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force.
Apprenez, échangez, progressez – et tout ça gratuitement !
👉 Inscrivez-vous maintenant !
Est-il possible de modifier les lignes dans ma feuille " donnée" en les affichant dans la listbox2 et en saisant les valeurs à modifiées dans les textbox respectif?
Voir plus d'explications dans le fichier joint.
Vous remerçiant par avance de votre aide si précieuse.
Gix.
Personne pour me donner un coup de main ,
Là vraiment j'ai du mal à avancer seul dans ce projet qui n'est même pas pour moi, j'essaye juste de donner un coup de main à une amie qui vient de débuter dans la vie professionelle et qui n'a aucune notions en excel
Eh bien tant pis si vraiment il n'y a personne pour me donner un coup de main mais je ne vous cache pas ma déception. 🙁🙁🙁
Bonne fin de soirée à tous et veuillez excuser mes relances.
Gix.
Merci de m'avoir répondu et de m'offrir ton aide et de ton temps,
Je vais essayer de te résumer;
Lorsque je lance ma USF multipage, je choisi le 2ème onglet " Renouvellement" puis je sélectionne dans mon combobox le n° facture ex: 8,j'obtient alors 3 lignes affichées dans listbox.
Je séléctionne dans listbox en admettant la 1 ère et la 2 ème ligne,
Je saisie alors le N° de facture 10 dans textbox 28 ensuite
je saisie la date 10/05/2007 dans textbox 29
Je saisie la somme de 20 dans textbox 30.
une fois tout saisie et renseigner tout les box
Je clique sur le bouton modifier, en fait ce qu'il me faut:
C'est que la commande du bouton modifier modifie mes 2 lignes sélectionnées d' origine dans la feuille de donnée.
Attention je ne sais pas trop expliquer, j'ai une comlmande dans la page 1 pour incrémenter les dates, autrement dit la nouvelle date saisiedans textbox 29 doit incréménter la nouvelle série.
Ex: 10/05/2007 - 10/05/2008 toujour pour une durée d'un an
J'espère que j'ai été plus explicite pour plus d'info n'hésite pas, je ne sais comment te remercier.
Bonne soirée à tous
Gix.
je viens de tester c'est exactement ce qu'il me fallait comme code à un détail prés , en fait ce qu'il ne se modifie pas c'est l'incrémentation du mois et ça je ne sais pas comment le résoudre pour être plus explicite je te propose d'aller voir dans page nouvelle données bouton ajouter il y a des lignes de code qui excutent cette fonction d'incrémentation.
Autrement dit la nouvelle date que j'ai saisie dans tbox 29 s'incrémente automatiquement pendant 1 an.
Je ne te remercierai jamais assez, encore merci Hervé
Je profite de cette relance car mon ami Hervé n' a pas du voir mon dernier message . 🙂
Je profite également de poser une autre petite question que j'aurai du poser au début mais j'étais tellement préoccupé par cette commande de modif que j'ai complètement zappé
La question est Hervé: Peut-on afficher des données dans ComboRenouvellement dans l'ordre croissant et sans doublons?
J'ai trouvé de nombreux exemples sur XLD mais impossible de les mettre en pratique en ce qui me concerne, je suis trop nul et ça m'énerve...
En pièce jointe ton fichier modifié pour la combobox renouvellement
Il faut que tu m’expliques un peu mieux pour les dates, j’ai pas tout compris.
Je m’autorise à revenir sur l’ensemble de ton code :
1) Tu initialises via cette procédure :
Code:
Private Sub Workbook_Open()
On Error Resume Next
Options.Ini
O5.Select
O5.ScrollArea = "A1"
End Sub
Des variables (worksheet) dès le démarrage du classeur, ceci me parait inutile, en effet, tu peux sûrement le faire seulement au lancement du userform.
Car là, tu utilises de la mémoire vive alors que tu n’es même pas sur d’en avoir besoin, c’est un peu gâché.
2) pour réactualiser l’ userform et surtout ces contrôles, tu utilises une méthode qui me semble barbare et dangereuse :
Code:
Unload Données
With Données.MultiPage1
.Value = 1
End With
Données.Show
Il vaudrait mieux utiliser des sous-routines qui alimentent tes contrôles, puis faire appel à celle-ci lorsque tu veux réactualiser tes contrôles.
C’est ce que j’ai fait pour l’alimentation de la comborenouvellement en créant la sous-routine initcomborenouvellement qui va vider la combobox puis la réinitialiser sans doublons et trié.
Ensuite, il te suffit de faire appel à cette procédure dès que tu en as besoin.
En somme, ce type de code ne devrait être qu’un ensemble de petites routines appelées au gré des besoins.
3) j’ai vu l’utilisation de goto, à éviter. Essaye plutôt par passer par des variables booléenne, sinon ton code va vite ressemblé à un plat de spaghetti comme dirais maître Ti.
4) ce type de declarations : Dim i, x, L As Integer, n’est pas correcte, en effet, seulement la variable L est déclaré comme interger, les autres sont de type variant.
Corrigé : dim i as integer,x as integer, L as integer
5)
Il faut éviter au possible les variables déclarées public, elles sont gourmandes en mémoire, et souvent inutile.
6) et dernier
la longueur de ton code CmdAjouterNewDonnées_Click doit pouvoir etre divisé par 2 ou 3 en utilisant des boucles for to
Voilà, en espérant que ceci te sera utile.
Au plaisir de te lire.
Salut
PS perso : j'ai ecris plus de mot dans ce post que dans l'ensemble de mes interventions depuis 1 an.😛
Re
Tout d'abord je te remercie Hervé encore une fois.
Evidemment tes conseils me sont trés précieux car je procède une drôle de manière pour écrire mes codes .
En fait j'effectue des recherches sur Xld me concernant puis une fois trouvé j'essaye de l'adapter à mes besoins façon bricoleur et sûr qu'on obtient des spaguettis et lorsque ça coince je fais appel au Forum.
J'aimerai bien faire et avoir votre savoir mais hélas j'en suis incapable pour le moment.
Pour en revenir au code CmdAjouterDonnées tu m'as dit que l'on peut diviser cette longueur en 2 ou 3 mais je ne connais pas cette méthode .
Concernant l'utilisation de mémoire je ne me rend pas bien compte car mon PC que j'ai monté moi même possède énorment de mémoire
(2x1024Mo DDR2 Corsaire CM2x 5400C4 )
Donc avec 2 Mo de mémoire je ne rencontre aucun souci.
En ce qui concerne l'incrémerntation qui est le problème car ça ne marche pas, regarde après cette ligne dans commande CmdAjouterDonnées
O1.Range("N"&Li)=CDate(Tbox5.Value) jusqu'à Next intMois
Donc cette fonction incrémente le mois par rappport à la date saisie dans Tbox4 il me faut en fait la même " chose" pour incrémenter les mois par rapport aux dates saisies dans Tbox29 pour les lignes sélectionnées dans ListBox2
Je t'envoie un fichier avec plus de détail car je ne vois plus comment expliquer.
Désole de ma réponse tardive car hier soir , je suis rentré très tard et j'étais fatigué car j'ai même pas eu le courage d'allumer mon PC et de consulter mes messages.
Alors cette fois on y est c'est cette fonction qu'il me fallait pour modifier les lignes et ça marche nickel.
Par contre il s'avère qu'il y a un petit souci concernant la gestion des doublons pour TBox 8 et9 .
Pour mieux t'en rendre compte fait un test entre manuellement ( sans passer par USF ) en mettant le N° 100 dans la colonne K ( N° Sim ) peut importe la ligne l'essentiel c'est d'être dans la colonne .
utilse ensuite USF pour rajouter des données ,saisit ensuite dans TBox 8 la valeur 1 ou 10 , et bien msgbox apparaît en disant que ce numéro est déjà existant pourtant ni le 1 et le 10 n'existent.
Pour le reste ne te prend pas la tête car cette application n'est pas tout à fait finie il me manque encore 3 pages à faire pour en venir à bout de mon projet et j'aurai préféré que tu regarde ça une fois terminé, bien évidemment il ne faut pas que cela te dérange pour l'instant ce n'est pas urgent.
PS: Quelle heureux hasard d'être tous deux dans le secteur du bâtiment en plus tu n'es même pas loin,
Où dans le Nord Isère ?
Si ce n'est pas trop loin et indiscret je serai heureux de t'offrir un verre.
A bientôt et au plaisir de te lire
A+Gix.
- Navigue sans publicité - Accède à Cléa, notre assistante IA experte Excel... et pas que... - Profite de fonctionnalités exclusives Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel. Je deviens Supporter XLD