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

Message d'erreur dans excel 365

3 réponses
Avatar
Nicole Suter
Mon collègue m'a donné un fichier excel sur un nouvel ordinateur avec des macros et j'ai le message d'erreur suivant qui s'affiche:

Run-time error '-2147319784 (80028018)':

Method 'DisplayStatusBar' of object' _Application' failed

3 réponses

Avatar
MichD
Le 17/08/21 Í  10:57, Nicole Suter a écrit :
Method 'DisplayStatusBar' of object' _Application' failed

Bonjour,
Sans voir le code, c'est un peu difficile de savoir pourquoi tu obtiens
ce message.
Dans ton code, tu dois avoir quelque chose comme :
Exemple :
'Affiche "bonjour" dans la barre d'état au bas de la feuille de calcul
Application.StatusBar = "Bonjour"
'La barre d'état n'affiche rien.
Application.StatusBar = ""
Juste avant ces lignes de code, tu peux mettre
On error resume next
Cette approche est alambiquée puisqu’elle ne te dit pas pourquoi tu
observes cette erreur...
Est-ce que tu peux publier la macro?
MichD
Avatar
MichD
Le 18/08/21 Í  03:04, Nicole Suter a écrit :
Le mardi 17 aoÍ»t 2021 Í  19:11:34 UTC+2, MichD a écrit :
Le 17/08/21 Í  10:57, Nicole Suter a écrit :
Method 'DisplayStatusBar' of object' _Application' failed

Bonjour,
Sans voir le code, c'est un peu difficile de savoir pourquoi tu obtiens
ce message.
Dans ton code, tu dois avoir quelque chose comme :
Exemple :
'Affiche "bonjour" dans la barre d'état au bas de la feuille de calcul
Application.StatusBar = "Bonjour"
'La barre d'état n'affiche rien.
Application.StatusBar = ""
Juste avant ces lignes de code, tu peux mettre
On error resume next
Cette approche est alambiquée puisqu’elle ne te dit pas pourquoi tu
observes cette erreur...
Est-ce que tu peux publier la macro?
MichD

Bonjour MichD,
Je vous remercie pour votre intervention. Je mets ci-après la macro contenant l'erreur.
---------------------------------------------------------------------------
Private Sub Workbook_Open()
With Application
.DisplayStatusBar = True ' <-- La macro plante depuis ici, et les pas suivants, également... :-(
.StatusBar = "Exécution de macro.... personnel"
.EnableEvents = False
.ScreenUpdating = False
.DisplayAlerts = False
End With
On Error Resume Next
DoEvents
MsgBox ActiveWorkbook.BuiltinDocumentProperties.Item(5), , " Test"
ThisWorkbook.Activate
Application.GoTo Reference:¬tiveSheet.Range("A2"), Scroll:=True
Application.GoTo Sheets("Formulaire").Range("A2")
ActiveSheet.Protect
Range("Maison").Select
With Application
.StatusBar = False
.EnableEvents = True
.ScreenUpdating = True
.DisplayAlerts = True
End With
End Sub
---------------------------------------------------------------------------
Nicole Suter

Bonjour,
J'ai enlevé des lignes de code non nécessaire. Je l'ai exécuté et je
n'ai aucun message d'erreur. Si dans ton fichier original tu as encore
ce message d'erreur, copie cette macro dans un classeur tout neuf et
exécute-la. Évidemment, ce nouveau classeur doit avoir une feuille
nommée "formulaire" et une plage de cellule nommée "Maison".
'---------------------------------------------------
Private Sub Workbook_Open()
With Application
.DisplayStatusBar = True ' <-- La macro plante depuis ici, et
les pas suivants, également...
.StatusBar = "Exécution de macro.... personnel"
.EnableEvents = False
.ScreenUpdating = False
End With
MsgBox ActiveWorkbook.BuiltinDocumentProperties.Item(5), , " Test"
Application.GoTo Sheets("Formulaire").Range("A2")
ActiveSheet.Protect
Range("Maison").Select
With Application
.StatusBar = ""
.EnableEvents = True
.ScreenUpdating = True
End With
End Sub
'---------------------------------------------------
MichD
Avatar
MichD
Le 18/08/21 Í  07:47, Nicole Suter a écrit :
Le mercredi 18 aoÍ»t 2021 Í  12:29:24 UTC+2, MichD a écrit :
Le 18/08/21 Í  03:04, Nicole Suter a écrit :
Le mardi 17 aoÍ»t 2021 Í  19:11:34 UTC+2, MichD a écrit :
Le 17/08/21 Í  10:57, Nicole Suter a écrit :
Method 'DisplayStatusBar' of object' _Application' failed

Bonjour,
Sans voir le code, c'est un peu difficile de savoir pourquoi tu obtiens
ce message.
Dans ton code, tu dois avoir quelque chose comme :
Exemple :
'Affiche "bonjour" dans la barre d'état au bas de la feuille de calcul
Application.StatusBar = "Bonjour"
'La barre d'état n'affiche rien.
Application.StatusBar = ""
Juste avant ces lignes de code, tu peux mettre
On error resume next
Cette approche est alambiquée puisqu’elle ne te dit pas pourquoi tu
observes cette erreur...
Est-ce que tu peux publier la macro?
MichD

Bonjour MichD,
Je vous remercie pour votre intervention. Je mets ci-après la macro contenant l'erreur.
---------------------------------------------------------------------------
Private Sub Workbook_Open()
With Application
.DisplayStatusBar = True ' <-- La macro plante depuis ici, et les pas suivants, également... :-(
.StatusBar = "Exécution de macro.... personnel"
.EnableEvents = False
.ScreenUpdating = False
.DisplayAlerts = False
End With
On Error Resume Next
DoEvents
MsgBox ActiveWorkbook.BuiltinDocumentProperties.Item(5), , " Test"
ThisWorkbook.Activate
Application.GoTo Reference:¬tiveSheet.Range("A2"), Scroll:=True
Application.GoTo Sheets("Formulaire").Range("A2")
ActiveSheet.Protect
Range("Maison").Select
With Application
.StatusBar = False
.EnableEvents = True
.ScreenUpdating = True
.DisplayAlerts = True
End With
End Sub
---------------------------------------------------------------------------
Nicole Suter

Bonjour,
J'ai enlevé des lignes de code non nécessaire. Je l'ai exécuté et je
n'ai aucun message d'erreur. Si dans ton fichier original tu as encore
ce message d'erreur, copie cette macro dans un classeur tout neuf et
exécute-la. Évidemment, ce nouveau classeur doit avoir une feuille
nommée "formulaire" et une plage de cellule nommée "Maison".
'---------------------------------------------------
Private Sub Workbook_Open()
With Application
.DisplayStatusBar = True ' <-- La macro plante depuis ici, et
les pas suivants, également...
.StatusBar = "Exécution de macro.... personnel"
.EnableEvents = False
.ScreenUpdating = False
End With
MsgBox ActiveWorkbook.BuiltinDocumentProperties.Item(5), , " Test"
Application.GoTo Sheets("Formulaire").Range("A2")
ActiveSheet.Protect
Range("Maison").Select
With Application
.StatusBar = ""
.EnableEvents = True
.ScreenUpdating = True
End With
End Sub
'---------------------------------------------------
MichD

Bonjour,
Sur une nouvelle feuille Excel, le code marche mais pas sur le fichier original que nous partageons sur Onedrive. Nous avons désactivé les éléments du code suivants:
.DisplayStatusBar = True
DoEvents,
Application.GoTo Reference:¬tiveSheet.Range("A2"), Scroll:=True
ActiveSheet.Protect
Nicole Suter

Tu as ton explication, ton fichier est partagé. Ce mode limite certaines
opérations. Voici un complément Í  cet effet :
https://www.excelforum.com/tips-and-tutorials/990510-shared-workbook-limitations.html
MichD