> Tous les forums > Forum Bureautique
 Signet Word dans ExcelSujet résolu
Ajouter un message à la discussion
Page : [1] 
Page 1 sur 1
Porruak
  Posté le 02/01/2012 @ 11:44 
Aller en bas de la page 
Petit astucien

Bonjour,

Je cherche à créer un fichier word qui soit autonome et qui à partir de quelques champs dont on peut changer les valeurs tout le document se remet à jour.

Pour illustrer certaines formules, je passe par l'incorporation d'un tableau excel dans lequel je souhaite récupérer les valeurs contenu dans des signets du document word.

L'utilisation du tableur excel me permet de profiter de capacité de calcul d'excel.

Ma question est donc la suivante, existe une fonction sous VBA qui pourrait me permettre d'attribuer à une cellule excel la valeur d'un signet du document word?

l'objectif serait d'écrire si possible dans la cellule excel la formule suivante "=fonction_signet("nom signet")"

Petite précision, je travail sur la version 2003 d'office.

Sincères salutations.

Publicité
Porruak
 Posté le 02/01/2012 à 13:39 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien

Peut être qu'à partir de cette macro qui me permet dans un fichier excel idépendant de récupérer tous les signets vous pourrez m'aider à trouver une soluce

Sub Signets()
i = 0
Set WordApp = CreateObject("word.application")
'WordApp.Visible = True 'Si activer, l'ouverture de Word est visible à l'écran
WordApp.Documents.Open Filename:="C:\toto.doc"
For Each X In WordApp.ActiveDocument.Bookmarks
ActiveSheet.Range("A1").Offset(i, 2).Value = X
ActiveSheet.Range("A1").Offset(i, 0).Value = X.Name
ActiveSheet.Range("A1").Offset(i, 1).Value = X.Range
i = i + 1
Next
WordApp.Quit
Set WordApp = Nothing
End Sub

Porruak
 Posté le 02/01/2012 à 14:58 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien

En ajoutant une condition sur X je peux choisir le signet que je veux afficher

if X = nom_signet then

le problème est de convertir cette macro en fonction et de ne pas ouvrir le document word (il est déjà ouvert) pour rechercher le signet.

Si quelqu'un peut m'aider please...

Porruak
 Posté le 02/01/2012 à 15:08 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien

La conversion suivante ne fonctionne pas

Public function Signets(Nsignet as string)
i = 0
Set WordApp = CreateObject("word.application")
'WordApp.Visible = True 'Si activer, l'ouverture de Word est visible à l'écran
WordApp.Documents.Open Filename:="C:\toto.doc"
For Each X In WordApp.ActiveDocument.Bookmarks

If X = Nsignet Then
ActiveSheet.Range("A1").Offset(i, 2).Value = X
ActiveSheet.Range("A1").Offset(i, 0).Value = X.Name
ActiveSheet.Range("A1").Offset(i, 1).Value = X.Range
i = i + 1

End If
Next
WordApp.Quit
Set WordApp = Nothing
End Sub

il m'ouvre bien le fichier mais me renvoi une erreur lors du calcul???

Porruak
 Posté le 02/01/2012 à 15:16 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien

Ok, petite erreur de ma part, la fonction suivante fonctionne parfaitement

Public Function Signets(NSignet As String)
i = 0
Set WordApp = CreateObject("word.application")
'WordApp.Visible = True 'Si activer, l'ouverture de Word est visible à l'écran
WordApp.Documents.Open Filename:="U:\M168\G-GUN-XX\CALCUL\toto.doc"
For Each X In WordApp.ActiveDocument.Bookmarks
If X = NSignet Then
Signets = X.Range
i = i + 1
End If
Next
WordApp.Quit
Set WordApp = Nothing
End Function

Reste à ne plus ouvrir le document par la ligne ("WordApp.Documents.Open Filename:="U:\M168\G-GUN-XX\CALCUL\toto.doc"")

Help!!!! Please!!!

Gabrilou
 Posté le 02/01/2012 à 15:37 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Astucienne

Je ne suis pas certaine d'avoir bien compris ta question.

Tu as actuellement deux fichiers disctincts. 1) Word ; 2) Une feuille Excel

Si tu fais des modifications ou ajout dans la feuille Excel, tu veux que ces changements se répercutent automatiquement dans ton document Word. C'est ça ?

A+

Porruak
 Posté le 02/01/2012 à 16:17 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien

Non, c'est l'inverse.

En fait je n'ai qu'un fichier Word dans lequel j'insére une feuille de calcul excel (voir image ci-dessous)

C'est dans cette feuille de calcul que je veux récupérer la valeur de certains de mes signets afin de faire des calculs et des représentation graphique.

En gros, je veux faire du MathCad avec Word... Je sais, c'st pas le top.

Gabrilou
 Posté le 02/01/2012 à 16:31 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Astucienne

Je n'aurais pas procédé comme ça et je ne saurais faire, mais je te laisse le lien de site de m@rina. Elle traite de ce sujet.

http://www.faqword.com/index.php/word-faq/vba-solutions/528-comment-recuperer-lensemble-des-signets-dun-document-word-dans-un-tableur-excel-.html

Edit : je n'avais pas vu ton message de 15h 16. C'est à peu près la même macro que sur le site dont le lien ci-dessus. Désolée...



Modifié par Gabrilou le 02/01/2012 16:37
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
Disque dur externe Western Digital My Book 12 To USB 3.0 à 264,64 €
264,64 € 315 € -16%
@Amazon Allemagne
Nettoyeur à ultrasons Geekbes 22 L à 149 €
169 € 205 € -18%
@Geekbuying
Ecran 24 pouces Viewsonic VA2405 (FullHD, VA, 75 Hz, VGA/HDMI) à 84,99 €
84,99 € 99,99 € -15%
@Cdiscount
Aspirateur robot laveur Proscenic M9 (4500Pa, double serpillère, contrôle par appli, compatible assistants vocaux, base de vidage automatique) à 275 €
275 € 419 € -34%
@Geekbuying
Ventirad ARCTIC Freezer 36 A-RGB à 27,71 €
27,71 € 45 € -38%
@Amazon
Norton 360 Deluxe (5 postes, 1 an) à 12,79 €
12,79 € 50 € -74%
@Amazon

Sujets relatifs
Coller des données brutes de mise en forme dans Excel/Word
Caractère invisible dans Excel et Word.
Difficultés insertion Excel dans un fichier Word
Fusion étiquettes fichier excel dans word
Comment SVP insérer un signet dans Word 2007 ?
Importation de fichier dans Word et Excel
copier plage excel 2003 coller dans word + m en p
Envoyer vers Grisé dans word et excel
fusion dans Word à partie de Excel
insertion tableau excel dans word
Plus de sujets relatifs à Signet Word dans Excel
 > Tous les forums > Forum Bureautique