Bonjour le Forum,

Mon probléme : j ai créé cette macro pour exporter des données de la feuille "Visio" dans une feuille "Liste" mais avant la macro efface les lignes de la feuille "Liste" si elle existe pour les remplacer par les nouvelles.

Sans pretention, et pour un debutant, je pensais que ma macro était bonne mais voila ca ne marche pas, quelqu'un peut il m aider? Merci
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
Sub CommandButton1_Click()
     Dim massif As String ' massif  : celui qui est affiché dans visio
  Dim Colonne As Integer ' Colonne : colonne où se trouve le massif dans "liste"
  Dim derniereligne As Integer ' numero de la derniere ligne du tableau dans "liste"
  Dim dernierelignevisio As Integer ' numero de la derniere ligne du tableau dans "visio"
  Dim i As Integer
 
  massif = Sheets("Visio").Range("f1").Value
  Colonne = 1
  derniereligne = Sheets("Liste").Range("A1").End(xlDown).Row
 
  ' on efface toutes les lignes du massif dans "liste"
    For i = 2 To derniereligne
            If Sheets("Liste").Cells(i, Colonne).Value = massif Then
           Sheets("Liste").Rows(i).Delete Shift:=xlShiftUp
           i = 2
                                   End If
    Next i
 
     ' on copie les données de "visio" dans "liste"
derniereligne = Sheets("Liste").Range("A1").End(xlDown).Row + 1
dernierelignevisio = Sheets("Visio").Range("A15").End(xlDown).Row
 
Sheets("Visio").Activate: Range("a15:ah" & dernierelignevisio).Copy _
Destination:=Sheets("Liste").Range("A" & derniereligne)
  End Sub