Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

L'accès par programme au projet Visual Basic n'est pas fiable

4 réponses
Avatar
plexus
Bonjour,

A partir d'un classeur je copie 2 pages vers un autre calsseur dont le
nom est pr=E9format=E9 par une variable.
Une de ces feuilles a une macro d'=E9v=E9nement change et je veux
supprimer cette macro dans sa version copi=E9e dans le nouveau classeur.
pour ce faire j'ai test=E9 une solution propos=E9e par L.Longre

Sub traite_feuille_copie()
Dim Wnouv As Workbook
Dim VBC As Object

export 'proc=E9dure de copie de mes 2 feuilles dans nouveau classeur
nomm=E9 par variable public nomclass

Set Wnouv =3D Workbooks(nomclass & ".xls")

With Wnouv.VBProject
For Each VBC In .VBComponents 'L Longre, mpfe
If VBC.Type =3D 100 Then
With VBC.CodeModule
.DeleteLines 1, .CountOfLines
.CodePane.Window.Close
End With
Else: .VBComponents.Remove VBC
End If
Next VBC
End With
Wnouv.Sheets(nomfeuil).Columns("A:A").ClearContents
Wnouv.Sheets(nomfeuil).Columns("H:H").ClearContents
Wnouv.Sheets(nomfeuil).Rows("11:11").ClearContents
Wnouv.Sheets(nomfeuil).Rows("25:25").ClearContents
Wnouv.Sheets(nomfeuil).Rows("4;5").ClearContents
End Sub

cela me retourne le message d'erreur suivant :
"error 1004
L'acc=E8s par programme au projet Visual Basic n'est pas fiable"

sans effacer la macro evenementielle

Auriez-vous une id=E9e de la cause de ce message ? une option a modifi=E9
dans mon excel ? (2002)

4 réponses

Avatar
Pierre Fauconnier
Bonjour

Outils/Macro/Sécurité/Editeurs approuvés, puis cocher "Faire confiance au
projet visual Basic"

Ok?
--
Pierre Fauconnier () (Skype:
pierre_fauconnier)
"Les choses qui n'ont rien en commun ont en commun qu'elles n'ont rien en
commun"
Remplacez nospam.nospam par pfi.be pour répondre. Merci


"plexus" a écrit dans le message de news:

Bonjour,

A partir d'un classeur je copie 2 pages vers un autre calsseur dont le
nom est préformaté par une variable.
Une de ces feuilles a une macro d'événement change et je veux
supprimer cette macro dans sa version copiée dans le nouveau classeur.
pour ce faire j'ai testé une solution proposée par L.Longre

Sub traite_feuille_copie()
Dim Wnouv As Workbook
Dim VBC As Object

export 'procédure de copie de mes 2 feuilles dans nouveau classeur
nommé par variable public nomclass

Set Wnouv = Workbooks(nomclass & ".xls")

With Wnouv.VBProject
For Each VBC In .VBComponents 'L Longre, mpfe
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
Wnouv.Sheets(nomfeuil).Columns("A:A").ClearContents
Wnouv.Sheets(nomfeuil).Columns("H:H").ClearContents
Wnouv.Sheets(nomfeuil).Rows("11:11").ClearContents
Wnouv.Sheets(nomfeuil).Rows("25:25").ClearContents
Wnouv.Sheets(nomfeuil).Rows("4;5").ClearContents
End Sub

cela me retourne le message d'erreur suivant :
"error 1004
L'accès par programme au projet Visual Basic n'est pas fiable"

sans effacer la macro evenementielle

Auriez-vous une idée de la cause de ce message ? une option a modifié
dans mon excel ? (2002)
Avatar
plexus
Bonjour Pierre Fauconnier,

C'est bien cela !

la procédure s'exécute bien sauf qu'au sortir du endwith j'ai le
message :
"erreur de compilation
end property attendu"...

Merci pour l'option de sécurité
Avatar
plexus
Bonjour Pierre Fauconnier,

C'est bien cela !

la procédure s'exécute bien sauf qu'au sortir du endwith j'ai le
message :
"erreur de compilation
end property attendu"...

Merci pour l'option de sécurité
Avatar
plexus
Bonjour Pierre Fauconnier,

C'est bien cela !

la procédure s'exécute bien sauf qu'au sortir du endwith j'ai le
message :
"erreur de compilation
end property attendu"...

Merci pour l'option de sécurité