Plantage d'une macro qui fonctionnait : incrémentation n° d'action [Résolu]

Messages postés
20
Date d'inscription
vendredi 6 octobre 2017
Statut
Membre
Dernière intervention
25 octobre 2019
-
Bonjour à toutes et à tous
Il ya bien longtemps que je n'ai pas fait de VBA et même si certains automatismes reviennent vite, je bloque sur un bout de ce que je veux faire.
J'ai un tableau avec plusieurs lignes ( plan d'action) et je doiss insérer des lignes sous une action lorsque je clique sur une case donnée. Cette ligne insérée devient une tâche que je numérote automatiquement en lien avec le N° d'action.
Et naturellement, si il existe déjà une tache sous cette action, lui affecter un numéro incrémenté de 1.
Ex : N° Action = 1; N° Tâche existante de l'action N° 1 = 1.T1, N° de la nouvelle tâche de l'action N° 1 = 1.T2.

Cette macro fonctionnait parfaitement jusqu'à ce que nous changions de version Office (2013 64bits) et depuis j'ai le fatidique message Projet ou bibliothèque introuvable, même en mode de compatibilité
Ci dessous le bout de code que j'ai isolé pour tester les différents résultats et qui me pose problème

Admettons l'Action 2 en A5 et la tache 2.T51 en A6

Option Explicit
Sub Macro1()

Dim a_numAction As String
Dim a_Taille As Long
Dim b_numAction As String
Dim b_Taille As Long
Dim c_Taille As Long

a_numAction = Cells(5, 1).Value
a_Taille = Len(a_numAction) + 2 ' me définie le nb de caractère dans A5 et ajoute 2 pour pouvoir intégrer .T au n° de la nouvelle tâche
b_numAction = Cells(6, 1).Value
b_Taille = Len(b_numAction) ' me définie le nb de caractère dans A6
c_Taille = b_Taille - a_Taille

Worksheets("Feuil1").Cells(5, 2).Value = a_numAction => me place correctement 2 en B5
Worksheets("Feuil1").Cells(5, 3).Value = a_Taille => me place correctement 3 en C5
Worksheets("Feuil1").Cells(5, 4).Value = b_numAction => me place correctement 2.T51 en D5
Worksheets("Feuil1").Cells(5, 5).Value = b_Taille => me place correctement 5 en E5
Worksheets("Feuil1").Cells(5, 6).Value = c_Taille => me place correctement 2 en F5
Worksheets("Feuil1").Cells(5, 7).Value = Right(b_numAction, b_Taille) => plantage!!!

End Sub

L'anomalie pointe sur le Right sur la dernière ligne
j'ai essayer de passer par un Mid ce qui me permettrait de me passer d'un certain nombre de déclaration, mais même punition
j'ai essayé de changer les arguments String, Long mais toujours la même chose...

Une piste?
Afficher la suite 

2 réponses

Messages postés
20
Date d'inscription
vendredi 6 octobre 2017
Statut
Membre
Dernière intervention
25 octobre 2019
0
Merci
Re
Bon ben je pense qu'il faille que je cherche ailleurs car en testant le bout de code présenté ici sur un autre classeur, cela fonctionne parfaitement!!!
Commenter la réponse de Mabelle-60
Messages postés
20
Date d'inscription
vendredi 6 octobre 2017
Statut
Membre
Dernière intervention
25 octobre 2019
0
Merci
A nouveau.
Partant du postulat que cela fonctionnerait sur un nouveau classeur créé sous la nouvelle version office, j'ai copié l'intégralité du précédent... Et ça Marche...
Mais ne me demandez pas pourquoi... Au contraire, si quelqu'un peut éclairer ma lanterne, je suis preneur...
Commenter la réponse de Mabelle-60