Bonjour à toute et à tous, étant novice dans ce domaine des macros et du vba, je viens vers vous pour trouver une solution précise sur des colonnes.
En effet dans la macro déjà présente et enregistrer avec l'enregistreur de macros, je vous met le bout du code ci dessus qui concerne mon problème :
Comme vous pouvez le voir, on supprime, déplace, remplace des colonnes. Cette macro a pour objectif après extraction sur SAP et exportation vers Excel, de créer une sorte de tableau avec seulement ce que l'on a besoin. Je viens vers vous pour que vous puissiez me donner une solution plus optimale, en code VBA si possible pour pouvoir, soit supprimer plus simplement les colonnes dont on n'a besoin, soit avoir un code qui me fait avoir que les colonnes que j'ai besoin et ne pas faire tout ce mic-mac.
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
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82 Columns("R:T").Select Selection.Delete Shift:=xlToLeft Columns("D:D").Select Application.CutCopyMode = False Selection.Delete Shift:=xlToLeft Columns("H:H").Select Selection.Delete Shift:=xlToLeft Columns("G:G").Select Selection.Delete Shift:=xlToLeft Columns("H:H").Select Selection.Delete Shift:=xlToLeft Columns("J:J").Select Selection.Delete Shift:=xlToLeft Columns("J:K").Select Selection.Delete Shift:=xlToLeft Columns("K:K").Select Selection.Delete Shift:=xlToLeft Columns("M:M").Select Selection.Delete Shift:=xlToLeft Columns("N:P").Select Selection.Delete Shift:=xlToLeft Columns("O:Q").Select Selection.Delete Shift:=xlToLeft Columns("T:T").Select Selection.Copy Range("ax1").Select ActiveSheet.Paste Columns("R:R").Select Selection.Copy Range("ay1").Select ActiveSheet.Paste Columns("R:U").Select Selection.Delete Shift:=xlToLeft Columns("S:Z").Select Selection.Delete Shift:=xlToLeft Columns("T:U").Select Selection.Delete Shift:=xlToLeft Columns("X:Z").Select Selection.Delete Shift:=xlToLeft Columns("Z:AE").Select Selection.Delete Shift:=xlToLeft Columns("D:D").Select Selection.Cut Columns("A:A").Select Selection.Insert Shift:=xlToRight Columns("S:S").Select Selection.Cut Columns("B:B").Select Selection.Insert Shift:=xlToRight Columns("H:H").Select Selection.Cut Columns("C:C").Select Selection.Insert Shift:=xlToRight Columns("G:H").Select Selection.Cut Columns("D:D").Select Selection.Insert Shift:=xlToRight Columns("I:J").Select Selection.Cut Columns("F:F").Select Selection.Insert Shift:=xlToRight Columns("K:K").Select Selection.Cut Columns("H:H").Select Selection.Insert Shift:=xlToRight Columns("L:L").Select Selection.Cut Columns("K:K").Select Selection.Insert Shift:=xlToRight Columns("Q:R").Select Selection.Cut Columns("M:M").Select Selection.Insert Shift:=xlToRight Columns("S:S").Select Selection.Cut Columns("P:P").Select Selection.Insert Shift:=xlToRight Columns("W:Z").Select Selection.Cut Columns("R:R").Select Selection.Insert Shift:=xlToRight Range("A1").Select
C'est compliqué à comprendre je vous l'accorde..
Merci de vos réponses et très bonne soirée !
Partager