Bonjour à tous
Ceci fait suite à mon message « Ajoute automatique d'info dans la première
colonne vide » qui franchement n'a pas eu de succès (ce qui est rare sur ce
forum)
Je sais que mon problème n'est pas simple à résoudre, M'enfin (comme disais
l'autre)
Je cherche à créer une solution à un problème scolaire (instituteurs)
J'utilise un logiciel de QCM (création de questions/réponses multichoix)
Je crée une question et je donne plusieurs possibilités de réponses dont une
seule est valable (le principe des boitiers du jeu du millionnaire)
Ce logiciel enregistre les réponses (et temps de réponse) aux questions
A la fin de la session je peux exporter ces résultats vers un fichier xls
Et cela fonctionne parfaitement
Le problème vient aprés Je me retrouve avec différent fichiers xls
(résultats1, résultats2, résultats3, etc) pour une même classe
Je voudrais faire une compilation de ces fichiers en un seul fichier, et
avoir tous les résultats sur une même feuille
En tenant compte que tous les élèves ne sont pas tous toujours présents
Voici (plus ou moins) ce que le logiciel donne
Nom Score 1 Score 2 Score 3 % réussi
Jean 5 4 8
6.2
Pierre 6 8 6 7
Marie 8 4 9 7
Et dans une session différente les résultats seraient
Nom Score 1 Score 2 % réussi
Jean 7 5 6
André 8 9 8.5
Marie 4 7 5.5
A la suite de quoi je voudrais compiler ces informations en un seul fichier
Et sur une seule feuille dans le genre
Nom Score 1 Score 2 Score 3 Score 1bis Score
2bis % réussi
Jean 5 4 8
7 5 5.8
Pierre 6 8 6
Abs Abs 6.5
Marie 8 4 9
4 7 6.4
André Abs Abs Abs 8
9 8.5
Pour ceux qui ne me connaissent pas, je ne cherche pas une solution
complète, mais plutôt quelques coups de pieds dans la bonne direction
Je suppose que je devrais passer par des fonctions index et recherche et là
je ne encore nul part
Alors j'en appel à vous "Les maîtres, vous qui excellez en Excel"
Au secours! Je suis dans la panade jusqu'au cou
A bientôt et merci à tous
Rex
PS J'ai fait un tour sur Excelabo mais sans succès (ce qui est rare)
Par contre j'y ai trouvé un fichier (Piere) qui est nickel pour certains
prof!!!!!!
Bonjour à tous
Ceci fait suite à mon message « Ajoute automatique d'info dans la première
colonne vide » qui franchement n'a pas eu de succès (ce qui est rare sur ce
forum)
Je sais que mon problème n'est pas simple à résoudre, M'enfin (comme disais
l'autre)
Je cherche à créer une solution à un problème scolaire (instituteurs)
J'utilise un logiciel de QCM (création de questions/réponses multichoix)
Je crée une question et je donne plusieurs possibilités de réponses dont une
seule est valable (le principe des boitiers du jeu du millionnaire)
Ce logiciel enregistre les réponses (et temps de réponse) aux questions
A la fin de la session je peux exporter ces résultats vers un fichier xls
Et cela fonctionne parfaitement
Le problème vient aprés Je me retrouve avec différent fichiers xls
(résultats1, résultats2, résultats3, etc) pour une même classe
Je voudrais faire une compilation de ces fichiers en un seul fichier, et
avoir tous les résultats sur une même feuille
En tenant compte que tous les élèves ne sont pas tous toujours présents
Voici (plus ou moins) ce que le logiciel donne
Nom Score 1 Score 2 Score 3 % réussi
Jean 5 4 8
6.2
Pierre 6 8 6 7
Marie 8 4 9 7
Et dans une session différente les résultats seraient
Nom Score 1 Score 2 % réussi
Jean 7 5 6
André 8 9 8.5
Marie 4 7 5.5
A la suite de quoi je voudrais compiler ces informations en un seul fichier
Et sur une seule feuille dans le genre
Nom Score 1 Score 2 Score 3 Score 1bis Score
2bis % réussi
Jean 5 4 8
7 5 5.8
Pierre 6 8 6
Abs Abs 6.5
Marie 8 4 9
4 7 6.4
André Abs Abs Abs 8
9 8.5
Pour ceux qui ne me connaissent pas, je ne cherche pas une solution
complète, mais plutôt quelques coups de pieds dans la bonne direction
Je suppose que je devrais passer par des fonctions index et recherche et là
je ne encore nul part
Alors j'en appel à vous "Les maîtres, vous qui excellez en Excel"
Au secours! Je suis dans la panade jusqu'au cou
A bientôt et merci à tous
Rex
PS J'ai fait un tour sur Excelabo mais sans succès (ce qui est rare)
Par contre j'y ai trouvé un fichier (Piere) qui est nickel pour certains
prof!!!!!!
Bonjour à tous
Ceci fait suite à mon message « Ajoute automatique d'info dans la première
colonne vide » qui franchement n'a pas eu de succès (ce qui est rare sur ce
forum)
Je sais que mon problème n'est pas simple à résoudre, M'enfin (comme disais
l'autre)
Je cherche à créer une solution à un problème scolaire (instituteurs)
J'utilise un logiciel de QCM (création de questions/réponses multichoix)
Je crée une question et je donne plusieurs possibilités de réponses dont une
seule est valable (le principe des boitiers du jeu du millionnaire)
Ce logiciel enregistre les réponses (et temps de réponse) aux questions
A la fin de la session je peux exporter ces résultats vers un fichier xls
Et cela fonctionne parfaitement
Le problème vient aprés Je me retrouve avec différent fichiers xls
(résultats1, résultats2, résultats3, etc) pour une même classe
Je voudrais faire une compilation de ces fichiers en un seul fichier, et
avoir tous les résultats sur une même feuille
En tenant compte que tous les élèves ne sont pas tous toujours présents
Voici (plus ou moins) ce que le logiciel donne
Nom Score 1 Score 2 Score 3 % réussi
Jean 5 4 8
6.2
Pierre 6 8 6 7
Marie 8 4 9 7
Et dans une session différente les résultats seraient
Nom Score 1 Score 2 % réussi
Jean 7 5 6
André 8 9 8.5
Marie 4 7 5.5
A la suite de quoi je voudrais compiler ces informations en un seul fichier
Et sur une seule feuille dans le genre
Nom Score 1 Score 2 Score 3 Score 1bis Score
2bis % réussi
Jean 5 4 8
7 5 5.8
Pierre 6 8 6
Abs Abs 6.5
Marie 8 4 9
4 7 6.4
André Abs Abs Abs 8
9 8.5
Pour ceux qui ne me connaissent pas, je ne cherche pas une solution
complète, mais plutôt quelques coups de pieds dans la bonne direction
Je suppose que je devrais passer par des fonctions index et recherche et là
je ne encore nul part
Alors j'en appel à vous "Les maîtres, vous qui excellez en Excel"
Au secours! Je suis dans la panade jusqu'au cou
A bientôt et merci à tous
Rex
PS J'ai fait un tour sur Excelabo mais sans succès (ce qui est rare)
Par contre j'y ai trouvé un fichier (Piere) qui est nickel pour certains
prof!!!!!!
Je ne vois que la possibilité d'écrire du code.
1. création d'un nouveau workbook
2. lecture de tous les workbooks et création des différentes lignes et
colonnes avec les totaux.
bat
François.
Bonjour à tous
Ceci fait suite à mon message « Ajoute automatique d'info dans la
première
colonne vide » qui franchement n'a pas eu de succès (ce qui est rare sur
ce
forum)
Je sais que mon problème n'est pas simple à résoudre, M'enfin (comme
disais
l'autre)
Je cherche à créer une solution à un problème scolaire (instituteurs)
J'utilise un logiciel de QCM (création de questions/réponses multichoix)
Je crée une question et je donne plusieurs possibilités de réponses dont
une
seule est valable (le principe des boitiers du jeu du millionnaire)
Ce logiciel enregistre les réponses (et temps de réponse) aux questions
A la fin de la session je peux exporter ces résultats vers un fichier
xls
Et cela fonctionne parfaitement
Le problème vient aprés Je me retrouve avec différent fichiers xls
(résultats1, résultats2, résultats3, etc) pour une même classe
Je voudrais faire une compilation de ces fichiers en un seul fichier, et
avoir tous les résultats sur une même feuille
En tenant compte que tous les élèves ne sont pas tous toujours présents
Voici (plus ou moins) ce que le logiciel donne
Nom Score 1 Score 2 Score 3 % réussi
Jean 5 4 8
6.2
Pierre 6 8 6
7
Marie 8 4 9
7
Et dans une session différente les résultats seraient
Nom Score 1 Score 2 % réussi
Jean 7 5 6
André 8 9 8.5
Marie 4 7 5.5
A la suite de quoi je voudrais compiler ces informations en un seul
fichier
Et sur une seule feuille dans le genre
Nom Score 1 Score 2 Score 3 Score 1bis
Score
2bis % réussi
Jean 5 4 8
7 5 5.8
Pierre 6 8 6
Abs Abs 6.5
Marie 8 4 9
4 7 6.4
André Abs Abs Abs 8
9 8.5
Pour ceux qui ne me connaissent pas, je ne cherche pas une solution
complète, mais plutôt quelques coups de pieds dans la bonne direction
Je suppose que je devrais passer par des fonctions index et recherche et
là
je ne encore nul part
Alors j'en appel à vous "Les maîtres, vous qui excellez en Excel"
Au secours! Je suis dans la panade jusqu'au cou
A bientôt et merci à tous
Rex
PS J'ai fait un tour sur Excelabo mais sans succès (ce qui est rare)
Par contre j'y ai trouvé un fichier (Piere) qui est nickel pour certains
prof!!!!!!
Je ne vois que la possibilité d'écrire du code.
1. création d'un nouveau workbook
2. lecture de tous les workbooks et création des différentes lignes et
colonnes avec les totaux.
bat
François.
Bonjour à tous
Ceci fait suite à mon message « Ajoute automatique d'info dans la
première
colonne vide » qui franchement n'a pas eu de succès (ce qui est rare sur
ce
forum)
Je sais que mon problème n'est pas simple à résoudre, M'enfin (comme
disais
l'autre)
Je cherche à créer une solution à un problème scolaire (instituteurs)
J'utilise un logiciel de QCM (création de questions/réponses multichoix)
Je crée une question et je donne plusieurs possibilités de réponses dont
une
seule est valable (le principe des boitiers du jeu du millionnaire)
Ce logiciel enregistre les réponses (et temps de réponse) aux questions
A la fin de la session je peux exporter ces résultats vers un fichier
xls
Et cela fonctionne parfaitement
Le problème vient aprés Je me retrouve avec différent fichiers xls
(résultats1, résultats2, résultats3, etc) pour une même classe
Je voudrais faire une compilation de ces fichiers en un seul fichier, et
avoir tous les résultats sur une même feuille
En tenant compte que tous les élèves ne sont pas tous toujours présents
Voici (plus ou moins) ce que le logiciel donne
Nom Score 1 Score 2 Score 3 % réussi
Jean 5 4 8
6.2
Pierre 6 8 6
7
Marie 8 4 9
7
Et dans une session différente les résultats seraient
Nom Score 1 Score 2 % réussi
Jean 7 5 6
André 8 9 8.5
Marie 4 7 5.5
A la suite de quoi je voudrais compiler ces informations en un seul
fichier
Et sur une seule feuille dans le genre
Nom Score 1 Score 2 Score 3 Score 1bis
Score
2bis % réussi
Jean 5 4 8
7 5 5.8
Pierre 6 8 6
Abs Abs 6.5
Marie 8 4 9
4 7 6.4
André Abs Abs Abs 8
9 8.5
Pour ceux qui ne me connaissent pas, je ne cherche pas une solution
complète, mais plutôt quelques coups de pieds dans la bonne direction
Je suppose que je devrais passer par des fonctions index et recherche et
là
je ne encore nul part
Alors j'en appel à vous "Les maîtres, vous qui excellez en Excel"
Au secours! Je suis dans la panade jusqu'au cou
A bientôt et merci à tous
Rex
PS J'ai fait un tour sur Excelabo mais sans succès (ce qui est rare)
Par contre j'y ai trouvé un fichier (Piere) qui est nickel pour certains
prof!!!!!!
Je ne vois que la possibilité d'écrire du code.
1. création d'un nouveau workbook
2. lecture de tous les workbooks et création des différentes lignes et
colonnes avec les totaux.
bat
François.
Bonjour à tous
Ceci fait suite à mon message « Ajoute automatique d'info dans la
première
colonne vide » qui franchement n'a pas eu de succès (ce qui est rare sur
ce
forum)
Je sais que mon problème n'est pas simple à résoudre, M'enfin (comme
disais
l'autre)
Je cherche à créer une solution à un problème scolaire (instituteurs)
J'utilise un logiciel de QCM (création de questions/réponses multichoix)
Je crée une question et je donne plusieurs possibilités de réponses dont
une
seule est valable (le principe des boitiers du jeu du millionnaire)
Ce logiciel enregistre les réponses (et temps de réponse) aux questions
A la fin de la session je peux exporter ces résultats vers un fichier
xls
Et cela fonctionne parfaitement
Le problème vient aprés Je me retrouve avec différent fichiers xls
(résultats1, résultats2, résultats3, etc) pour une même classe
Je voudrais faire une compilation de ces fichiers en un seul fichier, et
avoir tous les résultats sur une même feuille
En tenant compte que tous les élèves ne sont pas tous toujours présents
Voici (plus ou moins) ce que le logiciel donne
Nom Score 1 Score 2 Score 3 % réussi
Jean 5 4 8
6.2
Pierre 6 8 6
7
Marie 8 4 9
7
Et dans une session différente les résultats seraient
Nom Score 1 Score 2 % réussi
Jean 7 5 6
André 8 9 8.5
Marie 4 7 5.5
A la suite de quoi je voudrais compiler ces informations en un seul
fichier
Et sur une seule feuille dans le genre
Nom Score 1 Score 2 Score 3 Score 1bis
Score
2bis % réussi
Jean 5 4 8
7 5 5.8
Pierre 6 8 6
Abs Abs 6.5
Marie 8 4 9
4 7 6.4
André Abs Abs Abs 8
9 8.5
Pour ceux qui ne me connaissent pas, je ne cherche pas une solution
complète, mais plutôt quelques coups de pieds dans la bonne direction
Je suppose que je devrais passer par des fonctions index et recherche et
là
je ne encore nul part
Alors j'en appel à vous "Les maîtres, vous qui excellez en Excel"
Au secours! Je suis dans la panade jusqu'au cou
A bientôt et merci à tous
Rex
PS J'ai fait un tour sur Excelabo mais sans succès (ce qui est rare)
Par contre j'y ai trouvé un fichier (Piere) qui est nickel pour certains
prof!!!!!!
Bonjour à tous
Ceci fait suite à mon message « Ajoute automatique d'info dans la première
colonne vide » qui franchement n'a pas eu de succès (ce qui est rare sur
ce
forum)
Je sais que mon problème n'est pas simple à résoudre, M'enfin (comme
disais
l'autre)
Je cherche à créer une solution à un problème scolaire (instituteurs)
J'utilise un logiciel de QCM (création de questions/réponses multichoix)
Je crée une question et je donne plusieurs possibilités de réponses dont
une
seule est valable (le principe des boitiers du jeu du millionnaire)
Ce logiciel enregistre les réponses (et temps de réponse) aux questions
A la fin de la session je peux exporter ces résultats vers un fichier xls
Et cela fonctionne parfaitement
Le problème vient aprés Je me retrouve avec différent fichiers xls
(résultats1, résultats2, résultats3, etc) pour une même classe
Je voudrais faire une compilation de ces fichiers en un seul fichier, et
avoir tous les résultats sur une même feuille
En tenant compte que tous les élèves ne sont pas tous toujours présents
Voici (plus ou moins) ce que le logiciel donne
Nom Score 1 Score 2 Score 3 % réussi
Jean 5 4 8
6.2
Pierre 6 8 6
7
Marie 8 4 9
7
Et dans une session différente les résultats seraient
Nom Score 1 Score 2 % réussi
Jean 7 5 6
André 8 9 8.5
Marie 4 7 5.5
A la suite de quoi je voudrais compiler ces informations en un seul
fichier
Et sur une seule feuille dans le genre
Nom Score 1 Score 2 Score 3 Score 1bis
Score
2bis % réussi
Jean 5 4 8
7 5 5.8
Pierre 6 8 6
Abs Abs 6.5
Marie 8 4 9
4 7 6.4
André Abs Abs Abs 8
9 8.5
Pour ceux qui ne me connaissent pas, je ne cherche pas une solution
complète, mais plutôt quelques coups de pieds dans la bonne direction
Je suppose que je devrais passer par des fonctions index et recherche et
là
je ne encore nul part
Alors j'en appel à vous "Les maîtres, vous qui excellez en Excel"
Au secours! Je suis dans la panade jusqu'au cou
A bientôt et merci à tous
Rex
PS J'ai fait un tour sur Excelabo mais sans succès (ce qui est rare)
Par contre j'y ai trouvé un fichier (Piere) qui est nickel pour certains
prof!!!!!!
Bonjour à tous
Ceci fait suite à mon message « Ajoute automatique d'info dans la première
colonne vide » qui franchement n'a pas eu de succès (ce qui est rare sur
ce
forum)
Je sais que mon problème n'est pas simple à résoudre, M'enfin (comme
disais
l'autre)
Je cherche à créer une solution à un problème scolaire (instituteurs)
J'utilise un logiciel de QCM (création de questions/réponses multichoix)
Je crée une question et je donne plusieurs possibilités de réponses dont
une
seule est valable (le principe des boitiers du jeu du millionnaire)
Ce logiciel enregistre les réponses (et temps de réponse) aux questions
A la fin de la session je peux exporter ces résultats vers un fichier xls
Et cela fonctionne parfaitement
Le problème vient aprés Je me retrouve avec différent fichiers xls
(résultats1, résultats2, résultats3, etc) pour une même classe
Je voudrais faire une compilation de ces fichiers en un seul fichier, et
avoir tous les résultats sur une même feuille
En tenant compte que tous les élèves ne sont pas tous toujours présents
Voici (plus ou moins) ce que le logiciel donne
Nom Score 1 Score 2 Score 3 % réussi
Jean 5 4 8
6.2
Pierre 6 8 6
7
Marie 8 4 9
7
Et dans une session différente les résultats seraient
Nom Score 1 Score 2 % réussi
Jean 7 5 6
André 8 9 8.5
Marie 4 7 5.5
A la suite de quoi je voudrais compiler ces informations en un seul
fichier
Et sur une seule feuille dans le genre
Nom Score 1 Score 2 Score 3 Score 1bis
Score
2bis % réussi
Jean 5 4 8
7 5 5.8
Pierre 6 8 6
Abs Abs 6.5
Marie 8 4 9
4 7 6.4
André Abs Abs Abs 8
9 8.5
Pour ceux qui ne me connaissent pas, je ne cherche pas une solution
complète, mais plutôt quelques coups de pieds dans la bonne direction
Je suppose que je devrais passer par des fonctions index et recherche et
là
je ne encore nul part
Alors j'en appel à vous "Les maîtres, vous qui excellez en Excel"
Au secours! Je suis dans la panade jusqu'au cou
A bientôt et merci à tous
Rex
PS J'ai fait un tour sur Excelabo mais sans succès (ce qui est rare)
Par contre j'y ai trouvé un fichier (Piere) qui est nickel pour certains
prof!!!!!!
Bonjour à tous
Ceci fait suite à mon message « Ajoute automatique d'info dans la première
colonne vide » qui franchement n'a pas eu de succès (ce qui est rare sur
ce
forum)
Je sais que mon problème n'est pas simple à résoudre, M'enfin (comme
disais
l'autre)
Je cherche à créer une solution à un problème scolaire (instituteurs)
J'utilise un logiciel de QCM (création de questions/réponses multichoix)
Je crée une question et je donne plusieurs possibilités de réponses dont
une
seule est valable (le principe des boitiers du jeu du millionnaire)
Ce logiciel enregistre les réponses (et temps de réponse) aux questions
A la fin de la session je peux exporter ces résultats vers un fichier xls
Et cela fonctionne parfaitement
Le problème vient aprés Je me retrouve avec différent fichiers xls
(résultats1, résultats2, résultats3, etc) pour une même classe
Je voudrais faire une compilation de ces fichiers en un seul fichier, et
avoir tous les résultats sur une même feuille
En tenant compte que tous les élèves ne sont pas tous toujours présents
Voici (plus ou moins) ce que le logiciel donne
Nom Score 1 Score 2 Score 3 % réussi
Jean 5 4 8
6.2
Pierre 6 8 6
7
Marie 8 4 9
7
Et dans une session différente les résultats seraient
Nom Score 1 Score 2 % réussi
Jean 7 5 6
André 8 9 8.5
Marie 4 7 5.5
A la suite de quoi je voudrais compiler ces informations en un seul
fichier
Et sur une seule feuille dans le genre
Nom Score 1 Score 2 Score 3 Score 1bis
Score
2bis % réussi
Jean 5 4 8
7 5 5.8
Pierre 6 8 6
Abs Abs 6.5
Marie 8 4 9
4 7 6.4
André Abs Abs Abs 8
9 8.5
Pour ceux qui ne me connaissent pas, je ne cherche pas une solution
complète, mais plutôt quelques coups de pieds dans la bonne direction
Je suppose que je devrais passer par des fonctions index et recherche et
là
je ne encore nul part
Alors j'en appel à vous "Les maîtres, vous qui excellez en Excel"
Au secours! Je suis dans la panade jusqu'au cou
A bientôt et merci à tous
Rex
PS J'ai fait un tour sur Excelabo mais sans succès (ce qui est rare)
Par contre j'y ai trouvé un fichier (Piere) qui est nickel pour certains
prof!!!!!!
Bonjour.
J'ai préféré t'écrire le truc plutôt que de tout expliquer.
Je lis les classeurs situés dans le dossier indiqué par la variable
"Chemin"
(à changer) dans la feuille "Feuil1" d'un classeur intitulé "130505.xls".
Le résultat final se trouve dans la feuille "resultat".
Sub test()
Dim c As Range, Chemin As String, Fichier As String, Ligne As Integer
Dim Plage As Range, Var As Variant, Ctr As Integer, j As Integer
Sheets("Feuil1").Activate
Range("A1").Select
'copie des données des fichiers score dans le classeur "130505.xls"
Chemin = "e:donneesdanielmpfescores" 'chemin à adapter
Fichier = Dir(Chemin)
Do While Fichier <> ""
Workbooks.Open Filename:=Fichier
Range("A1", Range("A1").SpecialCells(xlCellTypeLastCell)).Select
Selection.Resize(Selection.Rows.Count, Selection.Columns.Count -
1).Copy
Workbooks("130505.xls").Activate
ActiveSheet.Paste
Range("A65536").End(xlUp).Offset(1, 0).Select
Workbooks(Fichier).Close
Fichier = Dir
Loop
'Traitement des informations
'Les résultats sont inscrits sur la feuille "Resultats"
Sheets("Resultats").Activate
Range("A1").Value = "Nom"
Range("B1").Value = "Résultat"
Range("C1").Select
For i = 1 To 100
ActiveCell.Value = "Score " & i
ActiveCell.Offset(0, 1).Select
Next
Range("A2").Select
Sheets("Feuil1").Activate
Set Plage = Range("A1", Range("A65536").End(xlUp))
For Each c In Plage
If c.Value <> "Nom" Then
Var = Application.Match(c.Value,
Sheets("Resultats").Range("A:A"), 0)
If Not IsNumeric(Var) Then
Var = Sheets("Resultats").Range("a65536").End(xlUp).Row +
1
Sheets("Resultats").Range("A" & Var) = c.Value
End If
Ctr = 2
Do Until Sheets("Resultats").Range("A" & Var).Offset(0,
Ctr)
= ""
Ctr = Ctr + 1
Loop
j = 1
Do While c.Offset(0, j).Value <> ""
Sheets("Resultats").Range("A" & Var).Offset(0,
Ctr).Value = c.Offset(0, j).Value
j = j + 1
Ctr = Ctr + 1
Loop
End If
Next c
End Sub
Cordialement.
Daniel
"RT" a écrit dans le message de news:
Bonjour à tous
Ceci fait suite à mon message « Ajoute automatique d'info dans la
première
colonne vide » qui franchement n'a pas eu de succès (ce qui est rare sur
ce
forum)
Je sais que mon problème n'est pas simple à résoudre, M'enfin (comme
disais
l'autre)
Je cherche à créer une solution à un problème scolaire (instituteurs)
J'utilise un logiciel de QCM (création de questions/réponses multichoix)
Je crée une question et je donne plusieurs possibilités de réponses dont
une
seule est valable (le principe des boitiers du jeu du millionnaire)
Ce logiciel enregistre les réponses (et temps de réponse) aux questions
A la fin de la session je peux exporter ces résultats vers un fichier
xls
Et cela fonctionne parfaitement
Le problème vient aprés Je me retrouve avec différent fichiers xls
(résultats1, résultats2, résultats3, etc) pour une même classe
Je voudrais faire une compilation de ces fichiers en un seul fichier, et
avoir tous les résultats sur une même feuille
En tenant compte que tous les élèves ne sont pas tous toujours présents
Voici (plus ou moins) ce que le logiciel donne
Nom Score 1 Score 2 Score 3 % réussi
Jean 5 4 8
6.2
Pierre 6 8 6
7
Marie 8 4 9
7
Et dans une session différente les résultats seraient
Nom Score 1 Score 2 % réussi
Jean 7 5 6
André 8 9 8.5
Marie 4 7 5.5
A la suite de quoi je voudrais compiler ces informations en un seul
fichier
Et sur une seule feuille dans le genre
Nom Score 1 Score 2 Score 3 Score 1bis
Score
2bis % réussi
Jean 5 4 8
7 5 5.8
Pierre 6 8 6
Abs Abs 6.5
Marie 8 4 9
4 7 6.4
André Abs Abs Abs 8
9 8.5
Pour ceux qui ne me connaissent pas, je ne cherche pas une solution
complète, mais plutôt quelques coups de pieds dans la bonne direction
Je suppose que je devrais passer par des fonctions index et recherche et
là
je ne encore nul part
Alors j'en appel à vous "Les maîtres, vous qui excellez en Excel"
Au secours! Je suis dans la panade jusqu'au cou
A bientôt et merci à tous
Rex
PS J'ai fait un tour sur Excelabo mais sans succès (ce qui est rare)
Par contre j'y ai trouvé un fichier (Piere) qui est nickel pour certains
prof!!!!!!
Bonjour.
J'ai préféré t'écrire le truc plutôt que de tout expliquer.
Je lis les classeurs situés dans le dossier indiqué par la variable
"Chemin"
(à changer) dans la feuille "Feuil1" d'un classeur intitulé "130505.xls".
Le résultat final se trouve dans la feuille "resultat".
Sub test()
Dim c As Range, Chemin As String, Fichier As String, Ligne As Integer
Dim Plage As Range, Var As Variant, Ctr As Integer, j As Integer
Sheets("Feuil1").Activate
Range("A1").Select
'copie des données des fichiers score dans le classeur "130505.xls"
Chemin = "e:donneesdanielmpfescores" 'chemin à adapter
Fichier = Dir(Chemin)
Do While Fichier <> ""
Workbooks.Open Filename:=Fichier
Range("A1", Range("A1").SpecialCells(xlCellTypeLastCell)).Select
Selection.Resize(Selection.Rows.Count, Selection.Columns.Count -
1).Copy
Workbooks("130505.xls").Activate
ActiveSheet.Paste
Range("A65536").End(xlUp).Offset(1, 0).Select
Workbooks(Fichier).Close
Fichier = Dir
Loop
'Traitement des informations
'Les résultats sont inscrits sur la feuille "Resultats"
Sheets("Resultats").Activate
Range("A1").Value = "Nom"
Range("B1").Value = "Résultat"
Range("C1").Select
For i = 1 To 100
ActiveCell.Value = "Score " & i
ActiveCell.Offset(0, 1).Select
Next
Range("A2").Select
Sheets("Feuil1").Activate
Set Plage = Range("A1", Range("A65536").End(xlUp))
For Each c In Plage
If c.Value <> "Nom" Then
Var = Application.Match(c.Value,
Sheets("Resultats").Range("A:A"), 0)
If Not IsNumeric(Var) Then
Var = Sheets("Resultats").Range("a65536").End(xlUp).Row +
1
Sheets("Resultats").Range("A" & Var) = c.Value
End If
Ctr = 2
Do Until Sheets("Resultats").Range("A" & Var).Offset(0,
Ctr)
= ""
Ctr = Ctr + 1
Loop
j = 1
Do While c.Offset(0, j).Value <> ""
Sheets("Resultats").Range("A" & Var).Offset(0,
Ctr).Value = c.Offset(0, j).Value
j = j + 1
Ctr = Ctr + 1
Loop
End If
Next c
End Sub
Cordialement.
Daniel
"RT" <rthsopmapmson@softscreen.be> a écrit dans le message de news:
uQUucb5VFHA.1508@tk2msftngp13.phx.gbl...
Bonjour à tous
Ceci fait suite à mon message « Ajoute automatique d'info dans la
première
colonne vide » qui franchement n'a pas eu de succès (ce qui est rare sur
ce
forum)
Je sais que mon problème n'est pas simple à résoudre, M'enfin (comme
disais
l'autre)
Je cherche à créer une solution à un problème scolaire (instituteurs)
J'utilise un logiciel de QCM (création de questions/réponses multichoix)
Je crée une question et je donne plusieurs possibilités de réponses dont
une
seule est valable (le principe des boitiers du jeu du millionnaire)
Ce logiciel enregistre les réponses (et temps de réponse) aux questions
A la fin de la session je peux exporter ces résultats vers un fichier
xls
Et cela fonctionne parfaitement
Le problème vient aprés Je me retrouve avec différent fichiers xls
(résultats1, résultats2, résultats3, etc) pour une même classe
Je voudrais faire une compilation de ces fichiers en un seul fichier, et
avoir tous les résultats sur une même feuille
En tenant compte que tous les élèves ne sont pas tous toujours présents
Voici (plus ou moins) ce que le logiciel donne
Nom Score 1 Score 2 Score 3 % réussi
Jean 5 4 8
6.2
Pierre 6 8 6
7
Marie 8 4 9
7
Et dans une session différente les résultats seraient
Nom Score 1 Score 2 % réussi
Jean 7 5 6
André 8 9 8.5
Marie 4 7 5.5
A la suite de quoi je voudrais compiler ces informations en un seul
fichier
Et sur une seule feuille dans le genre
Nom Score 1 Score 2 Score 3 Score 1bis
Score
2bis % réussi
Jean 5 4 8
7 5 5.8
Pierre 6 8 6
Abs Abs 6.5
Marie 8 4 9
4 7 6.4
André Abs Abs Abs 8
9 8.5
Pour ceux qui ne me connaissent pas, je ne cherche pas une solution
complète, mais plutôt quelques coups de pieds dans la bonne direction
Je suppose que je devrais passer par des fonctions index et recherche et
là
je ne encore nul part
Alors j'en appel à vous "Les maîtres, vous qui excellez en Excel"
Au secours! Je suis dans la panade jusqu'au cou
A bientôt et merci à tous
Rex
PS J'ai fait un tour sur Excelabo mais sans succès (ce qui est rare)
Par contre j'y ai trouvé un fichier (Piere) qui est nickel pour certains
prof!!!!!!
Bonjour.
J'ai préféré t'écrire le truc plutôt que de tout expliquer.
Je lis les classeurs situés dans le dossier indiqué par la variable
"Chemin"
(à changer) dans la feuille "Feuil1" d'un classeur intitulé "130505.xls".
Le résultat final se trouve dans la feuille "resultat".
Sub test()
Dim c As Range, Chemin As String, Fichier As String, Ligne As Integer
Dim Plage As Range, Var As Variant, Ctr As Integer, j As Integer
Sheets("Feuil1").Activate
Range("A1").Select
'copie des données des fichiers score dans le classeur "130505.xls"
Chemin = "e:donneesdanielmpfescores" 'chemin à adapter
Fichier = Dir(Chemin)
Do While Fichier <> ""
Workbooks.Open Filename:=Fichier
Range("A1", Range("A1").SpecialCells(xlCellTypeLastCell)).Select
Selection.Resize(Selection.Rows.Count, Selection.Columns.Count -
1).Copy
Workbooks("130505.xls").Activate
ActiveSheet.Paste
Range("A65536").End(xlUp).Offset(1, 0).Select
Workbooks(Fichier).Close
Fichier = Dir
Loop
'Traitement des informations
'Les résultats sont inscrits sur la feuille "Resultats"
Sheets("Resultats").Activate
Range("A1").Value = "Nom"
Range("B1").Value = "Résultat"
Range("C1").Select
For i = 1 To 100
ActiveCell.Value = "Score " & i
ActiveCell.Offset(0, 1).Select
Next
Range("A2").Select
Sheets("Feuil1").Activate
Set Plage = Range("A1", Range("A65536").End(xlUp))
For Each c In Plage
If c.Value <> "Nom" Then
Var = Application.Match(c.Value,
Sheets("Resultats").Range("A:A"), 0)
If Not IsNumeric(Var) Then
Var = Sheets("Resultats").Range("a65536").End(xlUp).Row +
1
Sheets("Resultats").Range("A" & Var) = c.Value
End If
Ctr = 2
Do Until Sheets("Resultats").Range("A" & Var).Offset(0,
Ctr)
= ""
Ctr = Ctr + 1
Loop
j = 1
Do While c.Offset(0, j).Value <> ""
Sheets("Resultats").Range("A" & Var).Offset(0,
Ctr).Value = c.Offset(0, j).Value
j = j + 1
Ctr = Ctr + 1
Loop
End If
Next c
End Sub
Cordialement.
Daniel
"RT" a écrit dans le message de news:
Bonjour à tous
Ceci fait suite à mon message « Ajoute automatique d'info dans la
première
colonne vide » qui franchement n'a pas eu de succès (ce qui est rare sur
ce
forum)
Je sais que mon problème n'est pas simple à résoudre, M'enfin (comme
disais
l'autre)
Je cherche à créer une solution à un problème scolaire (instituteurs)
J'utilise un logiciel de QCM (création de questions/réponses multichoix)
Je crée une question et je donne plusieurs possibilités de réponses dont
une
seule est valable (le principe des boitiers du jeu du millionnaire)
Ce logiciel enregistre les réponses (et temps de réponse) aux questions
A la fin de la session je peux exporter ces résultats vers un fichier
xls
Et cela fonctionne parfaitement
Le problème vient aprés Je me retrouve avec différent fichiers xls
(résultats1, résultats2, résultats3, etc) pour une même classe
Je voudrais faire une compilation de ces fichiers en un seul fichier, et
avoir tous les résultats sur une même feuille
En tenant compte que tous les élèves ne sont pas tous toujours présents
Voici (plus ou moins) ce que le logiciel donne
Nom Score 1 Score 2 Score 3 % réussi
Jean 5 4 8
6.2
Pierre 6 8 6
7
Marie 8 4 9
7
Et dans une session différente les résultats seraient
Nom Score 1 Score 2 % réussi
Jean 7 5 6
André 8 9 8.5
Marie 4 7 5.5
A la suite de quoi je voudrais compiler ces informations en un seul
fichier
Et sur une seule feuille dans le genre
Nom Score 1 Score 2 Score 3 Score 1bis
Score
2bis % réussi
Jean 5 4 8
7 5 5.8
Pierre 6 8 6
Abs Abs 6.5
Marie 8 4 9
4 7 6.4
André Abs Abs Abs 8
9 8.5
Pour ceux qui ne me connaissent pas, je ne cherche pas une solution
complète, mais plutôt quelques coups de pieds dans la bonne direction
Je suppose que je devrais passer par des fonctions index et recherche et
là
je ne encore nul part
Alors j'en appel à vous "Les maîtres, vous qui excellez en Excel"
Au secours! Je suis dans la panade jusqu'au cou
A bientôt et merci à tous
Rex
PS J'ai fait un tour sur Excelabo mais sans succès (ce qui est rare)
Par contre j'y ai trouvé un fichier (Piere) qui est nickel pour certains
prof!!!!!!
Bonjour.
J'ai préféré t'écrire le truc plutôt que de tout expliquer.
Je lis les classeurs situés dans le dossier indiqué par la variable
"Chemin"
(à changer) dans la feuille "Feuil1" d'un classeur intitulé "130505.xls".
Le résultat final se trouve dans la feuille "resultat".
Sub test()
Dim c As Range, Chemin As String, Fichier As String, Ligne As Integer
Dim Plage As Range, Var As Variant, Ctr As Integer, j As Integer
Sheets("Feuil1").Activate
Range("A1").Select
'copie des données des fichiers score dans le classeur "130505.xls"
Chemin = "e:donneesdanielmpfescores" 'chemin à adapter
Fichier = Dir(Chemin)
Do While Fichier <> ""
Workbooks.Open Filename:=Fichier
Range("A1", Range("A1").SpecialCells(xlCellTypeLastCell)).Select
Selection.Resize(Selection.Rows.Count, Selection.Columns.Count -
1).Copy
Workbooks("130505.xls").Activate
ActiveSheet.Paste
Range("A65536").End(xlUp).Offset(1, 0).Select
Workbooks(Fichier).Close
Fichier = Dir
Loop
'Traitement des informations
'Les résultats sont inscrits sur la feuille "Resultats"
Sheets("Resultats").Activate
Range("A1").Value = "Nom"
Range("B1").Value = "Résultat"
Range("C1").Select
For i = 1 To 100
ActiveCell.Value = "Score " & i
ActiveCell.Offset(0, 1).Select
Next
Range("A2").Select
Sheets("Feuil1").Activate
Set Plage = Range("A1", Range("A65536").End(xlUp))
For Each c In Plage
If c.Value <> "Nom" Then
Var = Application.Match(c.Value,
Sheets("Resultats").Range("A:A"), 0)
If Not IsNumeric(Var) Then
Var = Sheets("Resultats").Range("a65536").End(xlUp).Row +
1
Sheets("Resultats").Range("A" & Var) = c.Value
End If
Ctr = 2
Do Until Sheets("Resultats").Range("A" & Var).Offset(0,
Ctr)
= ""
Ctr = Ctr + 1
Loop
j = 1
Do While c.Offset(0, j).Value <> ""
Sheets("Resultats").Range("A" & Var).Offset(0,
Ctr).Value = c.Offset(0, j).Value
j = j + 1
Ctr = Ctr + 1
Loop
End If
Next c
End Sub
Cordialement.
Daniel
"RT" a écrit dans le message de news:
Bonjour à tous
Ceci fait suite à mon message « Ajoute automatique d'info dans la
première
colonne vide » qui franchement n'a pas eu de succès (ce qui est rare sur
ce
forum)
Je sais que mon problème n'est pas simple à résoudre, M'enfin (comme
disais
l'autre)
Je cherche à créer une solution à un problème scolaire (instituteurs)
J'utilise un logiciel de QCM (création de questions/réponses multichoix)
Je crée une question et je donne plusieurs possibilités de réponses dont
une
seule est valable (le principe des boitiers du jeu du millionnaire)
Ce logiciel enregistre les réponses (et temps de réponse) aux questions
A la fin de la session je peux exporter ces résultats vers un fichier
xls
Et cela fonctionne parfaitement
Le problème vient aprés Je me retrouve avec différent fichiers xls
(résultats1, résultats2, résultats3, etc) pour une même classe
Je voudrais faire une compilation de ces fichiers en un seul fichier, et
avoir tous les résultats sur une même feuille
En tenant compte que tous les élèves ne sont pas tous toujours présents
Voici (plus ou moins) ce que le logiciel donne
Nom Score 1 Score 2 Score 3 % réussi
Jean 5 4 8
6.2
Pierre 6 8 6
7
Marie 8 4 9
7
Et dans une session différente les résultats seraient
Nom Score 1 Score 2 % réussi
Jean 7 5 6
André 8 9 8.5
Marie 4 7 5.5
A la suite de quoi je voudrais compiler ces informations en un seul
fichier
Et sur une seule feuille dans le genre
Nom Score 1 Score 2 Score 3 Score 1bis
Score
2bis % réussi
Jean 5 4 8
7 5 5.8
Pierre 6 8 6
Abs Abs 6.5
Marie 8 4 9
4 7 6.4
André Abs Abs Abs 8
9 8.5
Pour ceux qui ne me connaissent pas, je ne cherche pas une solution
complète, mais plutôt quelques coups de pieds dans la bonne direction
Je suppose que je devrais passer par des fonctions index et recherche et
là
je ne encore nul part
Alors j'en appel à vous "Les maîtres, vous qui excellez en Excel"
Au secours! Je suis dans la panade jusqu'au cou
A bientôt et merci à tous
Rex
PS J'ai fait un tour sur Excelabo mais sans succès (ce qui est rare)
Par contre j'y ai trouvé un fichier (Piere) qui est nickel pour certains
prof!!!!!!
Bonjour.
J'ai préféré t'écrire le truc plutôt que de tout expliquer.
Je lis les classeurs situés dans le dossier indiqué par la variable
"Chemin"
(à changer) dans la feuille "Feuil1" d'un classeur intitulé "130505.xls".
Le résultat final se trouve dans la feuille "resultat".
Sub test()
Dim c As Range, Chemin As String, Fichier As String, Ligne As Integer
Dim Plage As Range, Var As Variant, Ctr As Integer, j As Integer
Sheets("Feuil1").Activate
Range("A1").Select
'copie des données des fichiers score dans le classeur "130505.xls"
Chemin = "e:donneesdanielmpfescores" 'chemin à adapter
Fichier = Dir(Chemin)
Do While Fichier <> ""
Workbooks.Open Filename:=Fichier
Range("A1", Range("A1").SpecialCells(xlCellTypeLastCell)).Select
Selection.Resize(Selection.Rows.Count, Selection.Columns.Count -
1).Copy
Workbooks("130505.xls").Activate
ActiveSheet.Paste
Range("A65536").End(xlUp).Offset(1, 0).Select
Workbooks(Fichier).Close
Fichier = Dir
Loop
'Traitement des informations
'Les résultats sont inscrits sur la feuille "Resultats"
Sheets("Resultats").Activate
Range("A1").Value = "Nom"
Range("B1").Value = "Résultat"
Range("C1").Select
For i = 1 To 100
ActiveCell.Value = "Score " & i
ActiveCell.Offset(0, 1).Select
Next
Range("A2").Select
Sheets("Feuil1").Activate
Set Plage = Range("A1", Range("A65536").End(xlUp))
For Each c In Plage
If c.Value <> "Nom" Then
Var = Application.Match(c.Value,
Sheets("Resultats").Range("A:A"), 0)
If Not IsNumeric(Var) Then
Var = Sheets("Resultats").Range("a65536").End(xlUp).Row +
1
Sheets("Resultats").Range("A" & Var) = c.Value
End If
Ctr = 2
Do Until Sheets("Resultats").Range("A" & Var).Offset(0,
Ctr)
= ""
Ctr = Ctr + 1
Loop
j = 1
Do While c.Offset(0, j).Value <> ""
Sheets("Resultats").Range("A" & Var).Offset(0,
Ctr).Value = c.Offset(0, j).Value
j = j + 1
Ctr = Ctr + 1
Loop
End If
Next c
End Sub
Cordialement.
Daniel
"RT" <rthsopmapmson@softscreen.be> a écrit dans le message de news:
uQUucb5VFHA.1508@tk2msftngp13.phx.gbl...
Bonjour à tous
Ceci fait suite à mon message « Ajoute automatique d'info dans la
première
colonne vide » qui franchement n'a pas eu de succès (ce qui est rare sur
ce
forum)
Je sais que mon problème n'est pas simple à résoudre, M'enfin (comme
disais
l'autre)
Je cherche à créer une solution à un problème scolaire (instituteurs)
J'utilise un logiciel de QCM (création de questions/réponses multichoix)
Je crée une question et je donne plusieurs possibilités de réponses dont
une
seule est valable (le principe des boitiers du jeu du millionnaire)
Ce logiciel enregistre les réponses (et temps de réponse) aux questions
A la fin de la session je peux exporter ces résultats vers un fichier
xls
Et cela fonctionne parfaitement
Le problème vient aprés Je me retrouve avec différent fichiers xls
(résultats1, résultats2, résultats3, etc) pour une même classe
Je voudrais faire une compilation de ces fichiers en un seul fichier, et
avoir tous les résultats sur une même feuille
En tenant compte que tous les élèves ne sont pas tous toujours présents
Voici (plus ou moins) ce que le logiciel donne
Nom Score 1 Score 2 Score 3 % réussi
Jean 5 4 8
6.2
Pierre 6 8 6
7
Marie 8 4 9
7
Et dans une session différente les résultats seraient
Nom Score 1 Score 2 % réussi
Jean 7 5 6
André 8 9 8.5
Marie 4 7 5.5
A la suite de quoi je voudrais compiler ces informations en un seul
fichier
Et sur une seule feuille dans le genre
Nom Score 1 Score 2 Score 3 Score 1bis
Score
2bis % réussi
Jean 5 4 8
7 5 5.8
Pierre 6 8 6
Abs Abs 6.5
Marie 8 4 9
4 7 6.4
André Abs Abs Abs 8
9 8.5
Pour ceux qui ne me connaissent pas, je ne cherche pas une solution
complète, mais plutôt quelques coups de pieds dans la bonne direction
Je suppose que je devrais passer par des fonctions index et recherche et
là
je ne encore nul part
Alors j'en appel à vous "Les maîtres, vous qui excellez en Excel"
Au secours! Je suis dans la panade jusqu'au cou
A bientôt et merci à tous
Rex
PS J'ai fait un tour sur Excelabo mais sans succès (ce qui est rare)
Par contre j'y ai trouvé un fichier (Piere) qui est nickel pour certains
prof!!!!!!
Bonjour.
J'ai préféré t'écrire le truc plutôt que de tout expliquer.
Je lis les classeurs situés dans le dossier indiqué par la variable
"Chemin"
(à changer) dans la feuille "Feuil1" d'un classeur intitulé "130505.xls".
Le résultat final se trouve dans la feuille "resultat".
Sub test()
Dim c As Range, Chemin As String, Fichier As String, Ligne As Integer
Dim Plage As Range, Var As Variant, Ctr As Integer, j As Integer
Sheets("Feuil1").Activate
Range("A1").Select
'copie des données des fichiers score dans le classeur "130505.xls"
Chemin = "e:donneesdanielmpfescores" 'chemin à adapter
Fichier = Dir(Chemin)
Do While Fichier <> ""
Workbooks.Open Filename:=Fichier
Range("A1", Range("A1").SpecialCells(xlCellTypeLastCell)).Select
Selection.Resize(Selection.Rows.Count, Selection.Columns.Count -
1).Copy
Workbooks("130505.xls").Activate
ActiveSheet.Paste
Range("A65536").End(xlUp).Offset(1, 0).Select
Workbooks(Fichier).Close
Fichier = Dir
Loop
'Traitement des informations
'Les résultats sont inscrits sur la feuille "Resultats"
Sheets("Resultats").Activate
Range("A1").Value = "Nom"
Range("B1").Value = "Résultat"
Range("C1").Select
For i = 1 To 100
ActiveCell.Value = "Score " & i
ActiveCell.Offset(0, 1).Select
Next
Range("A2").Select
Sheets("Feuil1").Activate
Set Plage = Range("A1", Range("A65536").End(xlUp))
For Each c In Plage
If c.Value <> "Nom" Then
Var = Application.Match(c.Value,
Sheets("Resultats").Range("A:A"), 0)
If Not IsNumeric(Var) Then
Var = Sheets("Resultats").Range("a65536").End(xlUp).Row +
1
Sheets("Resultats").Range("A" & Var) = c.Value
End If
Ctr = 2
Do Until Sheets("Resultats").Range("A" & Var).Offset(0,
Ctr)
= ""
Ctr = Ctr + 1
Loop
j = 1
Do While c.Offset(0, j).Value <> ""
Sheets("Resultats").Range("A" & Var).Offset(0,
Ctr).Value = c.Offset(0, j).Value
j = j + 1
Ctr = Ctr + 1
Loop
End If
Next c
End Sub
Cordialement.
Daniel
"RT" a écrit dans le message de news:
Bonjour à tous
Ceci fait suite à mon message « Ajoute automatique d'info dans la
première
colonne vide » qui franchement n'a pas eu de succès (ce qui est rare sur
ce
forum)
Je sais que mon problème n'est pas simple à résoudre, M'enfin (comme
disais
l'autre)
Je cherche à créer une solution à un problème scolaire (instituteurs)
J'utilise un logiciel de QCM (création de questions/réponses multichoix)
Je crée une question et je donne plusieurs possibilités de réponses dont
une
seule est valable (le principe des boitiers du jeu du millionnaire)
Ce logiciel enregistre les réponses (et temps de réponse) aux questions
A la fin de la session je peux exporter ces résultats vers un fichier
xls
Et cela fonctionne parfaitement
Le problème vient aprés Je me retrouve avec différent fichiers xls
(résultats1, résultats2, résultats3, etc) pour une même classe
Je voudrais faire une compilation de ces fichiers en un seul fichier, et
avoir tous les résultats sur une même feuille
En tenant compte que tous les élèves ne sont pas tous toujours présents
Voici (plus ou moins) ce que le logiciel donne
Nom Score 1 Score 2 Score 3 % réussi
Jean 5 4 8
6.2
Pierre 6 8 6
7
Marie 8 4 9
7
Et dans une session différente les résultats seraient
Nom Score 1 Score 2 % réussi
Jean 7 5 6
André 8 9 8.5
Marie 4 7 5.5
A la suite de quoi je voudrais compiler ces informations en un seul
fichier
Et sur une seule feuille dans le genre
Nom Score 1 Score 2 Score 3 Score 1bis
Score
2bis % réussi
Jean 5 4 8
7 5 5.8
Pierre 6 8 6
Abs Abs 6.5
Marie 8 4 9
4 7 6.4
André Abs Abs Abs 8
9 8.5
Pour ceux qui ne me connaissent pas, je ne cherche pas une solution
complète, mais plutôt quelques coups de pieds dans la bonne direction
Je suppose que je devrais passer par des fonctions index et recherche et
là
je ne encore nul part
Alors j'en appel à vous "Les maîtres, vous qui excellez en Excel"
Au secours! Je suis dans la panade jusqu'au cou
A bientôt et merci à tous
Rex
PS J'ai fait un tour sur Excelabo mais sans succès (ce qui est rare)
Par contre j'y ai trouvé un fichier (Piere) qui est nickel pour certains
prof!!!!!!
Bonjour Daniel
Je sais nous sommes dimanche
Mais j'ai enfin une paire d'heures pour essayer ton code
Chez moi il bloque sur les lignes
Sheets("Resultats").Range("A:A"), 0)
If Not IsNumeric(Var) Then
Var = Sheets("Resultats").Range("a65536").End(xlUp).Row + 1
Sheets("Resultats").Range("A" & Var) = c.Value
End If
Message d'erreur
""Propriété ou methode non géré par cet objet""
et la ligne Var=Sheets et en jaune
Si tu es en ligne et que ceci te dis quelque chose
Ou si quelqu'un d'autre a une idée
UN TOUT GRAND MERCI
Et à bientôt
Rex
"Daniel" a écrit dans le message news:Bonjour.
J'ai préféré t'écrire le truc plutôt que de tout expliquer.
Je lis les classeurs situés dans le dossier indiqué par la variable
"Chemin"(à changer) dans la feuille "Feuil1" d'un classeur intitulé "130505.xls".
Le résultat final se trouve dans la feuille "resultat".
Sub test()
Dim c As Range, Chemin As String, Fichier As String, Ligne As Integer
Dim Plage As Range, Var As Variant, Ctr As Integer, j As Integer
Sheets("Feuil1").Activate
Range("A1").Select
'copie des données des fichiers score dans le classeur "130505.xls"
Chemin = "e:donneesdanielmpfescores" 'chemin à adapter
Fichier = Dir(Chemin)
Do While Fichier <> ""
Workbooks.Open Filename:=Fichier
Range("A1", Range("A1").SpecialCells(xlCellTypeLastCell)).Select
Selection.Resize(Selection.Rows.Count, Selection.Columns.Count -
1).Copy
Workbooks("130505.xls").Activate
ActiveSheet.Paste
Range("A65536").End(xlUp).Offset(1, 0).Select
Workbooks(Fichier).Close
Fichier = Dir
Loop
'Traitement des informations
'Les résultats sont inscrits sur la feuille "Resultats"
Sheets("Resultats").Activate
Range("A1").Value = "Nom"
Range("B1").Value = "Résultat"
Range("C1").Select
For i = 1 To 100
ActiveCell.Value = "Score " & i
ActiveCell.Offset(0, 1).Select
Next
Range("A2").Select
Sheets("Feuil1").Activate
Set Plage = Range("A1", Range("A65536").End(xlUp))
For Each c In Plage
If c.Value <> "Nom" Then
Var = Application.Match(c.Value,
Sheets("Resultats").Range("A:A"), 0)
If Not IsNumeric(Var) Then
Var = Sheets("Resultats").Range("a65536").End(xlUp).Row +
1Sheets("Resultats").Range("A" & Var) = c.Value
End If
Ctr = 2
Do Until Sheets("Resultats").Range("A" & Var).Offset(0,
Ctr)= ""
Ctr = Ctr + 1
Loop
j = 1
Do While c.Offset(0, j).Value <> ""
Sheets("Resultats").Range("A" & Var).Offset(0,
Ctr).Value = c.Offset(0, j).Value
j = j + 1
Ctr = Ctr + 1
Loop
End If
Next c
End Sub
Cordialement.
Daniel
"RT" a écrit dans le message de news:
Bonjour à tous
Ceci fait suite à mon message « Ajoute automatique d'info dans la
premièrecolonne vide » qui franchement n'a pas eu de succès (ce qui est rare
sur
ce
forum)
Je sais que mon problème n'est pas simple à résoudre, M'enfin (comme
disais
l'autre)
Je cherche à créer une solution à un problème scolaire (instituteurs)
J'utilise un logiciel de QCM (création de questions/réponses
multichoix)
Je crée une question et je donne plusieurs possibilités de réponses
dont
une
seule est valable (le principe des boitiers du jeu du millionnaire)
Ce logiciel enregistre les réponses (et temps de réponse) aux questions
A la fin de la session je peux exporter ces résultats vers un fichier
xlsEt cela fonctionne parfaitement
Le problème vient aprés Je me retrouve avec différent fichiers xls
(résultats1, résultats2, résultats3, etc) pour une même classe
Je voudrais faire une compilation de ces fichiers en un seul fichier,
et
avoir tous les résultats sur une même feuille
En tenant compte que tous les élèves ne sont pas tous toujours présents
Voici (plus ou moins) ce que le logiciel donne
Nom Score 1 Score 2 Score 3 % réussi
Jean 5 4 8
6.2
Pierre 6 8 6
7
Marie 8 4 9
7
Et dans une session différente les résultats seraient
Nom Score 1 Score 2 % réussi
Jean 7 5 6
André 8 9 8.5
Marie 4 7 5.5
A la suite de quoi je voudrais compiler ces informations en un seul
fichier
Et sur une seule feuille dans le genre
Nom Score 1 Score 2 Score 3 Score 1bis
Score
2bis % réussi
Jean 5 4 8
7 5 5.8
Pierre 6 8 6
Abs Abs 6.5
Marie 8 4 9
4 7 6.4
André Abs Abs Abs 8
9 8.5
Pour ceux qui ne me connaissent pas, je ne cherche pas une solution
complète, mais plutôt quelques coups de pieds dans la bonne direction
Je suppose que je devrais passer par des fonctions index et recherche
et
là
je ne encore nul part
Alors j'en appel à vous "Les maîtres, vous qui excellez en Excel"
Au secours! Je suis dans la panade jusqu'au cou
A bientôt et merci à tous
Rex
PS J'ai fait un tour sur Excelabo mais sans succès (ce qui est rare)
Par contre j'y ai trouvé un fichier (Piere) qui est nickel pour
certains
prof!!!!!!
Bonjour Daniel
Je sais nous sommes dimanche
Mais j'ai enfin une paire d'heures pour essayer ton code
Chez moi il bloque sur les lignes
Sheets("Resultats").Range("A:A"), 0)
If Not IsNumeric(Var) Then
Var = Sheets("Resultats").Range("a65536").End(xlUp).Row + 1
Sheets("Resultats").Range("A" & Var) = c.Value
End If
Message d'erreur
""Propriété ou methode non géré par cet objet""
et la ligne Var=Sheets et en jaune
Si tu es en ligne et que ceci te dis quelque chose
Ou si quelqu'un d'autre a une idée
UN TOUT GRAND MERCI
Et à bientôt
Rex
"Daniel" <dZZZcolardelle@free.fr> a écrit dans le message news:
udlFrK8VFHA.2768@tk2msftngp13.phx.gbl...
Bonjour.
J'ai préféré t'écrire le truc plutôt que de tout expliquer.
Je lis les classeurs situés dans le dossier indiqué par la variable
"Chemin"
(à changer) dans la feuille "Feuil1" d'un classeur intitulé "130505.xls".
Le résultat final se trouve dans la feuille "resultat".
Sub test()
Dim c As Range, Chemin As String, Fichier As String, Ligne As Integer
Dim Plage As Range, Var As Variant, Ctr As Integer, j As Integer
Sheets("Feuil1").Activate
Range("A1").Select
'copie des données des fichiers score dans le classeur "130505.xls"
Chemin = "e:donneesdanielmpfescores" 'chemin à adapter
Fichier = Dir(Chemin)
Do While Fichier <> ""
Workbooks.Open Filename:=Fichier
Range("A1", Range("A1").SpecialCells(xlCellTypeLastCell)).Select
Selection.Resize(Selection.Rows.Count, Selection.Columns.Count -
1).Copy
Workbooks("130505.xls").Activate
ActiveSheet.Paste
Range("A65536").End(xlUp).Offset(1, 0).Select
Workbooks(Fichier).Close
Fichier = Dir
Loop
'Traitement des informations
'Les résultats sont inscrits sur la feuille "Resultats"
Sheets("Resultats").Activate
Range("A1").Value = "Nom"
Range("B1").Value = "Résultat"
Range("C1").Select
For i = 1 To 100
ActiveCell.Value = "Score " & i
ActiveCell.Offset(0, 1).Select
Next
Range("A2").Select
Sheets("Feuil1").Activate
Set Plage = Range("A1", Range("A65536").End(xlUp))
For Each c In Plage
If c.Value <> "Nom" Then
Var = Application.Match(c.Value,
Sheets("Resultats").Range("A:A"), 0)
If Not IsNumeric(Var) Then
Var = Sheets("Resultats").Range("a65536").End(xlUp).Row +
1
Sheets("Resultats").Range("A" & Var) = c.Value
End If
Ctr = 2
Do Until Sheets("Resultats").Range("A" & Var).Offset(0,
Ctr)
= ""
Ctr = Ctr + 1
Loop
j = 1
Do While c.Offset(0, j).Value <> ""
Sheets("Resultats").Range("A" & Var).Offset(0,
Ctr).Value = c.Offset(0, j).Value
j = j + 1
Ctr = Ctr + 1
Loop
End If
Next c
End Sub
Cordialement.
Daniel
"RT" <rthsopmapmson@softscreen.be> a écrit dans le message de news:
uQUucb5VFHA.1508@tk2msftngp13.phx.gbl...
Bonjour à tous
Ceci fait suite à mon message « Ajoute automatique d'info dans la
première
colonne vide » qui franchement n'a pas eu de succès (ce qui est rare
sur
ce
forum)
Je sais que mon problème n'est pas simple à résoudre, M'enfin (comme
disais
l'autre)
Je cherche à créer une solution à un problème scolaire (instituteurs)
J'utilise un logiciel de QCM (création de questions/réponses
multichoix)
Je crée une question et je donne plusieurs possibilités de réponses
dont
une
seule est valable (le principe des boitiers du jeu du millionnaire)
Ce logiciel enregistre les réponses (et temps de réponse) aux questions
A la fin de la session je peux exporter ces résultats vers un fichier
xls
Et cela fonctionne parfaitement
Le problème vient aprés Je me retrouve avec différent fichiers xls
(résultats1, résultats2, résultats3, etc) pour une même classe
Je voudrais faire une compilation de ces fichiers en un seul fichier,
et
avoir tous les résultats sur une même feuille
En tenant compte que tous les élèves ne sont pas tous toujours présents
Voici (plus ou moins) ce que le logiciel donne
Nom Score 1 Score 2 Score 3 % réussi
Jean 5 4 8
6.2
Pierre 6 8 6
7
Marie 8 4 9
7
Et dans une session différente les résultats seraient
Nom Score 1 Score 2 % réussi
Jean 7 5 6
André 8 9 8.5
Marie 4 7 5.5
A la suite de quoi je voudrais compiler ces informations en un seul
fichier
Et sur une seule feuille dans le genre
Nom Score 1 Score 2 Score 3 Score 1bis
Score
2bis % réussi
Jean 5 4 8
7 5 5.8
Pierre 6 8 6
Abs Abs 6.5
Marie 8 4 9
4 7 6.4
André Abs Abs Abs 8
9 8.5
Pour ceux qui ne me connaissent pas, je ne cherche pas une solution
complète, mais plutôt quelques coups de pieds dans la bonne direction
Je suppose que je devrais passer par des fonctions index et recherche
et
là
je ne encore nul part
Alors j'en appel à vous "Les maîtres, vous qui excellez en Excel"
Au secours! Je suis dans la panade jusqu'au cou
A bientôt et merci à tous
Rex
PS J'ai fait un tour sur Excelabo mais sans succès (ce qui est rare)
Par contre j'y ai trouvé un fichier (Piere) qui est nickel pour
certains
prof!!!!!!
Bonjour Daniel
Je sais nous sommes dimanche
Mais j'ai enfin une paire d'heures pour essayer ton code
Chez moi il bloque sur les lignes
Sheets("Resultats").Range("A:A"), 0)
If Not IsNumeric(Var) Then
Var = Sheets("Resultats").Range("a65536").End(xlUp).Row + 1
Sheets("Resultats").Range("A" & Var) = c.Value
End If
Message d'erreur
""Propriété ou methode non géré par cet objet""
et la ligne Var=Sheets et en jaune
Si tu es en ligne et que ceci te dis quelque chose
Ou si quelqu'un d'autre a une idée
UN TOUT GRAND MERCI
Et à bientôt
Rex
"Daniel" a écrit dans le message news:Bonjour.
J'ai préféré t'écrire le truc plutôt que de tout expliquer.
Je lis les classeurs situés dans le dossier indiqué par la variable
"Chemin"(à changer) dans la feuille "Feuil1" d'un classeur intitulé "130505.xls".
Le résultat final se trouve dans la feuille "resultat".
Sub test()
Dim c As Range, Chemin As String, Fichier As String, Ligne As Integer
Dim Plage As Range, Var As Variant, Ctr As Integer, j As Integer
Sheets("Feuil1").Activate
Range("A1").Select
'copie des données des fichiers score dans le classeur "130505.xls"
Chemin = "e:donneesdanielmpfescores" 'chemin à adapter
Fichier = Dir(Chemin)
Do While Fichier <> ""
Workbooks.Open Filename:=Fichier
Range("A1", Range("A1").SpecialCells(xlCellTypeLastCell)).Select
Selection.Resize(Selection.Rows.Count, Selection.Columns.Count -
1).Copy
Workbooks("130505.xls").Activate
ActiveSheet.Paste
Range("A65536").End(xlUp).Offset(1, 0).Select
Workbooks(Fichier).Close
Fichier = Dir
Loop
'Traitement des informations
'Les résultats sont inscrits sur la feuille "Resultats"
Sheets("Resultats").Activate
Range("A1").Value = "Nom"
Range("B1").Value = "Résultat"
Range("C1").Select
For i = 1 To 100
ActiveCell.Value = "Score " & i
ActiveCell.Offset(0, 1).Select
Next
Range("A2").Select
Sheets("Feuil1").Activate
Set Plage = Range("A1", Range("A65536").End(xlUp))
For Each c In Plage
If c.Value <> "Nom" Then
Var = Application.Match(c.Value,
Sheets("Resultats").Range("A:A"), 0)
If Not IsNumeric(Var) Then
Var = Sheets("Resultats").Range("a65536").End(xlUp).Row +
1Sheets("Resultats").Range("A" & Var) = c.Value
End If
Ctr = 2
Do Until Sheets("Resultats").Range("A" & Var).Offset(0,
Ctr)= ""
Ctr = Ctr + 1
Loop
j = 1
Do While c.Offset(0, j).Value <> ""
Sheets("Resultats").Range("A" & Var).Offset(0,
Ctr).Value = c.Offset(0, j).Value
j = j + 1
Ctr = Ctr + 1
Loop
End If
Next c
End Sub
Cordialement.
Daniel
"RT" a écrit dans le message de news:
Bonjour à tous
Ceci fait suite à mon message « Ajoute automatique d'info dans la
premièrecolonne vide » qui franchement n'a pas eu de succès (ce qui est rare
sur
ce
forum)
Je sais que mon problème n'est pas simple à résoudre, M'enfin (comme
disais
l'autre)
Je cherche à créer une solution à un problème scolaire (instituteurs)
J'utilise un logiciel de QCM (création de questions/réponses
multichoix)
Je crée une question et je donne plusieurs possibilités de réponses
dont
une
seule est valable (le principe des boitiers du jeu du millionnaire)
Ce logiciel enregistre les réponses (et temps de réponse) aux questions
A la fin de la session je peux exporter ces résultats vers un fichier
xlsEt cela fonctionne parfaitement
Le problème vient aprés Je me retrouve avec différent fichiers xls
(résultats1, résultats2, résultats3, etc) pour une même classe
Je voudrais faire une compilation de ces fichiers en un seul fichier,
et
avoir tous les résultats sur une même feuille
En tenant compte que tous les élèves ne sont pas tous toujours présents
Voici (plus ou moins) ce que le logiciel donne
Nom Score 1 Score 2 Score 3 % réussi
Jean 5 4 8
6.2
Pierre 6 8 6
7
Marie 8 4 9
7
Et dans une session différente les résultats seraient
Nom Score 1 Score 2 % réussi
Jean 7 5 6
André 8 9 8.5
Marie 4 7 5.5
A la suite de quoi je voudrais compiler ces informations en un seul
fichier
Et sur une seule feuille dans le genre
Nom Score 1 Score 2 Score 3 Score 1bis
Score
2bis % réussi
Jean 5 4 8
7 5 5.8
Pierre 6 8 6
Abs Abs 6.5
Marie 8 4 9
4 7 6.4
André Abs Abs Abs 8
9 8.5
Pour ceux qui ne me connaissent pas, je ne cherche pas une solution
complète, mais plutôt quelques coups de pieds dans la bonne direction
Je suppose que je devrais passer par des fonctions index et recherche
et
là
je ne encore nul part
Alors j'en appel à vous "Les maîtres, vous qui excellez en Excel"
Au secours! Je suis dans la panade jusqu'au cou
A bientôt et merci à tous
Rex
PS J'ai fait un tour sur Excelabo mais sans succès (ce qui est rare)
Par contre j'y ai trouvé un fichier (Piere) qui est nickel pour
certains
prof!!!!!!
Bonjour.
Le hic est qu'il y a beaucoup de cas de figure possibles.
(on est bien d'accord que :
Sheets("Resultats").Range("A:A"), 0) est la continuation de la ligne
précédente et non pas une commande par elle-même :
Var = Application.Match(c.Value, _
Sheets("Resultats").Range("A:A"), 0)
Tu peux :
1. Tester en modifiant le code de la manière suivante :
Sheets("Resultats").Range("A:A"), 0)
If Not IsNumeric(Var) Then
Var = Sheets("Resultats").Range("a65536").End(xlUp).Row +
1
msgbox Var
msgbox c.value
Sheets("Resultats").Range("A" & Var) = c.Value
End If
sauf que si tu ne plantes pas tout de suite, tu vas te payer une tonne de
msgboxes.
Relève les valeurs de Var et c au moment du plantage.
2. Recopier tous les noms en colonne A à partir de la cellule A2.
3. Si tes données ne sont pas trop confidentielles, transmet-moi le
classeur
après la recopie sur le classeur cible (éventuellement, change les noms).
Bon courage.
Daniel
"Rex" a écrit dans le message de news:
%Bonjour Daniel
Je sais nous sommes dimanche
Mais j'ai enfin une paire d'heures pour essayer ton code
Chez moi il bloque sur les lignes
Sheets("Resultats").Range("A:A"), 0)
If Not IsNumeric(Var) Then
Var = Sheets("Resultats").Range("a65536").End(xlUp).Row +
1
Sheets("Resultats").Range("A" & Var) = c.Value
End If
Message d'erreur
""Propriété ou methode non géré par cet objet""
et la ligne Var=Sheets et en jaune
Si tu es en ligne et que ceci te dis quelque chose
Ou si quelqu'un d'autre a une idée
UN TOUT GRAND MERCI
Et à bientôt
Rex
"Daniel" a écrit dans le message news:Bonjour.
J'ai préféré t'écrire le truc plutôt que de tout expliquer.
Je lis les classeurs situés dans le dossier indiqué par la variable
"Chemin"(à changer) dans la feuille "Feuil1" d'un classeur intitulé
"130505.xls".
Le résultat final se trouve dans la feuille "resultat".
Sub test()
Dim c As Range, Chemin As String, Fichier As String, Ligne As
Integer
Dim Plage As Range, Var As Variant, Ctr As Integer, j As Integer
Sheets("Feuil1").Activate
Range("A1").Select
'copie des données des fichiers score dans le classeur "130505.xls"
Chemin = "e:donneesdanielmpfescores" 'chemin à adapter
Fichier = Dir(Chemin)
Do While Fichier <> ""
Workbooks.Open Filename:=Fichier
Range("A1",
Range("A1").SpecialCells(xlCellTypeLastCell)).Select
Selection.Resize(Selection.Rows.Count,
Selection.Columns.Count -
1).Copy
Workbooks("130505.xls").Activate
ActiveSheet.Paste
Range("A65536").End(xlUp).Offset(1, 0).Select
Workbooks(Fichier).Close
Fichier = Dir
Loop
'Traitement des informations
'Les résultats sont inscrits sur la feuille "Resultats"
Sheets("Resultats").Activate
Range("A1").Value = "Nom"
Range("B1").Value = "Résultat"
Range("C1").Select
For i = 1 To 100
ActiveCell.Value = "Score " & i
ActiveCell.Offset(0, 1).Select
Next
Range("A2").Select
Sheets("Feuil1").Activate
Set Plage = Range("A1", Range("A65536").End(xlUp))
For Each c In Plage
If c.Value <> "Nom" Then
Var = Application.Match(c.Value,
Sheets("Resultats").Range("A:A"), 0)
If Not IsNumeric(Var) Then
Var = Sheets("Resultats").Range("a65536").End(xlUp).Row
+
1Sheets("Resultats").Range("A" & Var) = c.Value
End If
Ctr = 2
Do Until Sheets("Resultats").Range("A" & Var).Offset(0,
Ctr)= ""
Ctr = Ctr + 1
Loop
j = 1
Do While c.Offset(0, j).Value <> ""
Sheets("Resultats").Range("A" & Var).Offset(0,
Ctr).Value = c.Offset(0, j).Value
j = j + 1
Ctr = Ctr + 1
Loop
End If
Next c
End Sub
Cordialement.
Daniel
"RT" a écrit dans le message de news:
Bonjour à tous
Ceci fait suite à mon message « Ajoute automatique d'info dans la
premièrecolonne vide » qui franchement n'a pas eu de succès (ce qui est rare
sur
ce
forum)
Je sais que mon problème n'est pas simple à résoudre, M'enfin (comme
disais
l'autre)
Je cherche à créer une solution à un problème scolaire (instituteurs)
J'utilise un logiciel de QCM (création de questions/réponses
multichoix)
Je crée une question et je donne plusieurs possibilités de réponses
dont
une
seule est valable (le principe des boitiers du jeu du millionnaire)
Ce logiciel enregistre les réponses (et temps de réponse) aux
questions
A la fin de la session je peux exporter ces résultats vers un fichier
xlsEt cela fonctionne parfaitement
Le problème vient aprés Je me retrouve avec différent fichiers xls
(résultats1, résultats2, résultats3, etc) pour une même classe
Je voudrais faire une compilation de ces fichiers en un seul fichier,
et
avoir tous les résultats sur une même feuille
En tenant compte que tous les élèves ne sont pas tous toujours
présents
Voici (plus ou moins) ce que le logiciel donne
Nom Score 1 Score 2 Score 3 % réussi
Jean 5 4 8
6.2
Pierre 6 8 6
7
Marie 8 4 9
7
Et dans une session différente les résultats seraient
Nom Score 1 Score 2 % réussi
Jean 7 5 6
André 8 9 8.5
Marie 4 7 5.5
A la suite de quoi je voudrais compiler ces informations en un seul
fichier
Et sur une seule feuille dans le genre
Nom Score 1 Score 2 Score 3 Score 1bis
Score
2bis % réussi
Jean 5 4 8
7 5 5.8
Pierre 6 8 6
Abs Abs 6.5
Marie 8 4 9
4 7 6.4
André Abs Abs Abs
8
9 8.5
Pour ceux qui ne me connaissent pas, je ne cherche pas une solution
complète, mais plutôt quelques coups de pieds dans la bonne direction
Je suppose que je devrais passer par des fonctions index et recherche
et
là
je ne encore nul part
Alors j'en appel à vous "Les maîtres, vous qui excellez en Excel"
Au secours! Je suis dans la panade jusqu'au cou
A bientôt et merci à tous
Rex
PS J'ai fait un tour sur Excelabo mais sans succès (ce qui est rare)
Par contre j'y ai trouvé un fichier (Piere) qui est nickel pour
certains
prof!!!!!!
Bonjour.
Le hic est qu'il y a beaucoup de cas de figure possibles.
(on est bien d'accord que :
Sheets("Resultats").Range("A:A"), 0) est la continuation de la ligne
précédente et non pas une commande par elle-même :
Var = Application.Match(c.Value, _
Sheets("Resultats").Range("A:A"), 0)
Tu peux :
1. Tester en modifiant le code de la manière suivante :
Sheets("Resultats").Range("A:A"), 0)
If Not IsNumeric(Var) Then
Var = Sheets("Resultats").Range("a65536").End(xlUp).Row +
1
msgbox Var
msgbox c.value
Sheets("Resultats").Range("A" & Var) = c.Value
End If
sauf que si tu ne plantes pas tout de suite, tu vas te payer une tonne de
msgboxes.
Relève les valeurs de Var et c au moment du plantage.
2. Recopier tous les noms en colonne A à partir de la cellule A2.
3. Si tes données ne sont pas trop confidentielles, transmet-moi le
classeur
après la recopie sur le classeur cible (éventuellement, change les noms).
Bon courage.
Daniel
"Rex" <rthompspamon@skynet.be> a écrit dans le message de news:
%23NqqDJUWFHA.2768@tk2msftngp13.phx.gbl...
Bonjour Daniel
Je sais nous sommes dimanche
Mais j'ai enfin une paire d'heures pour essayer ton code
Chez moi il bloque sur les lignes
Sheets("Resultats").Range("A:A"), 0)
If Not IsNumeric(Var) Then
Var = Sheets("Resultats").Range("a65536").End(xlUp).Row +
1
Sheets("Resultats").Range("A" & Var) = c.Value
End If
Message d'erreur
""Propriété ou methode non géré par cet objet""
et la ligne Var=Sheets et en jaune
Si tu es en ligne et que ceci te dis quelque chose
Ou si quelqu'un d'autre a une idée
UN TOUT GRAND MERCI
Et à bientôt
Rex
"Daniel" <dZZZcolardelle@free.fr> a écrit dans le message news:
udlFrK8VFHA.2768@tk2msftngp13.phx.gbl...
Bonjour.
J'ai préféré t'écrire le truc plutôt que de tout expliquer.
Je lis les classeurs situés dans le dossier indiqué par la variable
"Chemin"
(à changer) dans la feuille "Feuil1" d'un classeur intitulé
"130505.xls".
Le résultat final se trouve dans la feuille "resultat".
Sub test()
Dim c As Range, Chemin As String, Fichier As String, Ligne As
Integer
Dim Plage As Range, Var As Variant, Ctr As Integer, j As Integer
Sheets("Feuil1").Activate
Range("A1").Select
'copie des données des fichiers score dans le classeur "130505.xls"
Chemin = "e:donneesdanielmpfescores" 'chemin à adapter
Fichier = Dir(Chemin)
Do While Fichier <> ""
Workbooks.Open Filename:=Fichier
Range("A1",
Range("A1").SpecialCells(xlCellTypeLastCell)).Select
Selection.Resize(Selection.Rows.Count,
Selection.Columns.Count -
1).Copy
Workbooks("130505.xls").Activate
ActiveSheet.Paste
Range("A65536").End(xlUp).Offset(1, 0).Select
Workbooks(Fichier).Close
Fichier = Dir
Loop
'Traitement des informations
'Les résultats sont inscrits sur la feuille "Resultats"
Sheets("Resultats").Activate
Range("A1").Value = "Nom"
Range("B1").Value = "Résultat"
Range("C1").Select
For i = 1 To 100
ActiveCell.Value = "Score " & i
ActiveCell.Offset(0, 1).Select
Next
Range("A2").Select
Sheets("Feuil1").Activate
Set Plage = Range("A1", Range("A65536").End(xlUp))
For Each c In Plage
If c.Value <> "Nom" Then
Var = Application.Match(c.Value,
Sheets("Resultats").Range("A:A"), 0)
If Not IsNumeric(Var) Then
Var = Sheets("Resultats").Range("a65536").End(xlUp).Row
+
1
Sheets("Resultats").Range("A" & Var) = c.Value
End If
Ctr = 2
Do Until Sheets("Resultats").Range("A" & Var).Offset(0,
Ctr)
= ""
Ctr = Ctr + 1
Loop
j = 1
Do While c.Offset(0, j).Value <> ""
Sheets("Resultats").Range("A" & Var).Offset(0,
Ctr).Value = c.Offset(0, j).Value
j = j + 1
Ctr = Ctr + 1
Loop
End If
Next c
End Sub
Cordialement.
Daniel
"RT" <rthsopmapmson@softscreen.be> a écrit dans le message de news:
uQUucb5VFHA.1508@tk2msftngp13.phx.gbl...
Bonjour à tous
Ceci fait suite à mon message « Ajoute automatique d'info dans la
première
colonne vide » qui franchement n'a pas eu de succès (ce qui est rare
sur
ce
forum)
Je sais que mon problème n'est pas simple à résoudre, M'enfin (comme
disais
l'autre)
Je cherche à créer une solution à un problème scolaire (instituteurs)
J'utilise un logiciel de QCM (création de questions/réponses
multichoix)
Je crée une question et je donne plusieurs possibilités de réponses
dont
une
seule est valable (le principe des boitiers du jeu du millionnaire)
Ce logiciel enregistre les réponses (et temps de réponse) aux
questions
A la fin de la session je peux exporter ces résultats vers un fichier
xls
Et cela fonctionne parfaitement
Le problème vient aprés Je me retrouve avec différent fichiers xls
(résultats1, résultats2, résultats3, etc) pour une même classe
Je voudrais faire une compilation de ces fichiers en un seul fichier,
et
avoir tous les résultats sur une même feuille
En tenant compte que tous les élèves ne sont pas tous toujours
présents
Voici (plus ou moins) ce que le logiciel donne
Nom Score 1 Score 2 Score 3 % réussi
Jean 5 4 8
6.2
Pierre 6 8 6
7
Marie 8 4 9
7
Et dans une session différente les résultats seraient
Nom Score 1 Score 2 % réussi
Jean 7 5 6
André 8 9 8.5
Marie 4 7 5.5
A la suite de quoi je voudrais compiler ces informations en un seul
fichier
Et sur une seule feuille dans le genre
Nom Score 1 Score 2 Score 3 Score 1bis
Score
2bis % réussi
Jean 5 4 8
7 5 5.8
Pierre 6 8 6
Abs Abs 6.5
Marie 8 4 9
4 7 6.4
André Abs Abs Abs
8
9 8.5
Pour ceux qui ne me connaissent pas, je ne cherche pas une solution
complète, mais plutôt quelques coups de pieds dans la bonne direction
Je suppose que je devrais passer par des fonctions index et recherche
et
là
je ne encore nul part
Alors j'en appel à vous "Les maîtres, vous qui excellez en Excel"
Au secours! Je suis dans la panade jusqu'au cou
A bientôt et merci à tous
Rex
PS J'ai fait un tour sur Excelabo mais sans succès (ce qui est rare)
Par contre j'y ai trouvé un fichier (Piere) qui est nickel pour
certains
prof!!!!!!
Bonjour.
Le hic est qu'il y a beaucoup de cas de figure possibles.
(on est bien d'accord que :
Sheets("Resultats").Range("A:A"), 0) est la continuation de la ligne
précédente et non pas une commande par elle-même :
Var = Application.Match(c.Value, _
Sheets("Resultats").Range("A:A"), 0)
Tu peux :
1. Tester en modifiant le code de la manière suivante :
Sheets("Resultats").Range("A:A"), 0)
If Not IsNumeric(Var) Then
Var = Sheets("Resultats").Range("a65536").End(xlUp).Row +
1
msgbox Var
msgbox c.value
Sheets("Resultats").Range("A" & Var) = c.Value
End If
sauf que si tu ne plantes pas tout de suite, tu vas te payer une tonne de
msgboxes.
Relève les valeurs de Var et c au moment du plantage.
2. Recopier tous les noms en colonne A à partir de la cellule A2.
3. Si tes données ne sont pas trop confidentielles, transmet-moi le
classeur
après la recopie sur le classeur cible (éventuellement, change les noms).
Bon courage.
Daniel
"Rex" a écrit dans le message de news:
%Bonjour Daniel
Je sais nous sommes dimanche
Mais j'ai enfin une paire d'heures pour essayer ton code
Chez moi il bloque sur les lignes
Sheets("Resultats").Range("A:A"), 0)
If Not IsNumeric(Var) Then
Var = Sheets("Resultats").Range("a65536").End(xlUp).Row +
1
Sheets("Resultats").Range("A" & Var) = c.Value
End If
Message d'erreur
""Propriété ou methode non géré par cet objet""
et la ligne Var=Sheets et en jaune
Si tu es en ligne et que ceci te dis quelque chose
Ou si quelqu'un d'autre a une idée
UN TOUT GRAND MERCI
Et à bientôt
Rex
"Daniel" a écrit dans le message news:Bonjour.
J'ai préféré t'écrire le truc plutôt que de tout expliquer.
Je lis les classeurs situés dans le dossier indiqué par la variable
"Chemin"(à changer) dans la feuille "Feuil1" d'un classeur intitulé
"130505.xls".
Le résultat final se trouve dans la feuille "resultat".
Sub test()
Dim c As Range, Chemin As String, Fichier As String, Ligne As
Integer
Dim Plage As Range, Var As Variant, Ctr As Integer, j As Integer
Sheets("Feuil1").Activate
Range("A1").Select
'copie des données des fichiers score dans le classeur "130505.xls"
Chemin = "e:donneesdanielmpfescores" 'chemin à adapter
Fichier = Dir(Chemin)
Do While Fichier <> ""
Workbooks.Open Filename:=Fichier
Range("A1",
Range("A1").SpecialCells(xlCellTypeLastCell)).Select
Selection.Resize(Selection.Rows.Count,
Selection.Columns.Count -
1).Copy
Workbooks("130505.xls").Activate
ActiveSheet.Paste
Range("A65536").End(xlUp).Offset(1, 0).Select
Workbooks(Fichier).Close
Fichier = Dir
Loop
'Traitement des informations
'Les résultats sont inscrits sur la feuille "Resultats"
Sheets("Resultats").Activate
Range("A1").Value = "Nom"
Range("B1").Value = "Résultat"
Range("C1").Select
For i = 1 To 100
ActiveCell.Value = "Score " & i
ActiveCell.Offset(0, 1).Select
Next
Range("A2").Select
Sheets("Feuil1").Activate
Set Plage = Range("A1", Range("A65536").End(xlUp))
For Each c In Plage
If c.Value <> "Nom" Then
Var = Application.Match(c.Value,
Sheets("Resultats").Range("A:A"), 0)
If Not IsNumeric(Var) Then
Var = Sheets("Resultats").Range("a65536").End(xlUp).Row
+
1Sheets("Resultats").Range("A" & Var) = c.Value
End If
Ctr = 2
Do Until Sheets("Resultats").Range("A" & Var).Offset(0,
Ctr)= ""
Ctr = Ctr + 1
Loop
j = 1
Do While c.Offset(0, j).Value <> ""
Sheets("Resultats").Range("A" & Var).Offset(0,
Ctr).Value = c.Offset(0, j).Value
j = j + 1
Ctr = Ctr + 1
Loop
End If
Next c
End Sub
Cordialement.
Daniel
"RT" a écrit dans le message de news:
Bonjour à tous
Ceci fait suite à mon message « Ajoute automatique d'info dans la
premièrecolonne vide » qui franchement n'a pas eu de succès (ce qui est rare
sur
ce
forum)
Je sais que mon problème n'est pas simple à résoudre, M'enfin (comme
disais
l'autre)
Je cherche à créer une solution à un problème scolaire (instituteurs)
J'utilise un logiciel de QCM (création de questions/réponses
multichoix)
Je crée une question et je donne plusieurs possibilités de réponses
dont
une
seule est valable (le principe des boitiers du jeu du millionnaire)
Ce logiciel enregistre les réponses (et temps de réponse) aux
questions
A la fin de la session je peux exporter ces résultats vers un fichier
xlsEt cela fonctionne parfaitement
Le problème vient aprés Je me retrouve avec différent fichiers xls
(résultats1, résultats2, résultats3, etc) pour une même classe
Je voudrais faire une compilation de ces fichiers en un seul fichier,
et
avoir tous les résultats sur une même feuille
En tenant compte que tous les élèves ne sont pas tous toujours
présents
Voici (plus ou moins) ce que le logiciel donne
Nom Score 1 Score 2 Score 3 % réussi
Jean 5 4 8
6.2
Pierre 6 8 6
7
Marie 8 4 9
7
Et dans une session différente les résultats seraient
Nom Score 1 Score 2 % réussi
Jean 7 5 6
André 8 9 8.5
Marie 4 7 5.5
A la suite de quoi je voudrais compiler ces informations en un seul
fichier
Et sur une seule feuille dans le genre
Nom Score 1 Score 2 Score 3 Score 1bis
Score
2bis % réussi
Jean 5 4 8
7 5 5.8
Pierre 6 8 6
Abs Abs 6.5
Marie 8 4 9
4 7 6.4
André Abs Abs Abs
8
9 8.5
Pour ceux qui ne me connaissent pas, je ne cherche pas une solution
complète, mais plutôt quelques coups de pieds dans la bonne direction
Je suppose que je devrais passer par des fonctions index et recherche
et
là
je ne encore nul part
Alors j'en appel à vous "Les maîtres, vous qui excellez en Excel"
Au secours! Je suis dans la panade jusqu'au cou
A bientôt et merci à tous
Rex
PS J'ai fait un tour sur Excelabo mais sans succès (ce qui est rare)
Par contre j'y ai trouvé un fichier (Piere) qui est nickel pour
certains
prof!!!!!!