Formule Arrondi.inf en VBA
B
Bonjour à tous
J'ai déja un code vba sur la multiplication simple en vba mais je veux que le résultat soit arrondi en inferieur
Comment le faire Je vais vous montrer mon ancien code dans mon fichier de Gestion de stock .Voir la ligne en bas colorié en Bleu. Je veux le meme résultat de =Arrondi.inf(e4*f4;0)
Sub Ecrire_Entrées()
Dim MesLignes As Integer
Dim MaDate As Date, MaRéférence, MaPièce, MonFournisseur, MesObservations As String
Dim Formule As String, MaQuantité As Single, MonPUHT As Currency
With UF_Entrées
If .Titre.Caption = "Ajouter une Entrée" Then
' AJOUT *******************************************************
ModeLigne = "Ajout"
MaLigne = Range("Entrées").Row + 1
Else
'MODIF *******************************************************
ModeLigne = "Modif"
End If
MaDate = .TB_Date.Value
MaRéférence = .TB_Référence.Value
MaPièce = .CB_Pièce.Value
MaQuantité = .TB_Quantité.Value
MonPUHT = .TB_PUHT.Value
MonFournisseur = .CB_Fournisseur.Value
MesObservations = .TB_Observations.Value
End With
Sheets("Entrées").Activate
Call Déprotéger
If ModeLigne = "Ajout" Then
Application.ScreenUpdating = False
With Sheets("Entrées")
.Rows(MaLigne).Select
Selection.Copy
Selection.Insert Shift:=xlDown
Selection.ClearContents
Application.CutCopyMode = False
End With
End If
With Sheets("Entrées")
'Date (colonne A)
.Range("A" & MaLigne).Value = MaDate
'Référence (colonne B)
.Range("B" & MaLigne).Value = MaRéférence
'Pièce (colonne C)
.Range("C" & MaLigne).Value = MaPièce
'Fournisseur (colonne D)
.Range("D" & MaLigne).Value = MonFournisseur
'Quantité (colonne E)
.Range("E" & MaLigne).Value = MaQuantité
'PUHT (colonne F)
.Range("F" & MaLigne).Value = MonPUHT
'Montant (colonne G)
'=E4*F4
Formule = "=E" & MaLigne & "*F" & MaLigne
.Range("G" & MaLigne).FormulaLocal = Formule
'Observations (colonne H)
.Range("H" & MaLigne).Value = MesObservations
.Range("A" & MaLigne).Select
End With
Sheets("Entrées").Activate
End Sub
J'ai déja un code vba sur la multiplication simple en vba mais je veux que le résultat soit arrondi en inferieur
Comment le faire Je vais vous montrer mon ancien code dans mon fichier de Gestion de stock .Voir la ligne en bas colorié en Bleu. Je veux le meme résultat de =Arrondi.inf(e4*f4;0)
Sub Ecrire_Entrées()
Dim MesLignes As Integer
Dim MaDate As Date, MaRéférence, MaPièce, MonFournisseur, MesObservations As String
Dim Formule As String, MaQuantité As Single, MonPUHT As Currency
With UF_Entrées
If .Titre.Caption = "Ajouter une Entrée" Then
' AJOUT *******************************************************
ModeLigne = "Ajout"
MaLigne = Range("Entrées").Row + 1
Else
'MODIF *******************************************************
ModeLigne = "Modif"
End If
MaDate = .TB_Date.Value
MaRéférence = .TB_Référence.Value
MaPièce = .CB_Pièce.Value
MaQuantité = .TB_Quantité.Value
MonPUHT = .TB_PUHT.Value
MonFournisseur = .CB_Fournisseur.Value
MesObservations = .TB_Observations.Value
End With
Sheets("Entrées").Activate
Call Déprotéger
If ModeLigne = "Ajout" Then
Application.ScreenUpdating = False
With Sheets("Entrées")
.Rows(MaLigne).Select
Selection.Copy
Selection.Insert Shift:=xlDown
Selection.ClearContents
Application.CutCopyMode = False
End With
End If
With Sheets("Entrées")
'Date (colonne A)
.Range("A" & MaLigne).Value = MaDate
'Référence (colonne B)
.Range("B" & MaLigne).Value = MaRéférence
'Pièce (colonne C)
.Range("C" & MaLigne).Value = MaPièce
'Fournisseur (colonne D)
.Range("D" & MaLigne).Value = MonFournisseur
'Quantité (colonne E)
.Range("E" & MaLigne).Value = MaQuantité
'PUHT (colonne F)
.Range("F" & MaLigne).Value = MonPUHT
'Montant (colonne G)
'=E4*F4
Formule = "=E" & MaLigne & "*F" & MaLigne
.Range("G" & MaLigne).FormulaLocal = Formule
'Observations (colonne H)
.Range("H" & MaLigne).Value = MesObservations
.Range("A" & MaLigne).Select
End With
Sheets("Entrées").Activate
End Sub
Invité
Bonjour Bauerjackob et
Je vous invite à lire la charte du forum [A LIRE AVANT DE POSTER]
qui vous aidera dans vos demandes et réponses sur ce forum et notamment :
- Pour plus de lisibilité, utilisez la fonctionnalité </> pour insérer vos codes VBA (et si possible aussi pour vos formules Excel).
La prochaine fois, merci de mettre votre code entre balises, avec le bouton </>
Merci de votre compréhension
Concernant votre problématique, voici comment vous pouvez procéder
Formule = "=ARRONDI.INF(E" & MaLigne & "*F" & MaLigne & ";0)"
.Range("G" & MaLigne).FormulaLocal = FormuleA+