Bonjour à toutes et tous
J'ai codé un USF pour suppirmer une cellule. Celui dans la logique de programmation est identique à un autre que j'ai créé et qui marche
Ci dessous le code fonctionnant
Le problème est sur la ligne 34 du code ci-dessous où j'ai l'erreur 1004 qui est générée
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 Option Explicit Dim no_section As Integer, del_auditeur As Integer, nom_auditeur As Integer, i As Integer Private Sub UserForm_Initialize() 'Ajout des valeurs des cellules A1 à Y1 de l'onglet "Sections-Auditeurs-Machines" For i = 1 To 25 'Liste des sections CbB_Section.AddItem Worksheets("Sections-Auditeurs-Machines").Cells(1, i) Next End Sub Private Sub CbB_Section_Change() 'Zone de liste vidée (sinon les valeurs s'ajoutent) CbB_Suppr_Auditeur.Clear 'Liste des "section" a sélectionner (ListIndex commence à 0) no_section = CbB_Section.ListIndex + 1 'Liste des auditeurs de la colonne section choisie nom_auditeur = Worksheets("Sections-Auditeurs-Machines").Cells(1, no_section).End(4).Row 'Recherche du nombre de lignes poste de la colonne section choisie For i = 2 To nom_auditeur CbB_Suppr_Auditeur.AddItem Worksheets("Sections-Auditeurs-Machines").Cells(i, no_section) Next End Sub Private Sub Supprimer_Click() Application.ScreenUpdating = False 'Activation de la feuille "Sections-Auditeurs-Machines" Worksheets("Sections-Auditeurs-Machines").Activate 'Détermine la valeur de la sélection del_auditeur = CbB_Suppr_Auditeur.ListCount + 1 'Supprime l'auditeur choisi dans la section concernée If del_auditeur <> Null Or del_auditeur > 0 Then ActiveSheet.Cells(del_auditeur, no_section).ClearContents MsgBox "L'auditeur a été supprimé avec succès!" End If Application.ScreenUpdating = True 'Fermer l'USF Formulaire Unload Me End Sub Private Sub Annuler_Click() Unload Me End Sub Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer) If CloseMode = vbFormControlMenu Then Cancel = True End Sub
Quelqu'un peut-il m'aider à y comprendre pourquoi cette génération d'erreur
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 Option Explicit Dim no_section As Integer, no_poste As Integer, del_poste As Integer, i As Integer Private Sub UserForm_Initialize() 'Ajout des valeurs des cellules A1 à Y1 de l'onglet "Sections-Auditeurs-Machines" For i = 1 To 25 'Liste des sections CbB_Section.AddItem Worksheets("Sections-Auditeurs-Machines").Cells(1, i) Next End Sub Private Sub CbB_Section_Change() Dim no_section As Integer, nom_auditeur As Integer, no_poste As Integer 'Liste des "section" a sélectionner (ListIndex commence à 0) no_section = CbB_Section.ListIndex + 1 'Liste des postes de la colonne section choisie no_poste = Worksheets("Sections-Auditeurs-Machines").Cells(6, no_section).End(xlDown).Row For i = 6 To no_poste CbB_Suppr_Poste.AddItem Worksheets("Sections-Auditeurs-Machines").Cells(i, no_section) Next End Sub Private Sub Supprimer_Click() Application.ScreenUpdating = False 'Activation de la feuille "Sections-Auditeurs-Machines" Worksheets("Sections-Auditeurs-Machines").Activate 'Détermine la valeur de la sélection del_poste = CbB_Suppr_Poste.ListCount 'Supprime l'auditeur choisi dans la section concernée If del_poste <> Null Or del_poste > 0 Then ActiveSheet.Cells(del_poste, no_section).ClearContents MsgBox "Le poste a été supprimé avec succès!" End If Application.ScreenUpdating = True 'Fermer l'USF Formulaire Unload Me End Sub Private Sub Annuler_Click() Unload Me End Sub Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer) If CloseMode = vbFormControlMenu Then Cancel = True End Sub
Cordialement
Partager