XL 2016 coller dans la première cellule vide d'un tableau

  • Initiateur de la discussion Initiateur de la discussion dad621
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

dad621

XLDnaute Nouveau
Supporter XLD
bonjour le forum,
Désolé de vous déranger, avec quelque bout de code piquer sur le forum j'arrive par double clic sur une cellule en feuille 2 , à copier la cellule ,à créer une nouvelle ligne dans mon tableau en feuille 1, mais je bloque pour le collage dans la première cellule de cette nouvelle ligne.
merci pour votre aide.
VB:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Cancel = True 'annule le mode édition lié au double-clic
Target.Copy 'copy la cellule en feuille 2
Sheets("DEVIS ").ListObjects(1).ListRows.Add 'ajout d'une ligne dans mon tableau en feuille devis
Sheets("DEVIS ").(tableau 10). 1 ere cellule de la nouvelle ligne      'ici je voudrai collé la valeur de la cellule copié



End Sub
 
Bonjour

un peu de lecture ici qui devrait te donner quelques éléments pour comprendre comment utiliser les tables

dans ton code.. pourquoi tu passes de "Listobjects(1) pour ajouter une ligne et ensuite, tu utilises "Tableau 10"

C'est la meme table??
 
Bonjour Dad, Vgendron, Goube,
A tester :
VB:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
    [Tableau10].ListObject.ListRows.Add
    [Tableau10].Item([Tableau10].Rows.Count, 1) = Target
End Sub
 
EDIT 1 : ne pas oublier la civilité : Bonjour à toutes & à tous

Avec une petite précaution : double-clic sur une cellule "N° d'article" et pour un tableau vide (cas de la 1ère saisie)
EDIT 2 : Avec ou sans ligne d'entête
Code:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
  
     'Précaution  Target dans la 1ere colonne du tableau (double clic sur un N° d'article)
     If Target.Count > 1 or Intersect(Target, Me.[Tableau1[N° d''article]]) Is Nothing Then Exit Sub
     Cancel = True 'annule le mode édition lié au double-clic
  
     With Sheets("DEVIS").ListObjects(1)
          If .ShowHeaders Then Lgn1 = 2 Else Lgn1 = 1  'en fonction de l'affichage ou non de la ligne d'entête
          'Précaution si 1ère saisie ne pas ajouter de ligne
          If Not (.ListRows.Count = 1 And .Range.Cells(Lgn1, 1) = "") Then .ListRows.Add
          .ListRows(.ListRows.Count).Range.Cells(1).Value = Target.Value
     End With
  
End Sub
 
Dernière édition:
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Retour