Bonjour
je n'arrive pas a optimiser la macro (ice)dans le module 1
le but et de transposer dans la plage (M3:T10) les deux plages (W3:AD10,C3:J10)
en récupérant uniquement les cellules non vide et d'imbriquer la macro ice dans la macro qui se trouve
dans la feuil 1
j' ai fais un essai avec Range("M3:T10").Value = Application.Union(Range("W3:AD10"), Range("C3:J10")).Value
mais j' ai toujours le meme problème il n y a qu'une des deux plages qui arrive dans ("M3:T10")
voici la macro problematique
et voici la macro dans la quel je souhaite imbriquer la macro ice
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 Sub ice() Range("M3:T10").Value = Range("W3:AD10,C3:J10").Value If Range("W3:AD10,C3:J10") <> "" Then Range("A1").Select End If End Sub
Merci d'avance
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 Private Sub Worksheet_Change(ByVal Target As Range) Dim isect As Range, c As Range Set isect = Intersect(Target, [AC3:AD4,AC6:AD7,AC9:AD10]) If Not isect Is Nothing Then For Each c In Target.Cells If c.Row Mod 1 <> 1 And c.Column Mod 2 <> 2 Then c.Offset(, -20) = IIf(IsEmpty(c), TimeSerial(7, 30, 0), Empty) End If Next c End If Set isect = Intersect(Target, [Z3:AA4,Z6:AA7,Z9:AA10]) If Not isect Is Nothing Then For Each c In Target.Cells If c.Row Mod 1 <> 1 And c.Column Mod 2 <> 2 Then c.Offset(, -20) = IIf(IsEmpty(c), TimeSerial(3, 45, 0), Empty) End If Next c End If Set isect = Intersect(Target, [W3:X4,W6:X7,W9:X10]) If Not isect Is Nothing Then For Each c In Target.Cells If c.Row Mod 1 <> 1 And c.Column Mod 2 <> 2 Then c.Offset(, -20) = IIf(IsEmpty(c), TimeSerial(15, 0, 0), Empty) End If Next c End If ice End Sub
Partager