Pb d'adaptation au format

oasis_1

XLDnaute Occasionnel
Bonjour le Forum,

j'utilise une userform pour modifier si il y a besoin un tableau.

le tableau étant trop lourd ci joint les formules vba

Private Sub TextBox4_Change()
TextBox4 = Format(TextBox4.Value, " 0 000.00 " & " €")
End Sub

Private Sub TextBox5_Change()
TextBox5 = Format(TextBox5.Value, " 0 000.00 " & " €")
End Sub

Private Sub TextBox6_Change()
TextBox6 = Format(TextBox6.Value, " 000.00 " & " €")
End Sub


pour que les textbox affiche en €

puis la validation pour enregistrer :

Private Sub Enregistré_Click() 'Bibliothèque
Dim Nb As Integer, Dnb As Integer, i As Integer, Y As String
Dim Element_Select As String
Dnb = Sheets("Semaine").Range("w2").Value
Nb = UserForm18.ListBox1.ListCount
Element_Select = False
Sheets("Semaine").Activate

' TextBox = Format(TextBox.Value, " 0.00 €")
Y = 4 'Sur Feuil2 ligne de départ de la bibli ----> "A3"

'----------- MODIFICATION DES DONNEES EN BIBLI ----------
For i = 0 To Nb - 1
If UserForm18.ListBox1.Selected(i) = True Then
Element_Select = True
Range("b" & i + Y).Value = TextBox2
Range("c" & i + Y).Value = TextBox3
Range("d" & i + Y).Value = TextBox4
Range("e" & i + Y).Value = TextBox5
Range("f" & i + Y).Value = TextBox6
With Range("f" & i + Y)
.HorizontalAlignment = xlHAlignRight
.VerticalAlignment = xlVAlignCenter
With .Font
' .Size = 10
' .Italic = False
'.Bold = False
' .Name = "Arial"
End With
End With
End If
Next
If Element_Select = True Then
For i = 0 To ListBox1.ListCount - 1
ListBox1.Selected(i) = False

TextBox2 = Clear
TextBox3 = Clear
TextBox4 = Clear
TextBox5 = Clear
TextBox6 = Clear
Next i
End If

'------------- AJOUT DE DONNEES EN BIBLI ----------------
If Element_Select = False Then

Range("b" & Dnb + Y).Value = TextBox2
Range("c" & Dnb + Y).Value = TextBox3
Range("d" & Dnb + Y).Value = TextBox4
Range("e" & Dnb + Y).Value = TextBox5
Range("f" & Dnb + Y).Value = TextBox6
With Range("f" & i + Y)
.HorizontalAlignment = xlHAlignRight
.VerticalAlignment = xlVAlignCenter
End With
Dnb = Dnb + 2
ElseIf TextBox2 = "" Then
Dnb = Dnb - 1
For J = 0 To Nb + 4
If "" = Range("b" & J + Y).Value Then 'supprime ligne vide
Range("b" & J + Y).Select
For X = -1 To 2
Range("b" & J + Y).Offset(0, X) = Range("b" & J + Y).Offset(1, X).Value
Range("b" & J + Y).Offset(1, X).Value = Clear
Next
End If
Next
Else
End If

TextBox2 = Clear
TextBox3 = Clear
TextBox4 = Clear
TextBox5 = Clear
TextBox6 = Clear
Call box1
Dnb = Sheets("Semaine").Range("w2").Value
' UserForm1.Label7.Caption = "Quantité Données Bibliothèque : " & dnb
ActiveWorkbook.Save
Sheets("Semaine").Protect
End Sub


Seulement pas tres pratique et je souhaiterai pouvoir intégrer directement dans Private Sub Enregistré .

pour qu'au final en validant les textbox 4,5 et 6 s'affiche sur ma feuille au bon format

merci par avance
 

oasis_1

XLDnaute Occasionnel
Re : Pb d'adaptation au format

Re,

j'ai changé Y As String par Y As Integer et toujours suprimé Sheets(F$).

ça fonctionne

Mais mon seul et énorme problème est que losque j'utilise mon premier Userform pour impacter mes données, ses meme données s'impactes sur les 3 feuilles et lorsque j'éfface à la fin de chaque semaine les données de la feuille semaine, celles des feuille mois et semaine reste.

Donc la semaine suivante quand j'impacte à nouveau des données sur ma feuille semaine elles se rajoute sur les feuilles mois et année.

Et la probleme si je veux faire un correctif par le biais ta macro sa me corrige bien mes 3 feuilles mais sur les feuilles mois et année sa me l'impacte au meme emplacement que sur la feuille semaine m'écrasant les données déjà existante.

Donc la le problème se complique vraiment
 

Roland_M

XLDnaute Barbatruc
Re : Pb d'adaptation au format

bonjour

tu as des problèmes mais je ne suis pas étonné !

tu ne dois pas supprimer Sheets(F$) ! ou alors ça sert à rien que je t'aide !
tu dois rester logique ! tu veux une modif sur les trois feuilles, sur ce je te fais une boucle et toi tu supprimes dans le code !?
à quoi sert la boucle si tu supprimes Sheets(F$) !? et bien ça sert à inscrire trois fois la même chose dans la même feuille et qui rien d'autre que celle active !

le gros problème est que l'on ne comprend pas très bien ce que tu fais !? c'est pas très clair !

personnellement j'ai essayé d'entrer des données avec le premier userform et je n'ai jamais vu rien s'incrire sur la feuille !? à part avec le 2' userf !

ensuite, ce qui est pénible, ce sont ces deux userform et qu'il faut tout taper à la main !

de plus tu devrais n'avoir qu'un seul userform pour toutes les saisies !
et avoir des combobox avec la liste des données déjà existantes sur les feuilles pour que l'on puisse cliquer sur un choix !
et surtout nommer les objet CommandButton18 ça ne veut rien dire !
beaucoup pratique ainsi et le code est illisible !
Exemple : Userform1 c'est mieux UserfSaisiDonnees
Exemple : Userform2 c'est mieux UserfModifDonnees
CommandButton18 c'est mieux ButtonSave ou ButtonImprime
etc... mais des noms significatif svp !

exemple, chaque fois il faut taper: Contrat x ou on ne sais pas trop !? ensuite la date ça peut être: 24/10/2008 ou 24 Octobre 2008 ou 24 Octobre tout court !
tout ça c'est pas n'est très engageant !

d'où la difficuté, malgré ma bonne volonté, de t'aider !

il faudrait déjà expliquer très clairement ce que tu fais globalement !
maintenant ton classeur ne passe plus sur le site même zippé donc ça ne va être facile !
 
Dernière édition:

oasis_1

XLDnaute Occasionnel
Re : Pb d'adaptation au format

Bonjour Roland M,

Ci-joint 2 fichiers qui en réalité n'en font qu'un.

Pour commencer j'impacte à l'aide de mon userform2 dans l'exemple "fichier semaine1" et en cas d'erreur de frappe ou un besoins de modifiation j'utilise l'userform1 dans l'exmple "fichier OasisSemaine"
 

Pièces jointes

  • Semaine1.zip
    47.2 KB · Affichages: 30
  • OasisSemaine.zip
    47.7 KB · Affichages: 24
  • Semaine1.zip
    47.2 KB · Affichages: 28
  • OasisSemaine.zip
    47.7 KB · Affichages: 23
  • Semaine1.zip
    47.2 KB · Affichages: 29
  • OasisSemaine.zip
    47.7 KB · Affichages: 25

Roland_M

XLDnaute Barbatruc
Re : Pb d'adaptation au format

re:

malheureusement, tel que c'est conçu là je ne vois pas très bien comment je pourrais t'aider !
tu as des données dans les feuilles qui te servent de paramètres et je sais très bien à quoi ils servent, tu as des lignes cachées... !?

ce n'est pas que ce soit complexe mais le code que tu as fais est trop compliqué pour s'y retrouver si ce n'est toi même !

on a chacun sa façon de travailler et personnellement je travaille pas ainsi !
tous mes controles sont renommés comme je t'explique plus haut !
sinon c'est incompréhensible dans le code !
il faut sans cesse regarder dans l'userform à quoi ça correspond !
exp: tu as CommandButton14 !? franchement, on se dit c'est qui celui là !?

essaye déjà d'arranger tout ça pour toi t'y retrouver ! quelques exemples:
TextBox2 en TextBoxDate
TextBox3 en TextBoxContrat
TextBox4 en TextBoxPV
TextBox5 en TextBoxRemploi
TextBox3 en TextBoxPP
ComboBox1 en ComboBoxContrats
CommandButton14 en ButtonCorrection
etc... ça c'est tout de suite parlant !

maintenant pour ton problème il te faut revoir tes routines et les séparer
celles qui inscrivent les nouvelles données dans les trois feuilles
celles qui inscrivent les nouvelles données que dans la feuille semaine
pour ne pas avoir le problème que tu as, tout en une routine pour les trois feuilles !

tu voulais que ça "impacte" comme tu dis, dans les trois feuilles
moi je fais pour que ça impacte dans les trois feuilles !
maintenant tu te rends compte que tu n'as pas pensé à séparer semaine mois et année !
conclusion il faut des routines séparées !

désolé et bon courage !
 
Dernière édition:

oasis_1

XLDnaute Occasionnel
Re : Pb d'adaptation au format

Re,

Merci encore, et je pense plus contraignant faire une userform "correction" pour chaque feuilles

Apres avoir corriger la feuille "Semaine" en enregistrant ouvrir une 2ème usurfom correction pour la feuille "Mois" ainsi de suite pour la feuille "Année".

Te remerciant encor e pour ton implication.
 

Discussions similaires

Statistiques des forums

Discussions
312 756
Messages
2 091 760
Membres
105 062
dernier inscrit
Ret78