Bonjour,
Je débute et bien sure le 1er essai est un vrai casse-tête pour moi. Voici ce que j'ai et ce que je souhaite faire.
CE QUE J'AI
J'ai testé des sujets dans une tâche exprimentale et j'ai récolté les données de chaque sujet. Chaque sujet a son classeur qui comporte deux feuilles : RowDATA et DATA.
Dans la feuille "RowDATA", j'ai un tableau qui contient plusieurs colonnes. Chaque colonne à un nom (en-tête) inscrit en ligne 2 (par exemple Score, TR). Le nombre de colonne est variable d'un tableau à l'autre. Par exemple, le sujet1 peut avoir 10 colonnes (parmi lesquels on trouvera les colonnes Score et TR), et le sujet2, en aura 15 (parmi lesquels ont trouvera les colonnes Score et TR).
Ainsi, la colonne "Score" pourra être placée dans la colonne numero 3 chez le sujet1 et dans la colonne numero 9 chez le sujet2.
CE QUE JE VOUDRAIS FAIRE
Je voudrais faire un tableau récapitulatif contenant uniquement les colonnes Score et TR dans la feuille "DATA".
- Dans le tableau de la feuille RowDATA, je dois balayer toute la ligne 2 (là ou est inscrit les en-tête des colonnes), jusqu'à trouver la cellule "Score"
- Je dois sélectionner toute la colonne "Score" (en-tête comprise)
- La copier
- La coller dans la colonne A de la feuille "DATA" (début en A1 ... la longueur aussi est variable d'un sujet à l'autre).
MON PAUVRE BOUT DE PROGRAMME
Voila ou j'en suis, après 3 jours...
Mais bien sure, le programme me copie la colonne i !!!
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 Dim i As Integer Dim NbreColonne As Integer Dim Cel As Range Sub CellulesFlottantes() Worksheets("RowDATA").Select Set Cel = Range("A1") NbreColonne = Range("A1").End(xlToRight).Column For i = 1 To NbreColonne If Cel.Offset(1, i) = "Score" Then Columns("i:i").Select Selection.Copy Sheets("DATA").Select Range("A1").Activate ActiveSheet.Paste Sheets("RowDATA").Select Application.CutCopyMode = False Exit For End If Next i End Sub
Pour info, je veux faire la même procédure avec la colonne TR (et encore 5 autres colonnes, sur le même principe).
Voilà ... si vous avez une idée, elle est plus que bienvenue ! Merci d'avance
Partager