Re bonsoir à tous
en annexe ma procédure qui fonctionne trps bien pour la feuille "AnnexeII" maintenant je dois remplir ma feuille "AnnexeV" sous le même système mais avec d'autres conditions
Comment je dois m'y prendre pour que Sa Majesté VBA comprennent ce que j'aimerai de lui:
Procédure actuel qui marche et que je dois garder pour les résultats en AnnexII:
Private Sub CommandButton1_Click()
Dim WB As String, WS As String, WR As String
Dim TheNum As Double
Dim Ligne As Integer
Dim TheBaseBook As Workbook 'DECLARATION DE VARIABLE OBJET WORKBOOK
Set TheBaseBook = ThisWorkbook '<<<<<<<<<< JE DEFINIS LE WORKBOOK DE BASE
With Sheets("Document")
.Activate
.Copy
End With
With ActiveWorkbook.ActiveSheet
.Range("B41") = ComboBox1
.Range("B42") = TextBox3
.Range("B43") = TextBox5
.Range("B46") = TextBox8
.Range("B35") = TextBox9
.Range("C35") = TextBox10
.Range("D35") = TextBox11
.Range("E35") = TextBox12
.Range("B38") = TextBox2
.Range("D23") = Label1
.Range("E23") = Label2
.Range("B55") = TextBox1
.Range("C8") = TextBox17
.Range("C9") = TextBox16
.Range("D9") = TextBox15
If Not IsNumeric(TextBox13) Then Exit Sub
TheNum = TextBox13.Value
With .Range("C23")
.Value = TheNum
.NumberFormat = "#,###,##0.000"
End With
If Not IsNumeric(Label1) Then Exit Sub
TheNum = Label1.Caption
With .Range("D23")
.Value = TheNum
.NumberFormat = "#,###,##0.000"
End With
If Not IsNumeric(Label2) Then Exit Sub
TheNum = Label2.Caption
With .Range("E23")
.Value = TheNum
.NumberFormat = "#,###,##0.000"
End With
End With
Application.Dialogs(xlDialogSaveAs).Show "Document.xls"
With TheBaseBook.Sheets("AnnexeII") 'vu qu'on a deux classeurs à ce moment là...
Ligne = .Range("B65536").End(xlUp).Row + 1
.Range("B" & CStr(Ligne)) = TextBox16
.Range("C" & CStr(Ligne)) = TextBox15
.Range("D" & CStr(Ligne)) = TextBox2
.Range("E" & CStr(Ligne)) = TextBox9
.Range("F" & CStr(Ligne)) = ComboBox1
.Range("G" & CStr(Ligne)) = TextBox3
.Range("H" & CStr(Ligne)) = TextBox8
.Range("I" & CStr(Ligne)) = TextBox5
.Range("O" & CStr(Ligne)) = Label2
.Range("N" & CStr(Ligne)) = Label1
.Range("J" & CStr(Ligne)).NumberFormat = "#,###,###0.000"
.Range("L" & CStr(Ligne)).NumberFormat = "#,###,###0.000"
.Range("N" & CStr(Ligne)).NumberFormat = "#,###,###0.000"
.Range("O" & CStr(Ligne)).NumberFormat = "#,###,###0.000"
.Cells(Ligne, 1) = Ligne - 2
'' Si TextBox14 = 5 alors la valeur du TextBox13 se met en colonne "J" si la valeur
'' du TextBox14 est de "5" ou "10" alors la valuer du TextBox13 se met en "L"
'Merci Didier_mdf forum Excel pour toute son aide
If TextBox14 = 2.5 Then
.Cells(Ligne, 10) = TextBox13
Else
If TextBox14 = "5" Or "10" Then .Cells(Ligne, 12) = TextBox13
End If
End With
End Sub
Ce qui change c'est:
Les données doivent se mettrent en "AnnexeV" si:
TextBox14=1,5 et TextBox9=M alors la valeur TextBox13 .cells(Ligne,10) et si TextBox14=1,5 ( et seulement 1,5) alors TextBox13 .cells (Ligne12)
Donc se sont des conditions supplémentaires et là en faite toute la première partie de la procédure (With TheBaseBook.Sheets doit suivre
Ok voilà ma demande j'éspère pas trop compliquée à comprendre
un tout grand merci à tous et excellente soirée
Ouin-Ouin