JUANABIBI
Messages postés40Date d'inscriptionmardi 17 mars 2020StatutMembreDernière intervention10 avril 2020
-
24 mars 2020 à 11:32
JUANABIBI
Messages postés40Date d'inscriptionmardi 17 mars 2020StatutMembreDernière intervention10 avril 2020
-
25 mars 2020 à 09:16
Bonjour,
Je souhaiterai pouvoir ajouter des lignes dans un tableau, depuis une form.
J'ai créé la form avec une textbox et un bouton de validation.
Cependant, je n'arrive pas à aller sélectionner tout cela.
Je voudrais ensuite virer les cellules vides, puis rafraichir ma combobox qui a un lien vers ce tableau.
Voici le code actuel (aidé par l'enregistreur de macros) :
Private Sub BT_AJOUT_CAT_Click()
Sheets("Listes").Select
Range("B6").Select
Selection.ListObject.ListRows.Add (4)
Application.ScreenUpdating = False
Application.DisplayAlerts = False
If TB_AJOUT_CAT.Value <> "" Then
ActiveCell.FormulaR1C1 = TB_AJOUT_CAT.Value
Else
MsgBox "Rien à ajouter !"
End If
Application.Goto Reference:="Liste_designation"
Selection.ListObject.ListRows(4).Delete
Sheets("Global").Select
Application.ScreenUpdating = True
Application.DisplayAlerts = True
End Sub
cs_Le Pivert
Messages postés7899Date d'inscriptionjeudi 13 septembre 2007StatutContributeurDernière intervention21 septembre 2023137 24 mars 2020 à 11:50
JUANABIBI
Messages postés40Date d'inscriptionmardi 17 mars 2020StatutMembreDernière intervention10 avril 2020 24 mars 2020 à 14:29
Bonjour Cs_Le Pivert,
Je viens de regarder le tuto, mais je ne pense pas avoir ma réponse.
En fait, j'ai un tableau de créé dans "Listes" qui s'appelle "Liste_designation".
Il ressemble à ça :
J'ai une entrée client, comme ceci :
Lorsque je clique sur Ajouter, je souhaiterai que le contenu de la Textbox va se diriger à la fin du tableau.
Voici le code actuel :
Private Sub BT_AJOUT_CAT_Click()
Dim Texte_boite As String
Application.ScreenUpdating = False
Application.DisplayAlerts = False
If TB_AJOUT_CAT.Text <> "" Then
Sheets("Listes").Select
Range("B3").Select
Selection.ListObject.ListRows.Add AlwaysInsert:=True
ActiveCell.FormulaR1C1 = TB_AJOUT_CAT.Text
Sheets("Global").Select
LBL_info_cat.Caption = TB_AJOUT_CAT.Value & " enregistré !"
TB_AJOUT_CAT.Value = ""
Else
MsgBox "Rien à ajouter !"
End If
Application.ScreenUpdating = True
Application.DisplayAlerts = True
End Sub
Merci beaucoup :)
cs_Le Pivert
Messages postés7899Date d'inscriptionjeudi 13 septembre 2007StatutContributeurDernière intervention21 septembre 2023137 24 mars 2020 à 14:52
Il faut trouver la dernière ligne rempli d'un tableau:
JUANABIBI
Messages postés40Date d'inscriptionmardi 17 mars 2020StatutMembreDernière intervention10 avril 2020 25 mars 2020 à 09:16
Bonjour,
Voici la solution :
Application.ScreenUpdating = False
Application.DisplayAlerts = False
If TB_AJOUT_CAT.Text <> "" Then
With Sheets("Listes").ListObjects("Liste_designation")
.ListRows.Add AlwaysInsert:=True
'Si ton tableau commence en ligne 3 et a des en-têtes
Sheets("Listes").Cells(.ListRows + 3, 2).Value = TB_AJOUT_CAT.Text
End With
Sheets("Global").Select
LBL_info_cat.Caption = TB_AJOUT_CAT.Value & " enregistré !"
TB_AJOUT_CAT.Value = ""
Else
MsgBox "Rien à ajouter !"
End If
Application.ScreenUpdating = True
Application.DisplayAlerts = True