Bonjour à tous
J'ai sur mon projet plusieurs userform me permettant de mettre à jour les données sur différentes feuille de données, le tout étant exploité sur un feuille contenant les formules EXCEL.
Mon pb est que quelques données au niveau de ma feuille de calcul interagissent entre elles, je dois repasser par certains formulaires pour valider des modifications, se qui génère des erreurs en cas d'oubli, j'avais dans un premier temps résolu mon problème en lançant le formulaire suivant à partir du code de celui modifié. Mais ça ma pose des soucis de boucle sans fin, si 2 formulaires agissent chacun leur tour sur un même résultat.
Je souhaiterais ajouté un ligne de calcul à mon code qui me permette de reporter un résultat de calcul sur une autre fiche et à la même date.
J'espère être compréhensible.
Ci dessous l'extrait de code, les ligne 26-27-28 ne fonctionnent pas.
Merci de votre aide, Joël
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34 Private Sub CmdModifier_Click() ' Modifier Dim Ctrl As Control Dim Colonne As Integer Dim Ligne As Long Dim a As Variant Application.ScreenUpdating = False If Me.CboDate.ListIndex = -1 Then Exit Sub Ligne = Me.CboDate.ListIndex + 4 With Sheets("Data_Ration") For Each Ctrl In Me.Controls Colonne = CInt("0" & Ctrl.Tag) If Colonne > 0 Then .Cells(Ligne, Colonne) = TrouveType(Ctrl) End If Next Ctrl 'Calcul MSI ration initiale .Cells(Ligne, 59) = Sheets("Fiche").Range("Total_Ingestion_MS_Ration_Initiale") + ((Sheets("Fiche").Range("Qté_jour_conc_Indiv_1_R_Initiale") + Sheets("Fiche").Range("Qté_jour_conc_Indiv_2_R_Initiale") + Sheets("Fiche").Range("Qté_jour_conc_Indiv_3_R_Initiale")) / Sheets("Fiche").Range("Nb_Rations_Initiale")) End With 'Calcul cout ration / 1000 L With Sheets("Data_lait") .Cells(Ligne, 26) = Sheets("Fiche").Range("cout_ration_VL_j_Ration_Initiale") * 1000 / Sheets("Fiche").Range("Plréelle") End With Unload Me End Sub
Partager