Bonjour,
Je poste ici car je suis en train de créer une macro pour automatiser un traitement excel long et pénible.
J'ai un tableau ou chaque colonne est définit par une valeur de temps placée sur la ligne 1 et ou chaque ligne correspond à une fréquence placée en colonne A.
Je souhaite extraire les "temps" et "fréquence" correspondant à la valeur la plus proche de 0.2 pour chacune de mes colonnes (allant de B2:B232 à EK2:EK232 soit 131 colonnes, si je ne dis pas de conneries). Puis copier ces temps et fréquences dans un tableau présent sur une autre feuille (basiquement mon tableau de données en Feuil1 et mon tableau de resultats en Feuil2 avec les temps en A2:Ax et les fréquences en B2:Bx) Je ne sais pas si je suis très clair...
Voici la macro que j'ai commencé à rédiger:
Mon soucis (peut être pas le seul) est de réussir à bien définir mes variables et notamment mon i que j'ai définit comme un PORC... Désolé ci mon code vous parait pérave et mon problème obsolète, mais je débute.
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 Sub ferfghjk() Dim PORC As Double Dim macellulite As Range Dim tamere As Range Dim i As Integer Set F1 = Worksheets("Feuil1") Set F2 = Worksheets("Feuil2") For i = 1 To 131 F1.Select Set tamere = F1.Columns("i + 1").Row("1:232") PORC = Application.Match("0.2", [tamere], -1).Value Set macellulite = Columns("PORC").Rows("i + 1") macellulite.Select Selection.End(xlUp).Select Selection.Copy F2.Select Cells(i + 1, 1).Select ActiveSheet.Paste F1.Select macellulite.Select Selection.End(xlToLeft).Select Selection.Copy F2.Select Cells(i + 1, 2).Select ActiveSheet.Paste Next i End Sub
Je vous joins mon classeur.
Merci d'avance! Force et courage!
Partager