bonsoir à tous,
Je viens de créer ma tte première macro sous VBA Excel 2003.
Mais elle marche pas du tout et je me prends plutôt la tête pour un début.
Qq'un aurait-il la gentillesse de m'aider car mes débuts sont difficiles alors que je pensais que ce serait simple.
J'ai un tableau comme suit :
15 colonnes - X(pas toujours le mm nbre) lignes.
Je veux ajouter en ligne 1, colonne 16 le mot "type" puis
j'ai besoin de lire à partir de la ligne 2, la 9ème colonne. Si elle ne contient rien, je dois mettre en ligne 2, colonne 16 un "G" sinon je dois mettre aussi un "G" puis copier toute cette ligne, la coller en dessous et mettre un "A" à la place du "G". et ainsi de suite.
Je mets en pièce jointe un extrait de mon fichier avec le résultat attendu.
J'ai fait ce code via l'enregistrement de macro et de la modif manuelle mais c'est dur-dur !!
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 Sub Macro3() ' ' Macro3 Macro ' Macro enregistrée le 02/11/2008 par TFR ' ' Touche de raccourci du clavier: Ctrl+p ligne = 2 Range("P1").Select ActiveCell.FormulaR1C1 = "type" Do While Not (IsEmpty(ActiveSheet.Cells(ligne, 1))) ' Passe à la ligne suivante If ActiveSheet.Cells(ligne, 2).Select = "" Then Selection.Font.ColorIndex = 4 ActiveSheet.Cells(ligne, 2).Select ActiveCell.FormulaR1C1 = "G" Else: ActiveSheet.Cells(ligne, 3).Select ActiveCell.FormulaR1C1 = "G" Range(ActiveCell, ActiveCell.End(xlToLeft)).Select Selection.Copy ActiveSheet.Cells(ligne, 4).Select Selection.Insert Shift:=xlDown ActiveSheet.Cells(ligne, 4).Select Application.CutCopyMode = False ActiveCell.FormulaR1C1 = "A" End If Range("A5").Select ligne = ligne + 1 Loop End Sub
Merci pour votre aide
Thibo
Partager