Bonjour,
J'ai un programme sur excel qui me parait un peu fou.
Enfin je pense qu'il me manque ou il y a en trop un petit quelque chose dans le code.
Lorsque je lance la procédure MAJADR la première fois ça me fait tout se que je lui ai demandé.
Mais lorsque je lance la deuxième fois ça ne fonctionne plus.
Au niveau de la derniére ligne de la proc copieadr (mis en rouge). Il m'affiche les messages suivants Impossible d'entrer en mode arrêt maintenant du coup je clic sur continuer en prenant bien soin de mettre des points d'arrêt sur les lignes de code suivant ainsi que la proc suivantes mais tout de suite aprés avoir cliquer sur continuer il m'affiche Bibliothèque d'objet incorrecte ou contenant des références à des définitions d'objets introuvables.
Je ne comprend pas trop le pb
Pour la petite histoire, dans mon fichier excel il y a 2 feuilles.
dans la première il y a des cases à cocher. Le code supp ces cases repporte les mise à jour de la deuxième feuille (plus détaillée et protéger en écriture) dans la première puis recrée les cases à cocher.
voici mon code, c'est un peu de la bidouille car je me suis initialisée à vba y a pas longtemps et toute seule.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 Option Explicit Public NbLigne As Integer
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 Sub MAJAdr() Dim rep As String rep = MsgBox("Etes vous sur de vouloir faire la mise à jour du listing adresses ?", vbOKCancel) Select Case rep Case 1 suppcheckBox CopieAdr InsertCheckBox MsgBox "Mise à jour terminée" 'Case Else End Select End Sub
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 Public Sub Initvar() Sheets("listing adresses").Select NbLigne = Range("G65536").End(xlUp).Row Sheets("Tbd Envoi Annexes Mobile").Select End Sub
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 Public Sub CptLigne() NbLigne = Range("H65536").End(xlUp).Row 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 Sub InsertCheckBox() Dim i As Integer Dim n As Integer Dim posleft As Variant Dim postop As Variant Dim posWidth As Variant Dim posHeight As Variant Dim car As String car = "," Initvar For i = 2 To NbLigne Sheets("listing adresses").Select If Trim(Range("G" & i)) <> "" Then Sheets("Tbd Envoi Annexes Mobile").Select posleft = Replace(Range("C" & i).Left, car, ".") postop = Replace(Range("C" & i).Top, car, ".") posWidth = Replace(Range("C" & i).Width, car, ".") posHeight = Replace(Range("C" & i).Height, car, ".") ActiveSheet.CheckBoxes.Add(posleft, postop, posWidth, posHeight).Select With Selection .Value = True .LinkedCell = "H" & i .Text = "" .Display3DShading = True End With End If Next End Sub
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 Sub suppcheckBox() Dim i As Integer CptLigne For i = 2 To NbLigne Range("H" & i) = "" Next ActiveSheet.CheckBoxes.Delete End SubMerci par avance de votre aide précieuse car ça fait quelques temps que je suis dessus et n'ai rien trouvé.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 Sub CopieAdr() ' ' CopieAdr Macro ' Macro enregistrée le 28/11/2008 par dqsf6548 Sheets("listing adresses").Select Columns("A:F").Select Selection.Copy Sheets("Tbd Envoi Annexes Mobile").Select Cells.Select ActiveSheet.Paste End Sub
cnelain
Partager