Ajout de ligne sur deux tableaux

Bonjour,

je travail sur un fichier de gestion de stock et j'essaye de faire fonctionner deux tableau ensemble.

Dans ce fichier il y a une feuille nommé BASE ARTICLE SUPPLIES lorsque que je rentre un nouvelle article dans la cellule B7 le tableau rajoute une ligne automatiquement.

Ce que je souhaite obtenir est que lorsque je rajoute cet article dans la feuille BASE ARTICLE SUPPLIES dans la feuille SUPPLIES STORE le tableau rajoute une ligne automatiquement en conservant ces formules.

Je ne sais pas comment faire... peut être qu' il faut faire une macro avec un éventuel bouton de commande pour rajouter un article dans la feuille BASE ARTICLE SUPPLIES.

Ci-joint un fichier TEST.

Merci d'avance pour votre aide.

9test.xlsm (27.84 Ko)

Bonsoir,

proposition ci-jointe

9test1.xlsm (38.61 Ko)

Bonjour,

Cela fonctionne mais je rencontre un soucis lorsque je tire la cellule ARTICLE 2 vers le bas afin de rajouter par exemple 20 lignes dans la feuille base article le tableau de la feuille SUPPLIES STORE rencontre une erreur et ne rajoute que une seule ligne.(même chose si, je fais un copier coller de plusieurs références)

Est ce possible de remédier a ce problème ?

Cordialement

Bonjour,

ci-joint remède

13test2.xlsm (40.05 Ko)

Bonjour,

parfait !

Merci pour votre aide.

Cordialement

Bonjour,

Je reviens vers au sujet de la macro que vous avez faite car je rencontre un soucis lorsque je protège la feuille SUPPLIES STORE la mise a jour ne ce fais plus.

Est ce que vous auriez une solution ?

Cordialement

Bonsoir,

ci_jointe version protégée sans mot de passe

11test3.xlsm (39.54 Ko)

Bonjour,

cela fonctionne parfaitement.

Encore merci pour votre aide.

Cordialement

Bonjour,

Je rencontre encore un petit soucis.

Dans la feuille base article lorsque je protège par exemple la colonne G le tableau n'ajoute plus de ligne automatiquement. Je souhaite protéger cet colonne car sur le tableau original je travail sur quatre devises différentes donc il faut que les formule sois protégé.

J'ai cherché des solutions sur le web mais apparemment je ne suis pas le seule a rencontrer ce problème. J'ai aussi fais un essai en créant un bouton de commande pour ajouter des lignes mais le soucis est que ça fonctionne mal au niveau des formules dans l'ajout de ligne dans la feuille Supplies store.

Ci-dessous le code du bouton de commande dans la feuille Base article supplies : (je masque la dernière ligne du tableau pour que ça fonctionne)

Option Explicit

Dim nb_articles_supplies As Integer, nb_articles_sel As Integer, lig1_article_sel As Integer

Const mot_de_passe As String = ""

Private Sub CommandButton1_Click()

Dim message As String, title As String

Dim nblg As Byte

message = "Number of article to add"

title = "Click here to add article"

nblg = Application.InputBox(message, title, Type:=1)

If nblg = 0 Then MsgBox "Cancel": End

Sheets("BASE ARTICLE SUPPLIES").Unprotect Password:="1234"

Worksheets("BASE ARTICLE SUPPLIES").Range("B4").End(xlDown).Offset(1, 0).Select

Selection.Resize(nblg, 0).EntireRow.Insert , CopyOrigin:=xlFormatFromLeftOrAbove

Sheets("BASE ARTICLE SUPPLIES").Protect Password:="1234"

End Sub

Je ne sais si il faut modifier ce code pour que il fonctionne ou alors peut etre avez vous une solution beaucoup plus simple.

Je vous remercie d'avance pour votre support.

Cordialement

Bonsoir,

Simplification de votre code en utilisant l'objet tableau et l'objet "Me" qui représente votre feuille puisque le code y est rattaché.

Généralisation du mot de passe "1234" pour les 2 feuilles via la constante mot_de_passe.

ci-joint fichier modifié

NB : il faudrait prévoir un second bouton pour la suppression des articles.

Option Explicit

Dim nb_articles_supplies As Integer, nb_articles_sel As Integer, lig1_article_sel As Integer
Const mot_de_passe As String = "1234"

Private Sub CommandButton1_Click()

    Dim message As String, title As String
    Dim nblg As Byte, i As Byte

    message = "Number of article to add"
    title = "Click here to add article"
    nblg = Application.InputBox(message, title, Type:=1)
    If nblg = 0 Then MsgBox "Cancel": Exit Sub

    Me.Unprotect Password:=mot_de_passe
    For i = 1 To nblg
        Me.ListObjects(1).ListRows.Add
    Next i
    Me.Protect Password:=mot_de_passe

End Sub
16test4.xlsm (47.18 Ko)
Rechercher des sujets similaires à "ajout ligne deux tableaux"