(userforms)Comment ajouter une info dans plusieurs onglets

shaannasia

XLDnaute Nouveau
Bonjour,

je vais essayer d'expliquer mon problème clairement!

J'ai 4onglets (1=les 3 groupes, 2=groupeA, 3=groupeB, 4=groupeC). J'ai fait un userform pour ajouter un élève (on doit saisir son nom, prénom, classe, notes). Le problème c'est que quand je rentre un nouvel élève il s'ajoute dans mon tableau de l'onglet 1 mais ne s'ajoute pas dans l'autre onglet!
Ex: era mariane, groupe C, notes vas s'ajouter dans l'onglet 1 uniquement, alors que j'aimerais qu'il se mette a la fois dans le 1 et le 4!

De plus, j'ai fait un ligne de totaux pour les moyennes et mon élève s'ajoute en dessous de ma ligne de totaux (au lieux d'au dessus...).

Et enfin, quand l'élève s'ajoute, la colonne n'a pas la même couleur que celle des colonnes précédentes...

Voila mes problèmes... Merci de votre aide. Si vous avez besoin de renseignements supplémentaire demandez moi!
 

Borismy

XLDnaute Occasionnel
Re : (userforms)Comment ajouter une info dans plusieurs onglets

Bonjour,

si j'ai compris, vois le fichier joint, il s'agit d'une démo que j'ai un peu modifiée, mais faite à l'origine par le Big Thierry, qui m'a beaucoup fait progresser.:)
 

Pièces jointes

  • collection.xls
    13.5 KB · Affichages: 80
  • collection.xls
    13.5 KB · Affichages: 80
  • collection.xls
    13.5 KB · Affichages: 80

Borismy

XLDnaute Occasionnel
Re : (userforms)Comment ajouter une info dans plusieurs onglets

Chez moi pas de pas de problème, j'ai la version 2002

sinon vois la partie intéressante pour reporter la saisie dans plusieurs onglets

Code:
Private Sub CommandButton1_Click()
Dim L As Integer 'Déclaration de variable "L" pour connaitre la Ligne Numéro
Dim L1 As Integer 'Déclaration de variable "L" pour connaitre la Ligne NuméroL1
Dim L2 As Integer 'Déclaration de variable "L" pour connaitre la Ligne NuméroL2
Dim L3 As Integer 'Déclaration de variable "L" pour connaitre la Ligne NuméroL3

'ici je repère la dernière ligne vide pour la Collections des données
L = Sheets("Collection").Range("C65536").End(xlUp).Row + 1
L1 = Sheets("Collection1").Range("C65536").End(xlUp).Row + 1
L2 = Sheets("Collection2").Range("C65536").End(xlUp).Row + 1
L3 = Sheets("Collection3").Range("C65536").End(xlUp).Row + 1
'ici un Test exemple pour la TextBox1, si elle est vide on est viré !!!
If TextBox1 = "" Then
MsgBox "Vous n'avez rien saisi dans la textBox1 !"
TextBox1.SetFocus
Exit Sub
End If

'Pour voir se qui se passe je bascule sur la feuille "Collection"
Sheets("Collection").Activate

'Ici c'est le report de la saisie dans la feuille
With Sheets("Collection")
.Range("C" & L).Value = TextBox1.Value
.Range("D" & L).Value = TextBox2.Value
.Range("E" & L).Value = TextBox3.Value
End With
'Ici c'est le report de la saisie dans la feuille
With Sheets("Collection1")
.Range("C" & L1).Value = TextBox1.Value
.Range("D" & L1).Value = TextBox2.Value
.Range("E" & L1).Value = TextBox3.Value
End With
'Ici c'est le report de la saisie dans la feuille
With Sheets("Collection2")
.Range("C" & L2).Value = TextBox1.Value
.Range("D" & L2).Value = TextBox2.Value
.Range("E" & L2).Value = TextBox3.Value
End With

'Ici c'est le report de la saisie dans la feuille
With Sheets("Collection3")
.Range("C" & L3).Value = TextBox1.Value
.Range("D" & L3).Value = TextBox2.Value
.Range("E" & L3).Value = TextBox3.Value
End With


'Ici je vide les trois TextBox
TextBox1.Value = ""
TextBox2.Value = ""
TextBox3.Value = ""

'ici je remets le curseur en textbox1
TextBox1.SetFocus
End Sub

je le redis, la base du code est de Thierry.

Boris
 
Dernière édition:

Discussions similaires

Statistiques des forums

Discussions
311 725
Messages
2 081 942
Membres
101 849
dernier inscrit
florentMIG