Incrémenter la référence de colonne ?
Bonjour à tous
Voilà je dois développer une petite macro pour mon boulot, on a des quantités assez importantes de données à traiter et faire des stat dessus.
Voilà un peu la manière dont j'ai pensé le truc:
On récupère en fait un liste de valeur à partir de notre logiciel de mesures, on crée une feuille pour chaque tableau de valeurs que l'on colle à partir de la cellule A1, on renomme la feuille de manière explicite.
Le but de la macro est de rassembler toutes les valeurs dans une feuille "resultats"
En gros on à une 15aine de ligne sur 2 colonne (1ère colonne: fréquences, 2ème colonne: niveau)
On veux donc copier chaque tableau les uns a côté des autres et mettre en référence pour chaque séries de valeurs le nom de la feuille auxquelles les valeurs correspondent.
Ensuite on calcule des stats mais je ne suis pas encore arrivé la
En fait j'ai reussi à faire a peu près ce que je voulais mais en mettant les séries de valeurs les unes en dessous des autres.
Mais ce n'est pas très utiles pour travailler.
Voilà ce sur quoi je bloque:
En A1 je veux coller le label de la feuille 1, en C1 le label de la feuille 2, E1->feuille 3, ... et ainsi de suite
mais je ne trouve pas comme faire pour "incrémenter" la référence de la colonne.
Je vous mets le code de la première version avec les séries les unes sous les autres
Code:
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 83 84
| Dim nbfeuilles As Single
Dim nbfreq As Single
Dim i As Single
Dim j As Single
Dim point As String
Dim ligne As Double
Dim freq As Single
Dim cell As Single
Dim cell2 As Single
Sub Dispersion()
nbfeuilles = InputBox("Coller l'export des légendes dans une feuille excel séparée", "Combien il y a-t-il de feuilles Excel?", vbOKOnly)
nbfreq = InputBox("Indiquer le nombre max de fréquences relevées", "Nombre de fréquences") + 2
ActiveWorkbook.Sheets.Add after:=Worksheets(nbfeuilles)
Worksheets(nbfeuilles + 1).Name = "Resultat"
ligne = 1
cell2 = 3
For i = 1 To nbfeuilles
cell = 4
point = Worksheets(i).Name
Worksheets("resultat").Range("A" & ligne) = point
Worksheets(i).Range("B4:C20").Sort _
Key1:=Worksheets(i).Range("B4")
For j = 0 To nbfreq
freq = Worksheets(i).Range("B" & cell)
level = Worksheets(i).Range("C" & cell)
If freq > 0 Then
Worksheets("resultat").Range("A" & cell2) = freq
Worksheets("resultat").Range("B" & cell2) = level
End If
Worksheets("resultat").Activate
Range("A" & cell2).Select
Selection.NumberFormat = "0"
Range("B" & cell2).Select
Selection.NumberFormat = "0.0"
Cells.Select
With Selection
.HorizontalAlignment = xlCenter
.VerticalAlignment = xlCenter
.WrapText = False
.Orientation = 0
.AddIndent = False
.IndentLevel = 0
.ShrinkToFit = False
.ReadingOrder = xlContext
.MergeCells = False
End With
cell = cell + 1
cell2 = cell2 + 1
Next
ligne = cell2 - 2
Next
End Sub |
S'il y a besoin je peux mettre le fichier Excel avec kkes valeurs
Merci d'avance
Chamo