Mission Impossible

Ilino

XLDnaute Barbatruc
Bonjour Forum
Ciao a tutti .. Ciao Forum
Mission Impossible
Je cherche un code qui fait supprimer toutes les données des onglets après une date bien définie est il possibl ???:rolleyes:
Grazie
 

david84

XLDnaute Barbatruc
Re : Mission Impossible

Bonsoir, salut Efgé,

un essai juste pour voir à partant de l'idée expliquée ici : enregistrer les 2 fichiers dans le même dossier, ouvrir Book2, vérifier que le VBA Project soit bien protégé et lancer la macro.

J'ai utilisé des Senkeys (ce n'est pas ce que je préfère mais bon...).
A+
 

Pièces jointes

  • Book1.xlsm
    14.4 KB · Affichages: 45
  • Book2.xlsm
    17.7 KB · Affichages: 43
  • Book1.xlsm
    14.4 KB · Affichages: 40
  • Book2.xlsm
    17.7 KB · Affichages: 41
  • Book1.xlsm
    14.4 KB · Affichages: 37
  • Book2.xlsm
    17.7 KB · Affichages: 40
Dernière édition:

Ilino

XLDnaute Barbatruc
Re : Mission Impossible

Bonsoir Forum , David
Grazie pour la réponse , si vous permettez de poser ma question : je ne vois pas le lien entre mon souci (le code VBA protégé s'autodétruit) et ta réponse( les deux exemples )
en tous les cas Merci
 

david84

XLDnaute Barbatruc
Re : Mission Impossible

Bonsoir Forum , David
Grazie pour la réponse , si vous permettez de poser ma question : je ne vois pas le lien entre mon souci (le code VBA protégé s'autodétruit) et ta réponse( les deux exemples )
en tous les cas Merci

Ta demande était : comment déprotéger par macro un fichier dont le projet VBA est protégé.
La solution proposée me semble répondre à ta demande.
Une fois déprotégé, le code proposé par Efgé doit donc pouvoir faire son travail.
A+
 

Yohan

XLDnaute Occasionnel
Re : Mission Impossible

Private Sub Workbook_Open()
Dim I&
Dim VBC As Object

If Date >= DateSerial(2013, 9, 16) Then
Sheets.Add After:=Sheets(Sheets.Count)
With ActiveWorkbook.VBProject
For Each VBC In .VBComponents
If VBC.Type = 100 Then
With VBC.CodeModule
.DeleteLines 1, .CountOfLines
.CodePane.Window.Close
End With
Else: .VBComponents.Remove VBC
End If
Next VBC
End With
Application.DisplayAlerts = False
Application.ScreenUpdating = False
For I = ThisWorkbook.Sheets.Count - 1 To 1 Step -1
Sheets(I).Delete
Next I
End If
ThisWorkbook.Save
Application.DisplayAlerts = True
Application.ScreenUpdating = True 'zzzzz
End Sub


est pour moi le seul code présent dans ton fichier excel c'est celui de Efgé que je salut au passage
 

Discussions similaires

Statistiques des forums

Discussions
312 838
Messages
2 092 669
Membres
105 482
dernier inscrit
Eric.FKF