> Tous les forums > Forum Bureautique
 Comment rétablir Excel suite à une macro malveillSujet résolu
Ajouter un message à la discussion
Page : [1] 
Page 1 sur 1
mobiclick
  Posté le 13/12/2009 @ 16:28 
Aller en bas de la page 
Petit astucien

Bonjour le forum,
J'ai fai une grosse gaffe;J'ai ramassé sur le web des macros qui devaient m'empêcher de supprimer les feuilles de mon classeur...Effectivement ces codes m'interdisent de supprimer mes fuilles ,mais aussi les feuille de tous les classeurs;pourtant je les ai insérées dans un seul classeur. J'ai du effacer ces codes du classeur en question mais ça n'a rien donné.J'ai redemarré Vista ,pareil...J'ai ensuite désinstallé office 2007 pour le réinstaller mais cette fois j'ai ce message d'erreur :Visual Basic Error 400.Je ne sais plus quoi faire?!
Voici les codes
Dans le code de la feuille
Code :
Private Sub Worksheet_Activate()
Dim CB As CommandBar
Dim Ctrl As CommandBarControl
For Each CB In Application.CommandBars
Set Ctrl = CB.FindControl(ID:=847, recursive:=True)
If Not Ctrl Is Nothing Then
Ctrl.OnAction = "RefuseToDelete"
Ctrl.State = msoButtonUp
End If
Next
End Sub

Tjrs dans le code de la feuille
Code :
Private Sub Worksheet_Deactivate()
Dim CB As CommandBar
Dim Ctrl As CommandBarControl
For Each CB In Application.CommandBars
Set Ctrl = CB.FindControl(ID:=847, recursive:=True)
If Not Ctrl Is Nothing Then Ctrl.OnAction = ""
Next
End Sub

Et ce code dans un module standard:
Code :
Public Sub RefuseToDelete()

MsgBox "This help sheet should not be deleted!", _
Buttons:=vbExclamation, _
Title:="Cannot Deelete Help!"

End Sub


Merci de votre aide

Publicité
vieuxmonsieur
 Posté le 13/12/2009 à 17:32 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Astucien

bonsoir mobiclick, le forum,

sous toutes réserves, après avoir supprimer ton code, essaye le code suivant :

http://www.excelabo.net/trucs/barre_outils_presente_ou_pas

Faire disparaître menus et barres puis les restaurer.

J'ouvre un document2 à partir de l'Explorateur Windows et je ne veux voir apparaître aucune barre

d'outils et de menu dans ce document. Comment faire ça avec une macro Workbook_Open et surtout,

que faire avec ma macro Workbook_BeforeClose ?
Maintenant, si avant d'ouvrir mon document2, il y avait un document1 activé, comment rendre au

document1 la même apparence quand je ferme mon document2 ?
Le code suivant permet de faire cela. Il est à coller dans le module ThisWorkbook du classeur

Document2.

Attention, la ligne suivante :

Dim Barres As Collection
doit se trouver en début de module, avant la première procédure, mais après les éventuelles lignes

Option Explicit et Option Base

Private sub Workbook_Activate()
Dim Barre As CommandBar
Set Barres = New Collection
For Each Barre In Application.CommandBars
If Barre.Visible = True And _
Barre.Name <> "Worksheet Menu Bar" Then
Barres.Add Barre.Name
Barre.Visible = False
End If
Next Barre
Application.CommandBars("worksheet menu bar").Enabled = False
end sub

Private sub Workbook_Deactivate()
Dim Barre As Variant
For Each Barre In Barres
Application.CommandBars(Barre).Visible = True
Next Barre
Application.CommandBars("worksheet menu bar").Enabled = True
end sub

Fonctionnement : A l'activation du classeur, Excel remplit une collection avec les noms des barres

visibles, sauf la barre de menu, puis rend ces barres invisibles. La barre de menu est désactivée

en fin de macro. A la désactivation du classeur, excel scanne la collection et rend visible les

différentes barres qui la composent, puis la barre de menu est réactivée.

mobiclick
 Posté le 13/12/2009 à 20:22 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien

Merci...Mais je n'ai pas vraiment compris.Dois-je créer un nouveau classeur et mettre les deux macros dans workbook? Le classeur qui contenait les codes qui me posent problème je l'ai supprimé.

mobiclick
 Posté le 13/12/2009 à 23:17 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien

Merci à tous

J'ai fait une restauration du système à une date antérieur et tout est entré dans l'ordre

Page : [1] 
Page 1 sur 1

Vous devez être connecté pour participer à la discussion.
Cliquez ici pour vous identifier.

Vous n'avez pas de compte ? Créez-en un gratuitement !
Recevoir PC Astuces par e-mail


La Lettre quotidienne +226 000 inscrits
Avec l'actu, des logiciels, des applis, des astuces, des bons plans, ...

Les bonnes affaires
Une fois par semaine, un récap des meilleurs offres.

Les fonds d'écran
De jolies photos pour personnaliser votre bureau. Une fois par semaine.

Les nouveaux Bons Plans
Des notifications pour ne pas rater les bons plans publiés sur le site.

Les bons plans du moment PC Astuces

Tous les Bons Plans
Ecran 23,8 pouces Asus VY249HGR (Full HD, IPS, 120 Hz)
64 € 99 € -35%
@Amazon
Tablette 11 pouces Samsung Galaxy Tab A9+ (8 coeurs, 8 Go RAM, 128 Go stockage, WXGA+, Android 13, FR)
146,82 € 199 € -26%
@AliExpress
SSD Interne M.2 NVMe PCIe 4.0 Samsung 990 PRO 1 To (7450 Mo/s)
69,99 € 120 € -42%
@Amazon
Clavier sans-fil bluetooth Logitech MX Keys S
67,84 € 99 € -31%
@Amazon
Perforateur Bosch Professional GBH 2-21 SDS+
74,00 € 125 € -41%
@Amazon
Souris Logitech MX Master 3S (bluetooth, capteur laser 8K, clics silencieux)
58,73 € 115 € -49%
@Amazon

Sujets relatifs
comment affecter une macro a un fichier excel ?
comment imprimer a la suite d'une feuille excel
2 pages par feuille dans macro excel
Comment supprimer recherche Laoscript au démarrage Excel ?
Creation d' une boucle macro dans fichier EXCEL pour impression
besoin d'une macro excel 2007
[Macro optimisation écran ... Suite]
Macro Excel. Mes colonnes disparaissent.
libre Office : macro Excel présente et non active
[Excel 2007] Macro : Sélection d'un tableau selon sa longueur variable
Plus de sujets relatifs à Comment rétablir Excel suite à une macro malveill
 > Tous les forums > Forum Bureautique