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

vba et office 2010

34 réponses
Avatar
j
Bonjour,
Petit problème VBA Excel sous Office 2010 :

J'ai une macro simplissime qui se contente d'aller chercher des infos sur
une page html en pilotant internet explorer depuis Excel VBA :

Sub test()
Set ie = CreateObject("InternetExplorer.Application")
ie.Navigate ("http://google.fr")
ie.Visible = True
Do While ie.ReadyState <> 4
Loop
Set dct = ie.Document
MsgBox dct.Title
End Sub

La macro, qui fonctionnait correctement depuis des années sous XP, continue
de fonctionner sous W7-Office 2010.

Par contre, si j'essaie de remplacer "http://google.fr" par une bête page
html en local (sur C:), rien ne va plus :
l'objet ie est bien créé, la page html est bien ouverte, mais il semble que
dès l'ouverture de la page, l'objet ie soit supprimé : quand on cherche à
accéder aux propriétés de la page, on reçoit un message d'erreur disant que
l'objet invoqué s'est déconnecté ! (la page html reste ouverte)

Je précise qu'il s'agit d'un ordinateur d'entreprise, et que le test a été
fait dans les mêmes conditions dans une autre entreprise, avec le même
résultat.
On peut imaginer que certains droits d'accès sont restreints pour raisons de
sécurité, mais il est surprenant qu'on puisse accéder à un fichier internet
et pas a un fichier local !
A noter : Excel peut accéder au fichier local sans problème par
Workbooks.open(fichier html local).

Tout ça me semble bien étrange !
J'imagine qu'il y a un paramétrage à faire, mais de quoi ??

D'avance merci
J@C
http://jacxl.free.fr

10 réponses

1 2 3 4
Avatar
DanielCo
Bonjour,
Ce qui est sûr, c'est que ce n'est pas une question de droits liés à
une entreprise, le problème se produit également chez moi.
Cordialement.
Daniel


Bonjour,
Petit problème VBA Excel sous Office 2010 :

J'ai une macro simplissime qui se contente d'aller chercher des infos sur une
page html en pilotant internet explorer depuis Excel VBA :

Sub test()
Set ie = CreateObject("InternetExplorer.Application")
ie.Navigate ("http://google.fr")
ie.Visible = True
Do While ie.ReadyState <> 4
Loop
Set dct = ie.Document
MsgBox dct.Title
End Sub

La macro, qui fonctionnait correctement depuis des années sous XP, continue
de fonctionner sous W7-Office 2010.

Par contre, si j'essaie de remplacer "http://google.fr" par une bête page
html en local (sur C:), rien ne va plus :
l'objet ie est bien créé, la page html est bien ouverte, mais il semble que
dès l'ouverture de la page, l'objet ie soit supprimé : quand on cherche à
accéder aux propriétés de la page, on reçoit un message d'erreur disant que
l'objet invoqué s'est déconnecté ! (la page html reste ouverte)

Je précise qu'il s'agit d'un ordinateur d'entreprise, et que le test a été
fait dans les mêmes conditions dans une autre entreprise, avec le même
résultat.
On peut imaginer que certains droits d'accès sont restreints pour raisons de
sécurité, mais il est surprenant qu'on puisse accéder à un fichier internet
et pas a un fichier local !
A noter : Excel peut accéder au fichier local sans problème par
Workbooks.open(fichier html local).

Tout ça me semble bien étrange !
J'imagine qu'il y a un paramétrage à faire, mais de quoi ??

D'avance merci

http://jacxl.free.fr
Avatar
j
merci, c'est déjà un indice...


"DanielCo" a écrit dans le message de groupe de
discussion : j2dmo7$c0c$
Bonjour,
Ce qui est sûr, c'est que ce n'est pas une question de droits liés à une
entreprise, le problème se produit également chez moi.
Cordialement.
Daniel


Bonjour,
Petit problème VBA Excel sous Office 2010 :

J'ai une macro simplissime qui se contente d'aller chercher des infos sur
une page html en pilotant internet explorer depuis Excel VBA :

Sub test()
Set ie = CreateObject("InternetExplorer.Application")
ie.Navigate ("http://google.fr")
ie.Visible = True
Do While ie.ReadyState <> 4
Loop
Set dct = ie.Document
MsgBox dct.Title
End Sub

La macro, qui fonctionnait correctement depuis des années sous XP,
continue de fonctionner sous W7-Office 2010.

Par contre, si j'essaie de remplacer "http://google.fr" par une bête page
html en local (sur C:), rien ne va plus :
l'objet ie est bien créé, la page html est bien ouverte, mais il semble
que dès l'ouverture de la page, l'objet ie soit supprimé : quand on
cherche à accéder aux propriétés de la page, on reçoit un message
d'erreur disant que l'objet invoqué s'est déconnecté ! (la page html
reste ouverte)

Je précise qu'il s'agit d'un ordinateur d'entreprise, et que le test a
été fait dans les mêmes conditions dans une autre entreprise, avec le
même résultat.
On peut imaginer que certains droits d'accès sont restreints pour raisons
de sécurité, mais il est surprenant qu'on puisse accéder à un fichier
internet et pas a un fichier local !
A noter : Excel peut accéder au fichier local sans problème par
Workbooks.open(fichier html local).

Tout ça me semble bien étrange !
J'imagine qu'il y a un paramétrage à faire, mais de quoi ??

D'avance merci

http://jacxl.free.fr




Avatar
MichD
Bonjour,

Sous Excel 2010, 64 bits et Windows 64 bits.

J'ai enregistré cette page http://druide.com/ sur le disque dur c:Druide informatique inc_.htm

Et j'ai testé ta procédure :

'----------------------------------------------
Sub test()
Set ie = CreateObject("InternetExplorer.Application")
'ie.Navigate ("http://google.fr")

ie.Navigate ("c:Druide informatique inc_.htm")
ie.Visible = True
Do While ie.ReadyState <> 4
Loop
Set dct = ie.Document
MsgBox dct.Title
End Sub
'----------------------------------------------

Conclusion : la page enregistrée sur le disque dur s'ouvre normalement dans le fureteur Internet Explorer.


MichD
------------------------------------------


"" a écrit dans le message de groupe de discussion : 4e4acb62$0$32157$

merci, c'est déjà un indice...


"DanielCo" a écrit dans le message de groupe de
discussion : j2dmo7$c0c$
Bonjour,
Ce qui est sûr, c'est que ce n'est pas une question de droits liés à une
entreprise, le problème se produit également chez moi.
Cordialement.
Daniel


Bonjour,
Petit problème VBA Excel sous Office 2010 :

J'ai une macro simplissime qui se contente d'aller chercher des infos sur
une page html en pilotant internet explorer depuis Excel VBA :

Sub test()
Set ie = CreateObject("InternetExplorer.Application")
ie.Navigate ("http://google.fr")
ie.Visible = True
Do While ie.ReadyState <> 4
Loop
Set dct = ie.Document
MsgBox dct.Title
End Sub

La macro, qui fonctionnait correctement depuis des années sous XP,
continue de fonctionner sous W7-Office 2010.

Par contre, si j'essaie de remplacer "http://google.fr" par une bête page
html en local (sur C:), rien ne va plus :
l'objet ie est bien créé, la page html est bien ouverte, mais il semble
que dès l'ouverture de la page, l'objet ie soit supprimé : quand on
cherche à accéder aux propriétés de la page, on reçoit un message
d'erreur disant que l'objet invoqué s'est déconnecté ! (la page html
reste ouverte)

Je précise qu'il s'agit d'un ordinateur d'entreprise, et que le test a
été fait dans les mêmes conditions dans une autre entreprise, avec le
même résultat.
On peut imaginer que certains droits d'accès sont restreints pour raisons
de sécurité, mais il est surprenant qu'on puisse accéder à un fichier
internet et pas a un fichier local !
A noter : Excel peut accéder au fichier local sans problème par
Workbooks.open(fichier html local).

Tout ça me semble bien étrange !
J'imagine qu'il y a un paramétrage à faire, mais de quoi ??

D'avance merci

http://jacxl.free.fr




Avatar
DanielCo
Bonjour Denis,
Mais est-ce que tu affiches le msgbox ?
Cordialement.
Daniel

MichD a écrit
Bonjour,

Sous Excel 2010, 64 bits et Windows 64 bits.

J'ai enregistré cette page http://druide.com/ sur le disque dur c:Druide
informatique inc_.htm

Et j'ai testé ta procédure :

'----------------------------------------------
Sub test()
Set ie = CreateObject("InternetExplorer.Application")
'ie.Navigate ("http://google.fr")

ie.Navigate ("c:Druide informatique inc_.htm")
ie.Visible = True
Do While ie.ReadyState <> 4
Loop
Set dct = ie.Document
MsgBox dct.Title
End Sub
'----------------------------------------------

Conclusion : la page enregistrée sur le disque dur s'ouvre normalement dans
le fureteur Internet Explorer.


MichD
------------------------------------------
Avatar
MichD
Bonjour Daniel,

La fenêtre du Message Box affiche l'adresse du site internet : "Druite informatique inc"



MichD
------------------------------------------
"DanielCo" a écrit dans le message de groupe de discussion : j2fqhm$2b0$

Bonjour Denis,
Mais est-ce que tu affiches le msgbox ?
Cordialement.
Daniel

MichD a écrit
Bonjour,

Sous Excel 2010, 64 bits et Windows 64 bits.

J'ai enregistré cette page http://druide.com/ sur le disque dur c:Druide
informatique inc_.htm

Et j'ai testé ta procédure :

'----------------------------------------------
Sub test()
Set ie = CreateObject("InternetExplorer.Application")
'ie.Navigate ("http://google.fr")

ie.Navigate ("c:Druide informatique inc_.htm")
ie.Visible = True
Do While ie.ReadyState <> 4
Loop
Set dct = ie.Document
MsgBox dct.Title
End Sub
'----------------------------------------------

Conclusion : la page enregistrée sur le disque dur s'ouvre normalement dans
le fureteur Internet Explorer.


MichD
------------------------------------------
Avatar
DanielCo
Exact, et pourtant ça plante avec un document Word enregistré au format
html. Est-ce que tu pourrais vérifier ?
Daniel


Bonjour Daniel,

La fenêtre du Message Box affiche l'adresse du site internet : "Druite
informatique inc"



MichD
Avatar
MichD
Avec Excel 2007 32 bits, Windows7 64 bits

La fenêtre du message est vide si j'enregistre un fichier Word au format Html

MichD
--------------------------------------------
"DanielCo" a écrit dans le message de groupe de discussion : 4e4b9767$0$29531$

Exact, et pourtant ça plante avec un document Word enregistré au format
html. Est-ce que tu pourrais vérifier ?
Daniel


Bonjour Daniel,

La fenêtre du Message Box affiche l'adresse du site internet : "Druite
informatique inc"



MichD
Avatar
MichD
Avec Excel 2010 64 bits et Windows 7, 64 bits
la fenêtre du message demeure vide si le fichier enregistré au format Html était un document Word.



MichD
------------------------------------------
"DanielCo" a écrit dans le message de groupe de discussion : 4e4b9767$0$29531$

Exact, et pourtant ça plante avec un document Word enregistré au format
html. Est-ce que tu pourrais vérifier ?
Daniel


Bonjour Daniel,

La fenêtre du Message Box affiche l'adresse du site internet : "Druite
informatique inc"



MichD
Avatar
DanielCo
Dans ce cas, avec les mêmes logiciels, j'ai une erreur d'exécution
'-2147417848 (80010108)' erreur d'automation, l'objet invoqué s'est
déconnecté de ses clients.
Dans la fenêtre des variables locales, l'objet "ie" apparaît sans
aucune propriété.
Daniel


Avec Excel 2007 32 bits, Windows7 64 bits

La fenêtre du message est vide si j'enregistre un fichier Word au format Html

MichD
--------------------------------------------
"DanielCo" a écrit dans le message de groupe de discussion :
4e4b9767$0$29531$

Exact, et pourtant ça plante avec un document Word enregistré au format
html. Est-ce que tu pourrais vérifier ?
Daniel


Bonjour Daniel,

La fenêtre du Message Box affiche l'adresse du site internet : "Druite
informatique inc"



MichD
Avatar
MichD
Si tu vas à cette adresse : http://support.microsoft.com/kb/186063/fr

Tu pourras lire que le message d'erreur signifie ceci :
'----------------
"Microsoft Excel est l'application serveur. L'erreur est générée par une référence à un objet classeur qui a été détruit
(ou fermé)."
'----------------

As-tu essayé en déclarant la variable Dct de différentes manières ?
Si je regarde dans l'explorateur d'objet "Document" n'est pas une classe objet,
mais une propriété de l'objet "Internet Explorer"
Par exemple, on ne peut pas déclarer la variable
Dim Dct as Document ou Dct As InternetExplorer.Document

Selon que l'application Internet Explorer affiche une vraie page web ou contient
le contenu d'une application "Word" dans notre exemple, il semble y avoir une
différence quant à la manière d'y faire référence...
(Je m'arrête ici... je ne connais pas très bien le modèle objet Internet Explorer...

A )
Dim Dct as Object
'le reste de la macro

B )
En ajoutant la référence : "Microsoft Internet Controls"

Sub test1()
Dim Ie As New InternetExplorer
Ie.Navigate ("c:Word_Page Web.htm")
Ie.Visible = True
Do While Ie.ReadyState <> 4
Loop
Set dct = Ie.Document
MsgBox dct.Title
End Sub

Je donne cette adresse en complément, cela pourrait intéresser certains...
http://support.microsoft.com/kb/162059


MichD
--------------------------------------------
"DanielCo" a écrit dans le message de groupe de discussion : j2gf1f$hcl$

Dans ce cas, avec les mêmes logiciels, j'ai une erreur d'exécution
'-2147417848 (80010108)' erreur d'automation, l'objet invoqué s'est
déconnecté de ses clients.
Dans la fenêtre des variables locales, l'objet "ie" apparaît sans
aucune propriété.
Daniel


Avec Excel 2007 32 bits, Windows7 64 bits

La fenêtre du message est vide si j'enregistre un fichier Word au format Html

MichD
--------------------------------------------
"DanielCo" a écrit dans le message de groupe de discussion :
4e4b9767$0$29531$

Exact, et pourtant ça plante avec un document Word enregistré au format
html. Est-ce que tu pourrais vérifier ?
Daniel


Bonjour Daniel,

La fenêtre du Message Box affiche l'adresse du site internet : "Druite
informatique inc"



MichD
1 2 3 4