Code Vba introuvable

RENEP

XLDnaute Nouveau
Bonjour à tous,

Je cherche de l’aide pour retrouver le texte d’une macro que j’ai cachée dans la feuille Excel ci-jointe (pour tenir mes comptes personnels).

Je l’ai tellement bien caché que je n’arrive plus à me souvenir.

Elle fonctionne à l’aide du bouton ArretCompte et elle porte ce nom.

À cause de cela, je ne peux pas passer mon fichier en .xlsx.

D’avance un grand merci à tous.
 

Pièces jointes

  • CompteBanqueX.xls
    503.5 KB · Affichages: 14
Solution
Bonsoir à tous :),

J'ai réussi à récupérer le code ci-dessous.
Est-ce juste ou non ? Y a-t-il encore d'autres macros ? Je n'ai pas de réponse à ces questions.
Ce qui est certain c'est que votre fichier est très très mal en point. Il vaut mieux le laisser tomber et repartir de zéro.

VB:
Sub ArretCompte()

   Application.ScreenUpdating = False
   Application.DisplayAlerts = False
   ActiveSheet.Unprotect ("")

   Range("D1").Activate
   MoisActuel = ActiveCell

   'MsgBox "La valeur du Mois Actuel est :" & MoisActuel
   Title = "CHANGEMENT DE MOIS"
   Msg = "LE SOLDE A QUEL MOIS ? (1 _ 12):"
   REP1 = Application.InputBox(Msg, Title)
   Msg = "LE SOLDE A QUELLE ANNEE ? (2012):"
   REP2 = Application.InputBox(Msg, Title)
      
   If REP1...

Bernard_XLD

XLDnaute Barbatruc
Membre du Staff
j'ai examiné votre fichier, il y a effectivement un code vba dedans, mais inaccessible avec crash d'excel dès qu'on essaye de le récupérer. Les fonctions de réparation d'excel n'arrivent pas à réparer le fichier, les conversions en xlsm ou xlsb s'effectuent mais les fichiers résultants ont le même problème.
Comme cela, je ne vois pas de solution simple à appliquer, quelqu'un aura peut être une idée ou déjà rencontré ce problème.
Je déplace cette discussion dans le forum Excel (vous l'avez créée dans le forum de présentation)

Cordialement,
Bernard
 

mapomme

XLDnaute Barbatruc
Supporter XLD
Bonsoir à tous :),

J'ai réussi à récupérer le code ci-dessous.
Est-ce juste ou non ? Y a-t-il encore d'autres macros ? Je n'ai pas de réponse à ces questions.
Ce qui est certain c'est que votre fichier est très très mal en point. Il vaut mieux le laisser tomber et repartir de zéro.

VB:
Sub ArretCompte()

   Application.ScreenUpdating = False
   Application.DisplayAlerts = False
   ActiveSheet.Unprotect ("")

   Range("D1").Activate
   MoisActuel = ActiveCell

   'MsgBox "La valeur du Mois Actuel est :" & MoisActuel
   Title = "CHANGEMENT DE MOIS"
   Msg = "LE SOLDE A QUEL MOIS ? (1 _ 12):"
   REP1 = Application.InputBox(Msg, Title)
   Msg = "LE SOLDE A QUELLE ANNEE ? (2012):"
   REP2 = Application.InputBox(Msg, Title)
      
   If REP1 = 1 Then
      mois = "Janvier"
   ElseIf REP1 = 2 Then
      mois = "Fevrier"
   ElseIf REP1 = 3 Then
      mois = "Mars"
   ElseIf REP1 = 4 Then
      mois = "Avril"
   ElseIf REP1 = 5 Then
      mois = "Mai"
   ElseIf REP1 = 6 Then
      mois = "Juin"
   ElseIf REP1 = 7 Then
      mois = "Juillet"
   ElseIf REP1 = 8 Then
      mois = "Aout"
   ElseIf REP1 = 9 Then
      mois = "Septembre"
   ElseIf REP1 = 10 Then
      mois = "Octobre"
   ElseIf REP1 = 11 Then
      mois = "Novembre"
   ElseIf REP1 = 12 Then
      mois = "Decembre"
      
   End If

   REP3 = mois & "_" & REP2
   'MsgBox "La valeur concatenee :" & REP3


   Cells.Find(What:=REP3, After:=ActiveCell, LookIn:=xlFormulas, _
              LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
              MatchCase:=False).Activate
      
      
   Range("X1").Value = ActiveCell.Address        'ecrit dans cellule X1 l'adresse de la cellule selectionn_e
   Rows(1).Columns("X").Parse ParseLine:="[xxx][xxxxxxxxxxxxxx]", Destination:=Range("Y1")
   Range("Z1").Activate
   'MsgBox "La valeur de la cellule est :" & ActiveCell

   MoisSuivant = ActiveCell + 87

   'MsgBox "La valeur de la cellule est :" & MoisSuivant


   Range("D1,E1,H2,H3,L2,L3,M2,N3,O4,p4,r3").Select
   Range("D1").Activate
   Selection.Replace What:=MoisActuel, Replacement:=MoisSuivant, LookAt:=xlPart, _
                     SearchOrder:=xlByRows, MatchCase:=True
      
   Range("X1:Z1").Select
   Selection.ClearContents

   Range("D1").Select
  
  
  
   Application.ScreenUpdating = True
   Application.DisplayAlerts = True
   ActiveSheet.Protect ("")

End Sub

Sub PROTECTION()
   Application.ScreenUpdating = False
   ActiveSheet.Unprotect
   Application.ScreenUpdating = True
End Sub
 
Dernière édition:

TooFatBoy

XLDnaute Barbatruc
Bonjour,

Juste pour mon info personnelle en passant : est-ce un fichier venant d'un Excel pour Mac ?


Je cherche de l’aide pour retrouver le texte d’une macro que j’ai cachée dans la feuille Excel ci-jointe (pour tenir mes comptes personnels).

Je l’ai tellement bien caché que je n’arrive plus à me souvenir.
Tu l'as cachée avec les outils d'Excel, ou en éditant le fichier avec un outil externe ?
 
Dernière édition:

RENEP

XLDnaute Nouveau
j'ai examiné votre fichier, il y a effectivement un code vba dedans, mais inaccessible avec crash d'excel dès qu'on essaye de le récupérer. Les fonctions de réparation d'excel n'arrivent pas à réparer le fichier, les conversions en xlsm ou xlsb s'effectuent mais les fichiers résultants ont le même problème.
Comme cela, je ne vois pas de solution simple à appliquer, quelqu'un aura peut être une idée ou déjà rencontré ce problème.
Je déplace cette discussion dans le forum Excel (vous l'avez créée dans le forum de présentation)

Cordialement,
Bernard
Merci !
 

RENEP

XLDnaute Nouveau
Bonsoir à tous :),

J'ai réussi à récupérer le code ci-dessous.
Est-ce juste ou non ? Y a-t-il encore d'autres macros ? Je n'ai pas de réponse à ces questions.
Ce qui est certain c'est que votre fichier est très très mal en point. Il vaut mieux le laisser tomber et repartir de zéro.

VB:
Sub ArretCompte()

   Application.ScreenUpdating = False
   Application.DisplayAlerts = False
   ActiveSheet.Unprotect ("")

   Range("D1").Activate
   MoisActuel = ActiveCell

   'MsgBox "La valeur du Mois Actuel est :" & MoisActuel
   Title = "CHANGEMENT DE MOIS"
   Msg = "LE SOLDE A QUEL MOIS ? (1 _ 12):"
   REP1 = Application.InputBox(Msg, Title)
   Msg = "LE SOLDE A QUELLE ANNEE ? (2012):"
   REP2 = Application.InputBox(Msg, Title)
     
   If REP1 = 1 Then
      mois = "Janvier"
   ElseIf REP1 = 2 Then
      mois = "Fevrier"
   ElseIf REP1 = 3 Then
      mois = "Mars"
   ElseIf REP1 = 4 Then
      mois = "Avril"
   ElseIf REP1 = 5 Then
      mois = "Mai"
   ElseIf REP1 = 6 Then
      mois = "Juin"
   ElseIf REP1 = 7 Then
      mois = "Juillet"
   ElseIf REP1 = 8 Then
      mois = "Aout"
   ElseIf REP1 = 9 Then
      mois = "Septembre"
   ElseIf REP1 = 10 Then
      mois = "Octobre"
   ElseIf REP1 = 11 Then
      mois = "Novembre"
   ElseIf REP1 = 12 Then
      mois = "Decembre"
     
   End If

   REP3 = mois & "_" & REP2
   'MsgBox "La valeur concatenee :" & REP3


   Cells.Find(What:=REP3, After:=ActiveCell, LookIn:=xlFormulas, _
              LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
              MatchCase:=False).Activate
     
     
   Range("X1").Value = ActiveCell.Address        'ecrit dans cellule X1 l'adresse de la cellule selectionn_e
   Rows(1).Columns("X").Parse ParseLine:="[xxx][xxxxxxxxxxxxxx]", Destination:=Range("Y1")
   Range("Z1").Activate
   'MsgBox "La valeur de la cellule est :" & ActiveCell

   MoisSuivant = ActiveCell + 87

   'MsgBox "La valeur de la cellule est :" & MoisSuivant


   Range("D1,E1,H2,H3,L2,L3,M2,N3,O4,p4,r3").Select
   Range("D1").Activate
   Selection.Replace What:=MoisActuel, Replacement:=MoisSuivant, LookAt:=xlPart, _
                     SearchOrder:=xlByRows, MatchCase:=True
     
   Range("X1:Z1").Select
   Selection.ClearContents

   Range("D1").Select
 
 
 
   Application.ScreenUpdating = True
   Application.DisplayAlerts = True
   ActiveSheet.Protect ("")

End Sub

Sub PROTECTION()
   Application.ScreenUpdating = False
   ActiveSheet.Unprotect
   Application.ScreenUpdating = True
End Sub
Super !!! et merci beaucoup, c'est exactement cela.
 

Discussions similaires

Réponses
5
Affichages
532

Statistiques des forums

Discussions
312 211
Messages
2 086 284
Membres
103 170
dernier inscrit
HASSEN@45