Bonjour à tous,

Je me permets de vous solliciter car je n'arrive pas à aboutir au bon fonctionnement de mon code VBA.

Pour info, j'ai un tableau qui est une base de données de dossiers. Si un dossier est "Fini", un filtre s'applique automatiquement et le masque.

Mon but est d'écrire une macro qui va insérer une ligne à la fin de mon tableau, en avant dernière ligne car j'ai une ligne total.

Dans un second temps je souhaiterais accompagner l'utilisateur du tableau à compléter cette ligne insérée.

Voici le code que j'ai écris :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
Sub AjouterUneLigne()
 
'Message de confirmation
 
If MsgBox("Voulez vous ajouter un nouveau dossier?", vbYesNo) = vbYes Then
 
'Insertion d'une ligne supplŽmentaire
 
Dim DerLigne As Long
DerLigne = Cells(Rows.Count, 1).End(xlUp).Row
Rows(DerLigne).Insert
 
     'Entrer le nom du dossier
     Dim Dossier As String
     Dim Diligence As String
     Dim Responsable As String
     Dim Collaborateur As String
 
 
     Dossier = InputBox("Veuillez entrer le nom du dossier :", "Nom du dossier")
 
     'Placement dans le cellule insŽrŽe dans la colonne A
     Range("Table1[[#Headers],[Dossiers]]").Select
    ActiveCell.Select
    Selection.End(xlDown).Select
    ActiveCell.Offset(1, 0).Range("A1").Value = Dossier
 
    Dilligence = InputBox("Veuillez entrer les diligences pour ce dossier :", "Diligence")
    Range("Table1[[#Headers],[Diligences à accomplir]]").Select
    ActiveCell.Select
    Selection.End(xlDown).Select
    ActiveCell.Offset(1, 0).Range("A1").Value = Diligence
 
     Responsable = InputBox("Merci de renseigner en lettres capitales les initiales(Prénom/Nom)du responsable du dossier :", "Responsable")
    Range("Table1[[#Headers],[Responsable]]").Select
    ActiveCell.Select
    Selection.End(xlDown).Select
    ActiveCell.Offset(1, 0).Range("A1").Value = Responsable
 
     Collaborateur = InputBox("Merci de renseigner en lettres capitales les initiales(Prénom/Nom)du collaborateur en charge du dossier :", "Collaborateur")
    Range("Table1[[#Headers],[Collaborateur]]").Select
    ActiveCell.Select
    Selection.End(xlDown).Select
    ActiveCell.Offset(1, 0).Range("A1").Value = Collaborateur
 
     End If
 
End Sub
Le probleme avec ce code c'est que une fois que mon tableau a un filtre, la nouvelle ligne se positionne bien en avant dernière position de mon tableau, mais je n'arrive pas à la completer avec les inputbox...

Auriez vous une solution à me proposer?

En vous remerciant par avance les experts!