Ca veut toujours pas!! j'aimerai pouvoir te mettre mon travail en pièce jointe ms ça me ditq ue j'ai dépassé mon quotat!! comment on fait pour enlever les précédentes pièces jointes??
Ca veut toujours pas!! j'aimerai pouvoir te mettre mon travail en pièce jointe ms ça me ditq ue j'ai dépassé mon quotat!! comment on fait pour enlever les précédentes pièces jointes??
tu retourne sur le post ou tu as mis ton fichier tu edites et suprrime les piéces que tu as mises
ici tu as oublié de mettre le bon nom de la feuille ou se trouve les données:normalement feuille "Classes"
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 If Me.ComboBox1.ListIndex = 0 Then Me.Nom_Eleves.Clear For i = 2 To Range("A2").End(xlDown).Row Me.Nom_Eleves.AddItem (Sheets("Feuil1").Range("A" & i).Value) Next i
pour le bouton valider j'ai rectifé une partie à toi de faire le reste ok
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 Private Sub VALIDER_Click() If Me.ComboBox1.ListIndex = 0 Then vnom = Me.Nom_Eleves.Text 'Je recherche le nom dans la colonne à modifier Set c = Sheets("Classes").Columns("A:A").Find(What:=vnom) 'Si le nom existe alors on remplace le nom If Not c Is Nothing Then c.Value = Me.NOUVEAU_NOM.Value End If ElseIf Me.ComboBox1.ListIndex = 1 Then 'ton code ElseIf Me.ComboBox1.ListIndex = 2 Then 'ton code End if End sub
C'est bon je m'étais embrouillée en changeant la listbox par la combobox. merci!!!
j'ai une autre question s'est au niveau de la suppression pour les matières tu supprimes la ligne entière mais pour lesnoms j'aimerai juste supprimer ce qu'il y a ds la cellule.
Voici le début d'algo que j'ai fais, peux tu me dire ce qu'l faut mettre à la place de ce qui est en rouge. Merci beaucoup
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 Private Sub VALIDER_Click() If Me.ComboBox2.ListIndex = 0 Then vnom = Me.ComboBox1.Text Set c = Sheets("Classes").Columns("A:A").Find(What:=vnom) 'Si le nom de l'élève existe alors on supprime ce qu'il y a ds la cellule If Not c Is Nothing Then c.EntireRow.Delete End If End Sub
je mettrais à la place dececi
Code : Sélectionner tout - Visualiser dans une fenêtre à part c.EntireRow.Deleteà voir
Code : Sélectionner tout - Visualiser dans une fenêtre à part c.Delete
Merci beaucoup ms je peux pas voir si ça fonctionne car bien sûr ma liste déroulante ds noms ne fonctionnent pas!!! bon j'essai de pas me décourager ms les algos c'est très pointilleux!!!
Combobox1 = liste déroulante des nos des éléves
Combobox2 = liste déroulante des classes
usf suppression éléve
USF modifiation éléve
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 Private Sub VALIDER_Click() If Me.ComboBox2.ListIndex = 0 Then vnom = Me.ComboBox1.Text 'Je recherche le nom à supprimer dans la colonne A Set c = Sheets("Classes").Columns("A:A").Find(What:=vnom) 'Si le nom de l'élève existe alors on supprime la ligne entière If Not c Is Nothing Then c.Delete End If ElseIf Me.ComboBox2.ListIndex = 1 Then vnom = Me.ComboBox1.Text 'Je recherche le nom à supprimer dans la colonne A Set c = Sheets("Classes").Columns("B:B").Find(What:=vnom) 'Si le nom de l'élève existe alors on supprime la ligne entière If Not c Is Nothing Then c.Delete End If ElseIf Me.ComboBox2.ListIndex = 1 Then vnom = Me.ComboBox1.Text 'Je recherche le nom à supprimer dans la colonne A Set c = Sheets("Classes").Columns("C:C").Find(What:=vnom) 'Si le nom de l'élève existe alors on supprime la ligne entière If Not c Is Nothing Then c.Delete End If End If End Sub
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 Private Sub SUPPRIMER_Click() Unload Me With SUPPRESSION_ELEVES '******************************************** 'INITIALISATION DU MENU DEROULANT '******************************************** .ComboBox2.AddItem "TS1" .ComboBox2.AddItem "TS2" .ComboBox2.AddItem "TS3" '********************************************* 'INITIALISATION DU MENU DEROULANT '******************************************** End With 'Afficher le formulaire SUPPRESSION_ELEVES.Show End Sub
pour que ta liste déroulante des noms fonctionne il faut la lié avec la liste des classes. tu l'ai déjç fait avec les autres userform, pour celui ci c pareil.
dans l'userform suppression_eleve il te faut un code comme cà:Ce code alimentera la combobox1 en fonction de la sélection du combobox2
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 Private Sub ComboBox2_Change() Dim i As Long If Me.ComboBox2.ListIndex = 0 Then 'ETC....
A+
ps: Je dois sortir, rentrerai tard ce soir dsl, bon courage
C'est très gentil!! tu m'as beaucoup aidé merci
Bonne soirée A+
Je suis désolée de revenir t'embêter, il me manque plus qu'un usf pour avoir fini....
1) J'aimerai pouvoir recopier les noms des matières sur l'useform à partir soit de la feuille 3 si TS1, soit la feuile 4 si TS2 ou soit la feuille 5 si TS3. Les noms des matières se trouvent pour chaque B1,C1,D1,... jusqu'à qu'il n'y en ai plus
2) pour valider, les algos sont assez flou car il faut prendre en compte la classe(la feuille 3 ou 4 ou 5), les matieres (B1, C1, D1,...) et les éléves (A2,A3,...), je connais un algo qui vérifie qu'on ne tape pas n'importe quoi le pb c'est lorsqu'il faut préciser une feuille je sais pas comment faire car il faut prendre ous les critères du dessus!!
Si tu peux m'aider ça serait géniall!!
J'ai fait ça mais je sais que pratiquement tt est faux...
Pour remplir la note d'un éléve :
Sur usf note (la où on choisit si on veut rentrer une ou plusieurs notes)
USF Un_ELEVE
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
35
36
37 NOTE_ELEVE = usf suivant UN_ELEVE = Combobox Private Sub UN_ELEVE_Click() Unload Me With NOTE_UN_ELEVE '********************************************* 'INITIALISATION DU MENU DEROULANT '******************************************** 'Je boucle a partir de la cellule A2 jusque la dernière ligne pleine de la colonne A de la feuille "Matieress" For i = 2 To Sheets("Matières").Range("A1").End(xlDown).Row 'J'ajoute à la combobox les matières .MATIERE_CONCERNEE.AddItem (Sheets("Matières").Range("A" & i).Value) Next i 'Combo box values are ListIndex values .MATIERE_CONCERNEE.BoundColumn = 0 'Set combo box to first entry .MATIERE_CONCERNEE.ListIndex = 0 End With With NOTE_UN_ELEVE '******************************************** 'INITIALISATION DU MENU DEROULANT '******************************************** .classe_CONCERNEE.AddItem "TS1" .classe_CONCERNEE.AddItem "TS2" .classe_CONCERNEE.AddItem "TS3" '********************************************* 'INITIALISATION DU MENU DEROULANT '******************************************** End With NOTE_UN_ELEVE.Show End Sub
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
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56 Private Sub classe_CONCERNEE_Change() Dim i As Long If Me.classe_CONCERNEE.ListIndex = 0 Then Me.NOM.Clear For i = 2 To Range("A2").End(xlDown).Row Me.NOM.AddItem (Sheets("Feuil3").Range("A" & i).Value) Next i ElseIf Me.classe_CONCERNEE.ListIndex = 0 Then Me.NOM.Clear For i = 2 To Range("A2").End(xlDown).Row Me.NOM.AddItem (Sheets("Feuil4").Range("A" & i).Value) Next i ElseIf Me.classe_CONCERNEE.ListIndex = 0 Then Me.NOM.Clear For i = 2 To Range("A2").End(xlDown).Row Me.NOM.AddItem (Sheets("Feuil5").Range("A" & i).Value) Next i End If End Sub '************************************************************************************** Private Sub EXCEL_Click() Application.Visible = True 'Activer feuille 1 Worksheets(1).Activate 'Fermer la fenêtre principale de Présentation Unload Me End Sub '************************************************************************************** Private Sub RETOUR_Click() Unload Me 'Affiche le formulaire NOTES.Show End Sub '*************************************************************************************** Private Sub VALIDER_Click() End Sub '*************************************************************************************** '*************************************************************************************** '********************* VERIFICATION DES CARACTERES TAPES ******************************* '*************************************************************************************** '*************************************************************************************** 'Cette fonction est appelée à chaque appui sur une touche dans : 'Vérification si on écrit des lettres à la place des chiffres Private Sub TR_keyup(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer) TR.SetFocus If TR.TextLength <> 0 Then If (Asc(Mid(TR.Value, TR.TextLength, 1))) <> 44 And ((Asc(Mid(TR.Value, TR.TextLength, 1)) < 48) Or (Asc(Mid(TR.TextLength, 1)) > 57)) Then MsgBox ("Caractère invalide") TR.Value = Feuil5.Cells(36, 4) End If End If End Sub
Bjr, dsl beaucoup de mal à suivre aujourd'hui .
si j'ai compris tu souhaite alimenter ton combobox matières à partir des intitulé de colonne des feuilles notes de chaque classe c'est çà?
Pourquoi pas directement à partir de la feuille matière?
remarque, il me semble que tu devais rendre ton devoir aujourd'hui donc je reviens un peu tard mais pour l'exemple voici un code qui te permet de copié le nom des matières dans chaque colonne de la feuille notes.
j'ai vu que tu avais liée ces cellules mais que ce passe -t-il si tu supprime une matière?
Edit: j'ai oublié le code
vois comment tu peux t'en servir pour répondre a ta question 1
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 Dim plagederecherche As Range, i As Long, c As Range Set plagederecherche = Sheets("Matières").Range("A2:A" & Range("A65356").End(xlUp).Row) i = 2 With Sheets("Matières") For Each c In plagederecherche If c.Value <> "" Then Sheets("Notes").Cells(1, i).Value = c.Value i = i + 1 End If Next c End With
Merci, le problème c'est que j'ai trois feuilles excel! faut il que je mette des elseif???
1 feuille ts1
1 feuilles ts2
1 feuille ts3
rv mm si j'ai rendu mon programme j'aimerai bien voir les algo qu'il fallait pour que la prochaine fois je sache le faire.. si ça ne te dérange pas de continuer à m'aider...
Slt, dsl j'étais tres occupé ces derniers jours pas vraiment eu le temps.
Le code que je t'ai donné précédemment permettait de copié les matières dans une feuille appellée notes.
Apparemment tu as trois feuilles appellées "Notes TS1" etc...
donc en adaptant le code que je t'avais mis l'autre jour tu aurais pu mettre ceci :.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 Dim plagederecherche As Range, c As Range Dim i As Long, x As Long Set plagederecherche = Sheets("Matières").Range("A2:A" & Range("A65356").End(xlUp).Row) With Sheets("Matières") For x = 1 To 3 i = 2 For Each c In plagederecherche If c.Value <> "" Then Sheets("Notes TS" & x).Cells(1, i).Value = c.Value i = i + 1 End If Next c Next x End With
Je t'encourage à faire quelques recherche sur l'utilisation des boucles "For ... To" ou "For ... Each", tu trouveras de nombreux exemples sur ce forum.
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager