Integré mon VBA Listbox

Bonjour, j'arrive pas a mettre mon listbox sur

Private Sub CommandButton2_Click()
' Variables Objet
Dim Sht As Worksheet, LObj As ListObject
Dim List_nombre As Long
Dim Ligne As Long, Dl As Long
List_nombre = Me.list_order.ListCount - 1
If Me.list_order.ListCount >= 0 Then
'demande confirmation
If MsgBox(" voulez vous ajouter un mouvement?", vbYesNo) = vbYes Then
Set Sht = Sheets("Entrée - sortie")
Set LObj = Sht.ListObjects(1)
For Ligne = 0 To List_nombre
LObj.ListRows.Add
Dl = LObj.HeaderRowRange.Row + LObj.ListRows.Count
'insere infos
Sht.Range("B" & Dl) = "test"
Next Ligne
Set LObj = Nothing: Set Sht = Nothing
ThisWorkbook.Save
Unload Add_pneumouv
End If
Else
MsgBox "Pas de commande disponible"
End If
End Sub

quelqu'un peut t'il m'aider et voici le fichier

14projet-pneus.zip (732.19 Ko)

? voici mon listbox

Function copy_with_repeat()
Dim LastRow As Long
LastRow=ThisWorkbook.Sheets("Entrée - Sortie").Range("B1000000").End(xlUp).Row
LastRow = LastRow + 1
With ThisWorkbook.Sheets("Entrée - Sortie")
.Range("C" & LastRow)= option_entree.Value
.Range("C" & LastRow)= option_sortie.Value
.Range("B" & LastRow)= txt_date.Value
.Range("D" & LastRow)= txt_facture.Value
.Range("E" & LastRow)= cbx_pneu.Value
.Range("H" & LastRow)= txt_nombre.Value
End With
End Function

et voici quelque image pour comprendre car quand j'enregistre les donnes n'apparait pas sur le tableau..

screenshot 7 screenshot 6 screenshot 5
Private Sub CommandButton2_Click()
  ' Variables Objet
  Dim Sht As Worksheet, LObj As ListObject
  Dim List_nombre As Long
  Dim Ligne As Long, Dl As Long

  List_nombre = Me.list_order.ListCount - 1
  If Me.list_order.ListCount >= 0 Then
    'demande confirmation
    If MsgBox(" voulez vous ajouter un mouvement?", vbYesNo) = vbYes Then
      Set Sht = Sheets("Entrée - sortie")
      Set LObj = Sht.ListObjects(1)
      For Ligne = 0 To List_nombre
        LObj.ListRows.Add
        Dl = LObj.HeaderRowRange.Row + LObj.ListRows.Count
        'insere infos
        Sht.Range("B" & Dl) = "test"
      Next Ligne
      Set LObj = Nothing: Set Sht = Nothing
      ThisWorkbook.Save
      Unload Add_pneumouv
    End If
  Else
    MsgBox "Pas de commande disponible"
  End If
End Sub

Edit modo : code à mettre entre balises

Ali1212

1) Il faut savoir être patient dans la vie

2) Pourquoi mettre des lignes vides entre toutes vos lignes de code

3) Merci de mettre le code entre balise (dernière fois que je vous le dis)

BrunoM45 je début faudra me comprendre j'essaye de resoudre un probléme j'ai fait des recherche mais voila le resultat rien on apprends grace a vous :)
la vérité j'ai passer 10 heure a regarder essayer de resoudre j'ai mal a la crane
désolé prochaine fois je ferai attention

Dépuis le matin la seule chose que j'ai reussi a faire c'est de mettre la date comme tu vois dans la photo c'est un bon début non

bonjour, ici l'idée mais les colonnes ne sont pas dans la sequence correcte, je suppose ...

Private Sub CommandButton2_Click()
     ' Variables Objet
     Dim LObj  As ListObject, List_nombre, Ligne, cLigne_Ajoutée, sp, MaDate As Double

     txt_date_Change     'vérifier si la date est connue
     sp = Split(txt_date.Value, "-")
     MaDate = DateSerial(sp(2), sp(1), sp(0)) 'la date comme valeur double

     List_nombre = Me.list_order.ListCount - 1
     If Me.list_order.ListCount >= 0 Then
     'demande confirmation
          If MsgBox(" voulez vous ajouter un mouvement?", vbYesNo) = vbYes Then
               Set LObj = Sheets("Entrée - sortie").ListObjects(1)
               For Ligne = 0 To List_nombre
                    Set cLigne_Ajoutée = LObj.ListRows.Add.Range
                    With cLigne_Ajoutée     'la plage de la nouvelle ligne de ce tableau
                         .Cells(1, 1).Value = MaDate   '1ière cellule de cette ligne = date
                         .Cells(1, 2) = "Type ???"
                         .Cells(1, 3) = txt_facture.Text
                         .Cells(1, 4) = Me.list_order.List(Ligne, 0)     ' à modifier par vous-même ....
                         .Cells(1, 5).Value = Me.list_order.List(Ligne, 1)
                         .Cells(1, 6).Value = Me.list_order.List(Ligne, 2)
                         .Cells(1, 7).Value = Me.list_order.List(Ligne, 3)
                         .Cells(1, 8).Value = Me.list_order.List(Ligne, 4)
                    End With
               Next Ligne
               ThisWorkbook.Save
               Unload Add_pneumouv
          End If
     Else
          MsgBox "Pas de commande disponible"
     End If
End Sub
17projet-pneus.zip (732.96 Ko)

Bonjour merci pour ton retour et désolé pour le retard,
quand j'essaye de enregistrer une rentrée j'ai une erreur qui s'affiche

     MaDate = DateSerial(sp(2), sp(1), sp(0)) 'la date comme valeur double

voici la capture d'ecran

capture d ecran 1

votre date, à ce moment, est-il du format "jj-mm-aa", parce que la ligne précédente le coupe en 3 sur le charactère "-" et ces 3 pièces sont numérique ?

normalement oui je viens de vérifier

Je viens de vérifier que la date se mets automatiquement c'est parfait

j'aurais une autre question pour le option entree et sortie comment je peut le mettre car en cliquant sur entree sur excel met mets type ???? voici le codage sur la photo

capture d ecran 2

une dizaine de lignes en dessous de votre dernier probleme se trouve ".cells(1,2)="Type ???" . C'est ça le problème ? A ce moment, je ne savais pas quoi y mettre ...

image

Ah si je supprime sa ca plus apparaître je vais essayer

hey je viens de vérifier il fallait mettre le sortie et l'entrée quand on clique sur le tableau j'ai pas trouvé comment je peut faire peut tu m'expliquer ? sinon la modifier directement sur mon fichier ? merci.

bonjour,

je crains que je n'avais pas ajouté le bon fichier vendredi.

15projet-pneus.zip (734.33 Ko)

Mais je ne comprends pas la question de hier : clicquer sur le tableau etc, vous faitez cela où et à quel moment ?

Voici ma question...

Dans l'ongle Entree - sortie quand j'essaye de ajouter un mouvement de Pneus, je complète le tableau en mentionnant l'entree est que j'enregistre le tableau au final je recois le Type ??? ou lieu de mettre l'entree ou la sortie

capture d ecran 3

comme dans la photo j'ai cliquer bien sur l'entree mais au final dans le tableau je recois pas le type de entree

capture d ecran 4

et je viens de recevoir cette erreur quand j'ajoute une dimension de pneus

capture d ecran 5
Part_name = WorksheetFunction.VLookup(Me.cbx_pneu, Sheets(2).Range("b:n"), 2, 0)
capture d ecran 7

bonjour,

dans commandbutton2, je n'ai pas fait l'effort de vérifier si tout est écrit vers la bonne cellule, par exemple .cells(1,2) est Me.info1, etc. Vous connaissez mieux votre projet

For Ligne = 0 To List_nombre
                    Set cLigne_Ajoutée = LObj.ListRows.Add.Range
                    With cLigne_Ajoutée     'la plage de la nouvelle ligne de ce tableau
                         .Cells(1, 1).Value = MaDate   '1ière cellule de cette ligne = date
                         .Cells(1, 2) = Me.info1
                         .Cells(1, 3) = txt_facture.Text
                         .Cells(1, 4) = Me.list_order.List(Ligne, 0)     ' à modifier par vous-même ....
                         .Cells(1, 5).Value = Me.list_order.List(Ligne, 1)
                         .Cells(1, 6).Value = Me.list_order.List(Ligne, 2)
                         .Cells(1, 7).Value = Me.list_order.List(Ligne, 3)
                         .Cells(1, 8).Value = Me.list_order.List(Ligne, 4)
                    End With
               Next Ligne

L'autre problème, est-ce que vous avez ajouter ou déplacer des feuilles ??? Dans Commandbutton1 remplacez ce "Sheets(2)" par le vrai nom, je pense "Sheets("Pneus")"

        Part_name = WorksheetFunction.VLookup(Me.cbx_pneu, Sheets("pneus").Range("b:n"), 2, 0)
               Part_prix = WorksheetFunction.VLookup(Me.cbx_pneu, Sheets("pneus").Range("b:n"), 11, 0)
               Part_mod = WorksheetFunction.VLookup(Me.cbx_pneu, Sheets("pneus").Range("b:n"), 3, 0)
Rechercher des sujets similaires à "integre mon vba listbox"