Bonjour à tous,
Je reviens vers vous suite au coup de main que m'a fourni un membre du forum.
Dans le cadre d'un outil de réalisation d'état des lieux je cherche à copier coller des données d'un onglet à un autre (en fait de 100 onglets sur un onglet " résumé " .
Le problème que je rencontre, c'est que maintenant que je sais comment récupérer les données situées sur la même ligne ( à l'aide de Offset) je dois également copier coller une valeur qui se trouvera toujours au même emplacement (B5). Cependant à chaque fois que j'essaye je me retrouve avec la valeur B5 de l'onglet de destination et non l'onglet source. Le problème que j'ai à utiliser un Offset ici, c'est que ma sélection s'applique à une plage de données (donc le offset est chamboulé puisque la référence change)
J'ai essayé avec pas mal de technique copy mais sans succès.
Je vous copie/colle mon code
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 Sub Button1_Click() Dim Sh As Worksheet Dim DerLig As Long Dim Cell As Range For Each Sh In ThisWorkbook.Worksheets If Sh.Name <> "Plomberie" Then ' traitement de la feuille ' dernière ligne de la colonne G DerLig = Sh.Cells(Sh.Rows.Count, 7).End(xlUp).Row ' pour chaque cellule de la colonne G For Each Cell In Sh.Range("G17:G19") ' si la cellule n'est pas vide If Cell.Value <> "" Then ' feuille de destination With ThisWorkbook.Worksheets("Porte entree") ' on copie la valeur de la cellule A vers la feuille de destination ' (dans la première ligne non vide de la colonne A) .Cells(.Rows.Count, 1).End(xlUp)(2) = ActiveSheet.Range("B5") .Cells(.Rows.Count, 3).End(xlUp)(2) = Cell.Offset(0, -6) End With End If Next Cell Set Sh = Nothing End If Next Sh End Sub Private Sub Worksheet_SelectionChange(ByVal Target As Range) End Sub
Partager