Insertion ligne automatique tableau
Bonjour,
Ayant effectué de nombreuses recherches et ayant trouvé quelques macros pour insérer une ligne automatiquement (notamment sur ce forum), je n'arrive pas à les adapter à mon projet. Voici la macro que j'ai trouvé mais que je n'arrive pas à faire fonctionner :
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Count > 1 Then Exit Sub
If Not Intersect(Target, Me.ListObjects(1).ListColumns(1).DataBodyRange) Is Nothing Then
If Not IsEmpty(Target) Then
Me.ListObjects(1).ListRows.Add
End If
End If
End Sub
Public Sub CleanTable()
If Not Me.ListObjects(1).DataBodyRange Is Nothing Then Me.ListObjects(1).DataBodyRange.Delete
End Sub
Je dois concevoir un tableau de suivis d'affaires, qui doivent être rentrée manuellement, mais le nombre d'affaires peut varier d'un mois à l'autre.
J'aimerai alors pouvoir insérer une ligne dessous dès lors que la ligne se remplisse et qu'il se complète au fur et à mesure, et ceci pour tout les onglets que je créerai.
Ci-joint l'exemple du tableau, je vous remercie d'avance pour votre aide !
[s=co-4f81bd][/s]
Bonjour,
Je propose d'adapter le second code en lui passant la feuille concernée en paramètre mais je ne sais pas comment vous souhaiteriez exécuter ce code.
Quant à la macro évènementielle, il faudrait la mettre dans le module ThisWorkbook. Mais je ne suis pas sûr de bien saisir car un tableau structuré se restructure automatiquement donc, à moins que j'aie loupé quelque chose, ce code ne semble pas vraiment avoir d'intérêt.
Private Sub Workbook_SheetChange(ByVal Target As Range)
If Target.Count > 1 Then Exit Sub
If Not Intersect(Target, Me.ListObjects(1).ListColumns(1).DataBodyRange) Is Nothing Then
If Not IsEmpty(Target) Then
Me.ListObjects(1).ListRows.Add
End If
End If
End Sub
Sub CleanTable(Feuille as worksheet)
with Feuille.ListObjects(1)
If Not .DataBodyRange Is Nothing Then
if .databodyrange.rows.count > 1 then .DataBodyRange.Delete else .DataBodyRange.clearcontents
end if
end with
End SubCdlt,
Bonjour,
Merci pour votre retour.
ce tableau n'est pas un tableau structuré, d'où mon besoin, selon moi, de travailler avec une macro. Il n'y a que l'entête qui l'est, le reste c'est un tableau "manuel" que j'ai repris de l'existant. Je suis ouvert à toutes suggestions de modifications.
Pour ce qui est de la macro, j'ai essayé d'appliquer vos conseils, mais ça ne fonctionne pas. Je pense que je n'ai pas dû bien saisi vos explications...
Cordialement
Bonjour,
Je viens de regarder votre fichier, en effet, je n'y vois pas de tableau structuré...
Les codes, que vous avez, servent à manipuler des tableaux structurés (Listobjects). Je vous conseille vivement d'en utiliser mais je ne pense pas que les codes vous soient d'une quelconque utilité.
Par ailleurs, il ne me semble pas nécessaire de mon point de vue d'avoir 12 onglets mensuels. Un seul onglet annuel devrait suffire. Aussi, j'ai le sentiment que vos MFC pourraient rendre le fichier un peu lourd, il ne faut pas hésiter à se familiariser avec l'utilisation des filtres.
Voici une proposition de réorganisation de votre fichier, pour l'instant sans macro, non pas qu'il faille exclure d'en utiliser mais les réserver pour apporter un bénéfice au fichier. Par exemple, utiliser une macro pour extraire toutes les lignes "Validés", ça pourrait être pratique...
Cdlt,
Bonjour,
Les 12 onglets représentant les mois me paraissent selon moi idéals pour suivre les affaires mois par mois. L'outil précédent était semblable à votre fichier exemple et il y avait des difficultés de suivis lorsque les affaires s'accumulaient sur 12 mois... Mais merci pour votre avis.
les affaires seront sur un onglet "tableau de bord" afin d'avoir un résumé des montants par mois ainsi qu'un grap.
La macro m'aurait été utile pour pouvoir insérer dès le début une colonne "total", qui descendrait au fur à mesure des saisis des affaires et donc d'insertion de lignes.(voir les exemples ci dessous)
La macro pour l'extraction des affaires "validé" et une bonne idée, pour extraire des données d'un tableau à un autre. J'y pensais justement et je voulais l'aborder dans un autre sujet sur ce forum.
à vous relire,
Cordialement,
Bonjour Shoto,
Moi je pense qu'il n'y a rien de mieux qu'un onglet annuel, si ce n'est l'onglet éternel. Quand c'est possible, il faut le faire. Il suffit de filtrer la colonne Date pour avoir le mois en question.
Mais je comprends...
Pour le tableau structuré, normalement, avec la ligne de totaux, le tableau se restructure automatiquement. Faites des essais...
Ces totaux me semblaient pas optimisés mais je pense qu'ils sont compatibles avec votre besoin d'une ligne de totaux et d'un tableau se restructurant seul. Pas besoin de macro pour ça. Dans le fichier que je vous ai retourné, je les ai mis sur l'onglet données au cas où vous ne les auriez pas vus.
Cdlt,
Bonsoir,
Après plusieurs essais ça fonctionne ! maintenant que la solution est là, je me demande comment j'ai fais pour ne pas comprendre ça plus tôt...
Merci beaucoup pour votre patience et votre réactivité !
Cordialement,
Je vous en prie !
Il m'est arrivé parfois de tenter de reproduire des fonctionnalités d'Excel sans savoir qu'elles existaient. L'utilisation de la fonctionnalité native est plus simple en général.
Bon bah, on se revoit plus tard pour la macro sur les extractions alors
Bonne soirée,