Reinitialisation Userform
Résolu/Fermé
GermPeru
Messages postés
172
Date d'inscription
mercredi 7 décembre 2016
Statut
Membre
Dernière intervention
27 mars 2018
-
2 mars 2017 à 16:19
GermPeru Messages postés 172 Date d'inscription mercredi 7 décembre 2016 Statut Membre Dernière intervention 27 mars 2018 - 3 mars 2017 à 15:23
GermPeru Messages postés 172 Date d'inscription mercredi 7 décembre 2016 Statut Membre Dernière intervention 27 mars 2018 - 3 mars 2017 à 15:23
A voir également:
- Reinitialisation Userform
- Reinitialisation pc - Guide
- Apres reinitialisation mon pc ne demarre plus - Guide
- Réinitialisation chromecast - Guide
- Impossible de connecter manette ps4 après réinitialisation - Forum PS4
- Appareil géré par l'administrateur réinitialisation automatique imminente - Forum Autres téléphones & tablettes
6 réponses
GermPeru
Messages postés
172
Date d'inscription
mercredi 7 décembre 2016
Statut
Membre
Dernière intervention
27 mars 2018
Modifié par GermPeru le 2/03/2017 à 17:03
Modifié par GermPeru le 2/03/2017 à 17:03
Le probleme peut venir du fait du point et de la virgule, pb de compatibilité avec le clavier espagnol et excel en anglais... Je dois configurer l´affichage... Mais l´erreurde compatibilité continue ...
thev
Messages postés
1884
Date d'inscription
lundi 7 avril 2008
Statut
Membre
Dernière intervention
17 novembre 2024
691
2 mars 2017 à 19:37
2 mars 2017 à 19:37
Bonjour,
La partie de code fournie n'efface pas les noms mais supprime les contrôles TextBox. Difficile après d'obtenir une valeur pour le contrôle disparu...
La partie de code fournie n'efface pas les noms mais supprime les contrôles TextBox. Difficile après d'obtenir une valeur pour le contrôle disparu...
GermPeru
Messages postés
172
Date d'inscription
mercredi 7 décembre 2016
Statut
Membre
Dernière intervention
27 mars 2018
2 mars 2017 à 19:56
2 mars 2017 à 19:56
Rebonjour Thev,
Lorsque je n´ai pas de reinitialisation de mon userform j´arrive a récuperer mes valeur de mes text box, et faire mes calculs; mais en cas de reinitialisation cela ne fonctionne plus. Je pensais que le probleme venait du fait que j´utilisais deux fois le meme nom.
Ce que je pensais faire cést effacer les noms des controles ou les controles et les reinitialiser avec les nouvelles données.
Je ne sais pas si j´arrive a bien m´expliquer....
Merci pour ton aide Thev
Lorsque je n´ai pas de reinitialisation de mon userform j´arrive a récuperer mes valeur de mes text box, et faire mes calculs; mais en cas de reinitialisation cela ne fonctionne plus. Je pensais que le probleme venait du fait que j´utilisais deux fois le meme nom.
Ce que je pensais faire cést effacer les noms des controles ou les controles et les reinitialiser avec les nouvelles données.
Je ne sais pas si j´arrive a bien m´expliquer....
Merci pour ton aide Thev
thev
Messages postés
1884
Date d'inscription
lundi 7 avril 2008
Statut
Membre
Dernière intervention
17 novembre 2024
691
2 mars 2017 à 20:38
2 mars 2017 à 20:38
Bonsoir,
A priori, si ton UserForm est réinitialisé, cela signifie que tu as passé au préalable une instruction du type : "Unload USFEt" et donc supprimé les contrôles "TextBox" créés dynamiquement.
Une instruction du type "USFEt.Hide" masquera ton formulaire tout en conservant les données.
A priori, si ton UserForm est réinitialisé, cela signifie que tu as passé au préalable une instruction du type : "Unload USFEt" et donc supprimé les contrôles "TextBox" créés dynamiquement.
Une instruction du type "USFEt.Hide" masquera ton formulaire tout en conservant les données.
GermPeru
Messages postés
172
Date d'inscription
mercredi 7 décembre 2016
Statut
Membre
Dernière intervention
27 mars 2018
2 mars 2017 à 20:53
2 mars 2017 à 20:53
Justement non je ne peux pas le unloader, car en ce cas est supprimé la feuille source.
Dans ma conception cést: lútilisateur rentre un N°, ce N° correnpond a un tableau excel dans une base données, je charge les données dans une nouvelle feuille de mon classeur. Mon usf travail a partir de ces données nouvellement chargées et quand je ferme mon usf je supprime cette feuille. Je ne sais pas si c´est la conception est bonne... car maintenant je suis un peu bloquer car j´ai une nouvelle contrainte qui est que lútilisateur peut rajouter des données dans la feuilles et donc je dois réinitialiser mon USF sans le unloader....
Je pensais aussi le unloader mais peut pas selon ma conception. Je pensais quíl existait peut etre une parade pour effacer les données sans unloader? Car je pense que vient de la mon erreur...
Dans ma conception cést: lútilisateur rentre un N°, ce N° correnpond a un tableau excel dans une base données, je charge les données dans une nouvelle feuille de mon classeur. Mon usf travail a partir de ces données nouvellement chargées et quand je ferme mon usf je supprime cette feuille. Je ne sais pas si c´est la conception est bonne... car maintenant je suis un peu bloquer car j´ai une nouvelle contrainte qui est que lútilisateur peut rajouter des données dans la feuilles et donc je dois réinitialiser mon USF sans le unloader....
Je pensais aussi le unloader mais peut pas selon ma conception. Je pensais quíl existait peut etre une parade pour effacer les données sans unloader? Car je pense que vient de la mon erreur...
thev
Messages postés
1884
Date d'inscription
lundi 7 avril 2008
Statut
Membre
Dernière intervention
17 novembre 2024
691
2 mars 2017 à 21:55
2 mars 2017 à 21:55
L'utilisation classique d'un formulaire, c'est de saisir ou mettre à jour des données qui restent stockées dans une feuille.
Ce que tu as l'air de dire, c 'est que la feuille contenant les données présentes dans ton formulaire, est supprimée après fermeture ou masquage du formulaire.
Je pense qu'un exemple matérialisé par un classeur joint, serait nécessaire pour illustrer ton propos.
Ce que tu as l'air de dire, c 'est que la feuille contenant les données présentes dans ton formulaire, est supprimée après fermeture ou masquage du formulaire.
Je pense qu'un exemple matérialisé par un classeur joint, serait nécessaire pour illustrer ton propos.
GermPeru
Messages postés
172
Date d'inscription
mercredi 7 décembre 2016
Statut
Membre
Dernière intervention
27 mars 2018
Modifié par GermPeru le 2/03/2017 à 22:44
Modifié par GermPeru le 2/03/2017 à 22:44
Je ne peux pas fournir le classeur tel quel, mais je vais essayer détre le plus pertinent possible dans les bouts de code.
Ps: je ne voudrais pas choquer les puristes par mon écriture de code... J´apprends sur le tas et en me confrontant aux problemes
Affichage de mon USF, au travers dúne inputbox pour chercher un code produit et verifier s´il existe
Je consulte une base de données qui me permet de voir si mon code produit existe, dans ce cas je procede a ma maccro Abrir qui va alors copier les données créer unefeuille, coller les données et fermer le fichier originel.
Ensuite a l´initialisation de mon USF:
Maccro init pour la création dynamique de mes txtbox et chkbox, il n ´y a pas de grande pertinence de mettre toutes les txtbox car elles ont chacune des tailles ou specificité particuliere; ce n´est pas la meilleure facon de faire mais a l´epoque je ne connaissais pas le dictionnaire et donc j´ai proceder avec la classe collection... Je tiens a préciser que je ne metrise pas la classe dictionnaire meme si j´ai eu de tres bonnes explications!
Donc a l´initialisation de mon usf je charge les données des txtboxs depuis ma feuille(2). J´ai laissé que le code de 3 txtboxs, une qui charge les données depuis la feuille 2 et les autres que l´utilisateur enregistre. Ceci me permettant de faire des calculs.
Avant ca sur mes chkbox j´ai un evenement dans un module de classe qui est le suivant:
Ce qui permet au final a lútilisateur de copier n fois une certaine ligne de la feuille et de renseigner lui meme certaines données pour les calculs...
Et enfin mes calculs... Alors la c´est du grand free style, je m´en excuse d´avance, ce n´est pas propre mais ca fonctionne ... Je le laisse complet car je suis ouvert a toute forme d´optimisation !!!
Mon message dérreur survient lorsquíl cherche la premiere valeur de ma txtbox frac et que lorsque je suis passé par une réinitialisation de mon usf...
Je ne sais pas si quelquún va lire jusqu´a la fin mais je le felicite pour sa perseverance et sa determination! Et je m´excuse pour le mal de tete que j´ai pu occasionné par mon "style" d´ecriture de code!
Merci pour l´aide, je suis presque a la fin de mon projet et il ne me manque que cette partie pour faire mes essais!
Ps: je ne voudrais pas choquer les puristes par mon écriture de code... J´apprends sur le tas et en me confrontant aux problemes
Affichage de mon USF, au travers dúne inputbox pour chercher un code produit et verifier s´il existe
Sub ShUSFEt() Dim MaRep As String Dim Feuille As Worksheet, i As Integer, Nblignes As Integer MaRep = InputBox("Introduzca N° de lote:", "Impresión etiqueta de dispensación") If MaRep <> "" Then Abrir MaRep If Sheets(2).Name = MaRep Then Nblignes = Application.WorksheetFunction.CountA(Sheets(2).Range("$A:$A")) For i = 2 To Nblignes Cells(i, 1) = "1" Next i USFEt.Show Set Feuille = Nothing End If Else MsgBox "Ingresar N° de lote", vbInformation, "Falta dato" End If End Sub
Je consulte une base de données qui me permet de voir si mon code produit existe, dans ce cas je procede a ma maccro Abrir qui va alors copier les données créer unefeuille, coller les données et fermer le fichier originel.
Sub Abrir(ByRef MaRep As String) Application.ScreenUpdating = False Dim Chemin As String, FichierMaRep As String, FichierActuel As String Dim Classeur As Workbook Chemin = "C:\Users\user\Desktop\lotes\" On Error GoTo NoExiste FichierActuel = ActiveWorkbook.Name FichierMaRep = Chemin & MaRep & ".xls" Workbooks.Open FichierMaRep, 0, False, Password:="Dispensacion" FichierMaRep = ActiveWorkbook.Name Workbooks(FichierMaRep).Sheets(1).Copy After:=Workbooks(FichierActuel).Sheets(1) Workbooks(FichierMaRep).Close False Exit Sub NoExiste: MsgBox " El N° de lote introducido no existe." & Chr(10) & Chr(10) & "Asegurarse que el N° de lote está bien registrado.", vbCritical End Sub
Ensuite a l´initialisation de mon USF:
Private Sub UserForm_Initialize() ' je charge des données .. ' et je creér de manier dynamique mes chkbox au nb de 2 et txt box au nb de 15 au travers de ma maccro init Init End Sub
Maccro init pour la création dynamique de mes txtbox et chkbox, il n ´y a pas de grande pertinence de mettre toutes les txtbox car elles ont chacune des tailles ou specificité particuliere; ce n´est pas la meilleure facon de faire mais a l´epoque je ne connaissais pas le dictionnaire et donc j´ai proceder avec la classe collection... Je tiens a préciser que je ne metrise pas la classe dictionnaire meme si j´ai eu de tres bonnes explications!
Sub Init() Dim Obj As Control Dim Cl As Clase1 Dim i As Integer, Nblignes As Integer Dim ctrlNumBox As Control Nblignes = Application.WorksheetFunction.CountA(Sheets(2).Range("$A:$A")) Set CollectChk = New Collection For i = 2 To Nblignes USFEt.Repaint Set Obj = USFEt.Controls.Add("forms.checkbox.1") With Obj .Name = "ChkA" & i .Left = 7 .Top = 22 * i + 4 .Width = 22 .Height = 16 End With Set Cl = New Clase1 Set Cl.ChkBox = Obj CollectChk.Add Cl Set Obj = USFEt.Controls.Add("forms.checkbox.1") With Obj .Name = "ChkC" & i .Left = 29 .Top = 22 * i + 4 .Width = 22 .Height = 16 If Cells(i, 1) = "0" Then .Value = True .Enabled = False End If End With Set Cl = New Clase1 Set Cl.ChkBox = Obj CollectChk.Add Cl Next i Set CollectTxt = New Collection For i = 2 To Nblignes USFEt.Repaint USFEt.Height = 70 + 22 * i ' 1 N° de lignes ' 6 cantidad practica mat pemiere Set Obj = USFEt.Controls.Add("forms.textbox.1") With Obj .Name = "TxtCantPract" & i .Object.Value = Sheets(2).Range("N" & i) .Left = 493 .Top = 22 * i + 4 .Width = 61 .Height = 16 .TextAlign = fmTextAlignCenter .Enabled = False With .Font .Name = "Tahoma" .Size = 8 End With End With Set Cl = New Clase1 Set Cl.textbox = Obj CollectTxt.Add Cl ' 8 fraccion de chaque mat prim Set Obj = USFEt.Controls.Add("forms.textbox.1") With Obj .Name = "TxtFrac" & i .Left = 592 .Top = 22 * i + 4 .Width = 43 .Height = 16 .BackColor = RGB(180, 205, 205) .Tag = "1" With .Font .Name = "Tahoma" .Size = 8 End With End With Set Cl = New Clase1 Set Cl.textbox = Obj CollectTxt.Add Cl ' 9 selladas de chaque mat prim Set Obj = USFEt.Controls.Add("forms.textbox.1") With Obj .Name = "TxtSellada" & i .Left = 637 .Top = 22 * i + 4 .Width = 49 .Height = 16 .BackColor = RGB(180, 205, 205) .Tag = "1" With .Font .Name = "Tahoma" .Size = 8 End With End With Set Cl = New Clase1 Set Cl.textbox = Obj CollectTxt.Add Cl 'ajout d une derniere txt pour le calcul total des etiquetas If i = Nblignes Then Set Obj = USFEt.Controls.Add("forms.textbox.1") With Obj .Name = "TxtEtTot" .Left = 955 .Top = 22 * (Nblignes + 1) + 4 .Width = 49 .Height = 16 .Visible = False .BackColor = RGB(127, 255, 0) .Tag = "3" .TextAlign = fmTextAlignCenter With .Font .Name = "Tahoma" .Size = 9 End With End With End If 'ajout de l'objet dans la classe Set Cl = New Clase1 Set Cl.textbox = Obj CollectTxt.Add Cl Next i 'limitation valeur numerique de mes txtbox For Each ctrlNumBox In USFEt.Controls If TypeOf ctrlNumBox Is MSForms.textbox Then Select Case ctrlNumBox.Tag Case Is = "1", Is = "2" T = T + 1 ReDim Preserve TNumBox(1 To T) Set TNumBox(T).NumBox = ctrlNumBox End Select End If Next ctrlNumBox End Sub
Donc a l´initialisation de mon usf je charge les données des txtboxs depuis ma feuille(2). J´ai laissé que le code de 3 txtboxs, une qui charge les données depuis la feuille 2 et les autres que l´utilisateur enregistre. Ceci me permettant de faire des calculs.
Avant ca sur mes chkbox j´ai un evenement dans un module de classe qui est le suivant:
With ChkBox For i = 2 To Nblignes If .Name Like "ChkC" & i Then If .Value = True Then On Error GoTo ValeurNum StrRep = InputBox("Nombre de fraccionamiento?", "Caso de fracionamiento irregular") If StrRep > 1 Then CantTher = Cells(i, 13) Cells(i, 1).EntireRow.Copy For j = 1 To StrRep Cells(Nblignes + j, 1).EntireRow.Select ActiveCell.PasteSpecial (xlPasteValuesAndNumberFormats) CtFrac = InputBox("Cantidad del primer fracionamiento" & Chr(10) & Cells(Nblignes + j, 10), "Caso de fracionamiento irregular") Cells(Nblignes + j, 14) = CtFrac Next j Cells(i, 1).EntireRow.Delete Application.ScreenUpdating = False ' a cet endroit j' ai essayé de effacer les noms de mes anciennes txtbox anavant de rappeler la nouvelle initialisation de mon USF.... Init End If End If End If Next i End With Exit Sub ValeurNum: MsgBox "Solemente se puede ingresar cifras superior a 0", vbInformation, "Mensaje informmativo"
Ce qui permet au final a lútilisateur de copier n fois une certaine ligne de la feuille et de renseigner lui meme certaines données pour les calculs...
Et enfin mes calculs... Alors la c´est du grand free style, je m´en excuse d´avance, ce n´est pas propre mais ca fonctionne ... Je le laisse complet car je suis ouvert a toute forme d´optimisation !!!
Mon message dérreur survient lorsquíl cherche la premiere valeur de ma txtbox frac et que lorsque je suis passé par une réinitialisation de mon usf...
Private Sub CmdCalc_Click() Dim i As Integer, Nblignes As Integer Dim Ctrl As Control Dim CT As Double, FraC As Integer, SelL As Double, FracSell As Byte Dim CPR As Double, CPIR As Double Dim FPR As Byte, FPIR As Byte, ET As Byte, ETtot As Byte Dim Compteur As Byte, Verif As Double, VerifTot As Double, VerifTher As Double Dim Reponse As String, PbLlenar As String, PbLlenar2 As String 'On Error GoTo PbLlenar Nblignes = Application.WorksheetFunction.CountA(Sheets(2).Range("$A:$A")) Me.Repaint If ChkMod = False Then 'compteur de clik Range("Y1").Value = Range("Y1").Value + 1 '1er tour de boucle For i = 2 To Nblignes 'On Error GoTo PbLlenar CT = Format(Cells(i, 14), "0.000") If Cells(i, 13).Value = CT Then For Each Ctrl In Me.Controls If Ctrl.Name Like "TxtFrac" & i Then '***************************************************************************' 'mon message dérreur apparait a ce niveu avec msg de pb de 'Les types ne coincide pas FraC = Ctrl.Value '******************************************************** Cells(i, 17).Value = FraC ElseIf Ctrl.Name Like "TxtSellada" & i Then SelL = Ctrl.Value Cells(i, 18).Value = SelL ElseIf Ctrl.Name Like "TxtCantSell" & i Then Cells(i, 19).Value = selladas(CT, FraC, SelL) FracSell = Cells(i, 19).Value Ctrl.Value = FracSell ElseIf Ctrl.Name Like "TxtCantPuchReg" & i Then Cells(i, 20).Value = Format(CantPuchoReg(CT, FraC, FracSell, SelL), "0.000") CPR = Cells(i, 20).Value Ctrl.Value = CPR ElseIf Ctrl.Name Like "TxtCantPuchIReg" & i Then Cells(i, 22).Value = Format(CantPuchoIReg(CT, FraC, SelL), "0.000") CPIR = Cells(i, 22).Value Ctrl.Value = CPIR End If Next Ctrl End If Next '2ieme tour de boucle pour calcul For i = 2 To Nblignes 'On Error GoTo PbLlenar CT = Format(Cells(i, 14), "0.000") If Cells(i, 13).Value = CT Then For Each Ctrl In Me.Controls If Ctrl.Name Like "TxtPuchReg" & i Then Cells(i, 21).Value = FracPuchoReg(Cells(i, 20), Cells(i, 17)) FPR = Cells(i, 21).Value Ctrl.Value = FPR ElseIf Ctrl.Name Like "TxtPuchIReg" & i Then Cells(i, 23) = FracPuchoIReg(Cells(i, 22), Cells(i, 17)) FPIR = Cells(i, 23).Value Ctrl.Value = FPIR End If Next Ctrl End If Next 'condition si le calcul a deja été effectué If Range("Y1").Value > 1 Then Reponse = MsgBox("Desea recalcular?" & Chr(10) & Chr(10) & "En caso de varias fracciones y varios N° de lote del mismo producto, se debe llenar los campos manuelmente", vbYesNo, "Confirmación") If Reponse = vbYes Then For i = 2 To Nblignes ' On Error GoTo PbLlenar2 CT = Format(Cells(i, 14), "0.000") If Cells(i, 13).Value <> CT Then For Each Ctrl In Me.Controls If Ctrl.Name Like "TxtFrac" & i Then If Ctrl.Value <> "" Then Cells(i, 17).Value = Ctrl.Value Else GoTo PbLlenar2 End If ElseIf Ctrl.Name Like "TxtSellada" & i Then If Ctrl.Value <> "" Then Cells(i, 18).Value = Ctrl.Value Else GoTo PbLlenar2 End If ElseIf Ctrl.Name Like "TxtCantSell" & i Then If Ctrl.Value <> "" Then Cells(i, 19).Value = Ctrl.Value Else GoTo PbLlenar2 End If ElseIf Ctrl.Name Like "TxtCantPuchReg" & i Then If Ctrl.Value <> "" Then Cells(i, 20).Value = Ctrl.Value Else GoTo PbLlenar2 End If ElseIf Ctrl.Name Like "TxtPuchReg" & i Then If Ctrl.Value <> "" Then Cells(i, 21).Value = Ctrl.Value Else GoTo PbLlenar2 End If ElseIf Ctrl.Name Like "TxtCantPuchIReg" & i Then If Ctrl.Value <> "" Then Cells(i, 22).Value = Ctrl.Value Else GoTo PbLlenar2 End If ElseIf Ctrl.Name Like "TxtPuchIReg" & i Then If Ctrl.Value <> "" Then Cells(i, 23).Value = Ctrl.Value Else GoTo PbLlenar2 End If End If Next Ctrl End If Next ElseIf Reponse = vbNo Then Exit Sub End If End If For i = 2 To Nblignes 'On Error GoTo PbLlenar CT = Format(Cells(i, 14), "0.000") For Each Ctrl In Me.Controls If Ctrl.Name Like "TxtEt" & i Then 'calcul de la qtté tot d´etiquettes Cells(i, 24).Value = Cells(i, 19) + Cells(i, 21) + Cells(i, 23) ET = Cells(i, 24) Ctrl.Value = ET ETtot = ETtot + ET 'calcul de la somme de poids selon fraccionement Verif = Format(Cells(i, 18) * Cells(i, 19) + Cells(i, 20) * Cells(i, 21) + Cells(i, 22) * Cells(i, 23), "0.000") Cells(i, 25) = Verif 'verif If Cells(i, 14).Value = Cells(i, 25) Then Ctrl.BackColor = RGB(0, 205, 0) Else Ctrl.BackColor = RGB(255, 69, 0) End If VerifTot = VerifTot + Verif 'calcul somme des poids theorique VerifTher = VerifTher + Cells(i, 14) ElseIf Ctrl.Name Like "TxtEtTot" Then Cells(i + 1, 24).Value = ETtot Ctrl.Value = ETtot Cells(i + 1, 25) = VerifTher Cells(i + 1, 26) = VerifTot End If Next Ctrl Next End If For Each Ctrl In Me.Controls Select Case Ctrl.Tag Case Is = "2", Is = "3" Ctrl.Visible = True End Select Next Ctrl Exit Sub PbLlenar2: MsgBox "En caso de varias fracciones y varios N° de lote del mismo producto" & Chr(10) & "Llenar los campos manualmente", 32, "Mensaje Innformativo" Exit Sub PbLlenar: MsgBox "Llenar todos los campos", 16, "Mensaje de error" Exit Sub PbLlenarModA: MsgBox "Modula A no esta bien llenado", 16, "Mensaje de error" End Sub
Je ne sais pas si quelquún va lire jusqu´a la fin mais je le felicite pour sa perseverance et sa determination! Et je m´excuse pour le mal de tete que j´ai pu occasionné par mon "style" d´ecriture de code!
Merci pour l´aide, je suis presque a la fin de mon projet et il ne me manque que cette partie pour faire mes essais!
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
pijaku
Messages postés
12263
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
4 janvier 2024
2 751
3 mars 2017 à 07:57
3 mars 2017 à 07:57
Bonjour,
Je t'avais laissé avec un exemple d'Userform qui utilisais une ListBox multicolonnes plutôt qu'une multitude de textbox créés dynamiquement.
Qu'as tu fait de mon exemple?
Si tu l'avais conservé, il n'y avait rien de plus simple pour vider et remplir tes contrôles.
Je t'avais laissé avec un exemple d'Userform qui utilisais une ListBox multicolonnes plutôt qu'une multitude de textbox créés dynamiquement.
Qu'as tu fait de mon exemple?
Si tu l'avais conservé, il n'y avait rien de plus simple pour vider et remplir tes contrôles.
GermPeru
Messages postés
172
Date d'inscription
mercredi 7 décembre 2016
Statut
Membre
Dernière intervention
27 mars 2018
3 mars 2017 à 13:48
3 mars 2017 à 13:48
Bonjour Pijaku,
Lors de la conception de ma maccro l´utilisateur n´avait la possibilité de changer les valeur dans un cas seulement, maintenant avec ma nouvelle contrainte, l´utilisateur doit pouvoir ajouter ou mdifier les valeurs dans tous les cas . Donc si dans l´heure qui suit je n' arrive a arranger mes problemes. Je vais repartir non pas de zero mais avec la conception listbox; qui me permetra de rajouter/supprimer des lignes sans avoir besoi de réinitialiser le code. Concernant ton code avec list box je l´ai bien sur garder précieusement.
Merci
Lors de la conception de ma maccro l´utilisateur n´avait la possibilité de changer les valeur dans un cas seulement, maintenant avec ma nouvelle contrainte, l´utilisateur doit pouvoir ajouter ou mdifier les valeurs dans tous les cas . Donc si dans l´heure qui suit je n' arrive a arranger mes problemes. Je vais repartir non pas de zero mais avec la conception listbox; qui me permetra de rajouter/supprimer des lignes sans avoir besoi de réinitialiser le code. Concernant ton code avec list box je l´ai bien sur garder précieusement.
Merci
GermPeru
Messages postés
172
Date d'inscription
mercredi 7 décembre 2016
Statut
Membre
Dernière intervention
27 mars 2018
3 mars 2017 à 15:23
3 mars 2017 à 15:23
Je m' avoue vaincu avec les textbox et je repars avec ton idée de listbox et repenser la conception... affichage, impression, calcul.... J´en ai pour un petit moment.
thev
Messages postés
1884
Date d'inscription
lundi 7 avril 2008
Statut
Membre
Dernière intervention
17 novembre 2024
691
Modifié par thev le 3/03/2017 à 13:26
Modifié par thev le 3/03/2017 à 13:26
Bonjour,
'***************************************************************************'
'mon message dérreur apparait a ce niveu avec msg de pb de
'Les types ne coincide pas
FraC = Ctrl.Value
'********************************************************
"Ctr.value" est une TextBox remplie par l'utilisateur. C'est donc a priori du caractère. "FraC" est de type nombre entier. Il faut donc faire une conversion
FraC = Val(Ctrl.Value)
'***************************************************************************'
'mon message dérreur apparait a ce niveu avec msg de pb de
'Les types ne coincide pas
FraC = Ctrl.Value
'********************************************************
"Ctr.value" est une TextBox remplie par l'utilisateur. C'est donc a priori du caractère. "FraC" est de type nombre entier. Il faut donc faire une conversion
FraC = Val(Ctrl.Value)
GermPeru
Messages postés
172
Date d'inscription
mercredi 7 décembre 2016
Statut
Membre
Dernière intervention
27 mars 2018
3 mars 2017 à 13:54
3 mars 2017 à 13:54
Cela ne fonctionne malheureusement dans le cas ou je rajoute des lignes dans mon classeur; je pense que je dois unloader mon usf et le relancer; il y aurait bien la bidouillle de copier les données dans une nouvelle feuille et relancer mon usf depuis cette feuille... Ca fait vraiment bidouille. si je ne trouve pas mieux je vais repenser la conception depuis le debut avec la notion de listbox et non pas de txtbox comme me la suggérer Pijaku....
2 mars 2017 à 18:08
2 mars 2017 à 19:25
J' ai créé une autre sub pour effacer le nom de mes txtbox avant rechargement des données mais j´ai tjs la meme erreur au meme endroit..
Partie du code poour effacer les noms
Partie du code avec erreur:
Je pense aue l´erreur est sur le ctrl.value....mais le pourquoi je ne sais pas....
Un petit coup de main SVP