Pb objet word dans feuille xls

C

Christophe

Guest
Bonjour à Tous,

Voila j'ai un petit problème avec une fonction que j'utilise pour tester si un objet word dans une feuille excel est vide ou pas le code est :

Sub Wvide(ByVal i)
Set WordObj = ActiveSheet.Shapes('Objet ' & i)
Set WordApp =WordObj.OLEFormat.Object.Object.Application
If WordApp.Selection.Document.Words.Count = 1 Then
test = 0
Else
test = 1
End If
End Sub

Dans i je met le numero de l'objet sur lequel je veux agir, j'ai une erreur au niveau de la ligne WordApp = WordObj.OLEFormat......

Est ce que vous souhaitez que je joigne le fichier ?

Merci et bonne aprés midi.
 

MichelXld

XLDnaute Barbatruc
bonjour Christophe


tu peux tester cette adaptation

Sub Test()
MsgBox Wvide(2)
Range('A1').Select
End Sub

Function Wvide(i As Integer) As String
Dim WordApp As Object
Dim WordObj As Shape

Set WordObj = ActiveSheet.Shapes(i)
Set WordApp = WordObj.OLEFormat.Object.Object.Application
WordObj.OLEFormat.Activate

If WordApp.Selection.Document.Words.Count = 1 Then
Wvide = 'Vide'
Else
Wvide = 'Non vide'
End If
End Function




bon apres midi
MichelXld
 
C

Christophe

Guest
Bonjour MichelXLD,

T'as solution marche mais pas tous le temps en fait, l'algo est bon mais il y des moments (je n'arrive pas à définir quand exactement) ou j'ai une erreur d'execution 1004, impossible de lire la classe propriété objet de la classe OLE ... je te joins le fichier .zip qui contient la feuille sommaire, je fait le test sur le bouton Synthese qui correspond au B-Tresorerie - Financement, cette image lance la macro BoutHaut_syntheseB_QuandClic.

Merci beaucoup, et merci a tous.
 
C

Christophe

Guest
Merci MichelXld, effectivement j'avais pas connaissance des modalités pour envoyer un fichier et ce dernier etait trop important. J'ai fait une version 'light' la macro a executer est toujours BoutHaut_syntheseB_QuandClic, je reste branché au forum pour voir si tu a pu recevoir le fichier ou pas.

Merci beaucoup. [file name=sommaire.zip size=34083]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/sommaire.zip[/file]
 

Pièces jointes

  • sommaire.zip
    43.3 KB · Affichages: 29
  • sommaire.zip
    43.3 KB · Affichages: 27
  • sommaire.zip
    43.3 KB · Affichages: 30

MichelXld

XLDnaute Barbatruc
rebonjour Christophe

je ne suis pas sur d'avoir bien compris mais tu peux essayer de remplacer

Set WordObj = ActiveSheet.Shapes(i)
Set WordApp = WordObj.OLEFormat.Object.Object.Application
WordObj.OLEFormat.Activate

par

Set WordObj = ActiveSheet.Shapes(i)
WordObj.OLEFormat.Activate
Set WordApp = WordObj.OLEFormat.Object.Object.Application



bonne soiree
MichelXld
 

Discussions similaires