XL 2010 mettre la valeur d'un inputbox dans une formule

loul03

XLDnaute Occasionnel
Bonjour

j'aimerais que la valeur qui ressort de mon inputbox , correspondant au numéro de facture, vienne s'intégrer directement dans la formule , plutot que de le copier dans une case pour ensuite reprendre cette case dans la formule. on évite une étape

voici ce que j'ai tapé comme code

VB:
 Dim num_facture As Integer
    num_facture = InputBox("Quel est le numéro de la facture dans votre facturier?", "N° de facture")
    Do While Len(num_facture) = 0
    MsgBox "Cette donnée est obligatoire"
    num_facture = InputBox("Quel est le numéro de la facture dans votre facturier?", "N° de facture")
    Loop
    Range("c3").Value = num_facture
    'calcul du numéro de facture
    Range("C4").Select
    ActiveCell.FormulaR1C1 = _
        "=YEAR(RC[5])&""-""&MONTH(RC[5])&""/""&MID(R[-1]C,1,4)"
    'calcul du numéro de facture
    Range("C5").Select
    ActiveCell.FormulaR1C1 = _
        "=YEAR(R[-1]C[5])&""-""&MONTH(R[-1]C[5])&""/""&num_facture"

mais à chaque fois la cellules c3 me met #nom
alors qu'en c5 j'ai bien le bon résultat

par avance je vous en remercie

cdt
loul03
 

Jacky67

XLDnaute Barbatruc
Bonjour,
Avec une date valide en H4
Essaye ceci
VB:
Sub test()
Dim num_facture
  Do
    num_facture = InputBox("Quel est le numéro de la facture dans votre facturier?", "N° de facture")
    If IsNumeric(num_facture) Then Exit Do
     MsgBox "Cette donnée est obligatoire"
   Loop
    Range("C5") = Format([h4], "yyyy-mm/") & Format(num_facture, "0000")
End Sub
 

Jacky67

XLDnaute Barbatruc
bonjour jacky

merci de ton aide

comment faire pour ne pas avoir 0314 pour la facture 314 mais 314 . pour le tri dans les dossiers et la hiérarchie , le 0 me gêne

par avance merci
Re..
Essaye:
VB:
Sub test()
Dim num_facture
Do
  num_facture = InputBox("Quel est le numéro de la facture dans votre facturier?", "N° de facture")
  If IsNumeric(num_facture) Then Exit Do
  MsgBox "Cette donnée est obligatoire"
Loop
With [C5]
  .NumberFormat = "@"
  .Value = Format([h4], "yyyy-mm/") & num_facture
End With
End Sub
** Ps; Si la feuille active n'est pas la feuille de destination , il faudra préciser la feuille.
 
Dernière édition:

Discussions similaires

Statistiques des forums

Discussions
312 195
Messages
2 086 076
Membres
103 111
dernier inscrit
Eric68350