Userforme a terminer

cj welch

XLDnaute Occasionnel
bonjour,

j'ai construit un userform qui se lance par un bouton appellé régul.
Seulement, je n'arrive pas à le terminer car mes connaissances en vba sont faible.

les explications sont sur la feuille

j'aurais besions de vos lumières

merci par avance
 

Pièces jointes

  • Véhicule régul.zip
    45.2 KB · Affichages: 183
  • Véhicule régul.zip
    45.2 KB · Affichages: 183
  • Véhicule régul.zip
    45.2 KB · Affichages: 178

jp14

XLDnaute Barbatruc
Re : Userforme a terminer

Bonsoir

Ci joint le fichier avec des réponses.
J'ai modifié les numéros des TextBox pour pouvoir utiliser des boucles dans le code et de ce fait limiter le nombre de lignes et pour corolaire simplifier la mise au point.

Le code de l'USF est à terminer en rajoutant les appels aux différentes procédures.

A tester

JP
 

Pièces jointes

  • Véhicule régul.zip
    48.7 KB · Affichages: 194
  • Véhicule régul.zip
    48.7 KB · Affichages: 194

cj welch

XLDnaute Occasionnel
Re : Userforme a terminer

salut jp14,

merci d'avoir prie le temps.

En revanche, est il possible que les calculs se façe automatiquement des qu'on remplis les textbox, et quand on appuis sur le bouton valider les info se transfert vers la feuille de calcul aux différents emplacement.

A+
 

jp14

XLDnaute Barbatruc
Re : Userforme a terminer

Bonsoir

salut jp14,

merci d'avoir prie le temps.

En revanche, est il possible que les calculs se façe automatiquement des qu'on remplis les textbox, et quand on appuis sur le bouton valider les info se transfert vers la feuille de calcul aux différents emplacement.

A+
Il suffit de rajouter
Call total(1)
Call total(2)
Call total(3)
Call total(5)

en fin de procédure : Private Sub controlnum(num As Integer)

A tester

JP
 

cj welch

XLDnaute Occasionnel
Re : Userforme a terminer

re,

Pour les additions c'est ok

Par contre, j'aimerais :
- Bloquer la saisie dans les colonnes Total
- Faire le calcul (Colonne réel - colonne déclaré = colonne différence)
- Faire le calcul (colonne différence x % = Colonne Régul)

merci
 

BERRACHED said

XLDnaute Accro
Re : Userforme a terminer

Salut,Cj Weich

pour bloquer la saiser dans les colonne total tu doit juste ajouter dans l'initialize
les codes en gras :

Code:
Private Sub UserForm_Initialize()
[B]Me.TextBox14.Enabled = False
Me.TextBox24.Enabled = False
Me.TextBox34.Enabled = False[/B]

col = "a"
feuille1 = "Commande"
With ComboBox1
    .Clear
    .ColumnCount = 4
    .ColumnWidths = "50;50;0"
    .Style = fmStyleDropDownList '
    .BoundColumn = 1 ' combobox1.text contient le nom
    For Each cellule In Sheets(feuille1).Range(col & "9:" & col & Sheets(feuille1).Range(col & "65536").End(xlUp).Row)
            .AddItem cellule.Value
            .List(.ListCount - 1, 1) = cellule.Offset(0, 1).Value
            .List(.ListCount - 1, 2) = cellule.Row
    Next cellule
End With
End Sub
Cordialement
 

cj welch

XLDnaute Occasionnel
Re : Userforme a terminer

RE,

il y a beaucoup de mieux
il faudrait quand on valide que:
- le total réel dans l'user s'inscrive dans la colonne N de la feuille
- le total déclaré dans l'user s'inscrive dans la colonne M de la feuille
- le total différence dans l'user s'inscrive dans la colonne O de la feuille
- le total régul dans l'user s'inscrive dans la colonne P de la feuille
L'inscription dans les colonnes ci_dessus doit se faire en fonction du nom de la personne

quand on vide l'user est il possible que les 0 n'apparaisse pas ? est il possible d'avoir un alignement des chiffres vers la droite ?

Dans l'attente de te lire

Cordialement

A+
 

BERRACHED said

XLDnaute Accro
Re : Userforme a terminer

Ré,

voila un début de solution il me reste le format a adapter je verrai demain

Cordialement
 

Pièces jointes

  • Véhicule régul.zip
    48.1 KB · Affichages: 158
  • Véhicule régul.zip
    48.1 KB · Affichages: 155
  • Véhicule régul.zip
    48.1 KB · Affichages: 153

BERRACHED said

XLDnaute Accro
Re : Userforme a terminer

Bonjour,Cj Weich

il faut juste changer le code existant par celui ci pour la prise en charge du format du tableau :

Code:
Private Sub Valider_Click()
Dim L As Integer
L = Sheets("Commande").Range("A65536").End(xlUp).Row + 1
With Sheets("Commande")
.Range("A" & L) = Me.ComboBox1.Column(0)
.Range("B" & L) = Me.ComboBox1.Column(1)
.Range("N" & L) = CDbl(Me.TextBox14)
.Range("M" & L) = CDbl(TextBox24)
.Range("O" & L) = CDbl(TextBox34)
.Range("P" & L) = CDbl(TextBox54)
    Rows("09:09").Copy
    Range("A" & L).PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _
    SkipBlanks:=False, Transpose:=False
    Application.CutCopyMode = False
    Range("a1").Select
End With
End Sub

Cordialement
 

Discussions similaires

Réponses
5
Affichages
293