2008-11-15 8 views
0

Comment ajouter un lien hypertexte à un document Word à l'aide d'un signet existant. J'ai testé en utilisant IRB mais continuer à obtenir La commande a échoué. J'ai attaché à une application de mot en cours d'avoir le texte que je veux lier à l'hyperlien. Pour tester, j'ai essayé d'ajouter un hyperlien google. Je pense qu'une fois que je l'aurai, je serais capable de comprendre le signet. Ceci est la commande que je utiliseAjout de liens hypertexte aux signets créés dans un documnet Word à l'aide de Ruby

doc.Hyperlink.add(word.selection, 'http://www.google.com', '','','text to display') 

Les deux parms vierges sont pour SubAddress et respectivly info-bulle.

Répondre

1

addition- née

Vous êtes très proche ...

Modifier cette ...

doc.Hyperlink.add(word.selection, 'http://www.google.com', '','','text to display') 

... à cette ...

doc.Hyperlinks.add(word.selection.Range, 'http://www.google.com', '','','text to display') 

Il étaient deux changements nécessaires:

(1) Vous appelez la méthode Add sur la collection Hyperliens (pluriel), et (2) le premier argument doit être un objet Range.

Avec ces modifications, votre code fonctionne pour moi.

+0

Vérifié comme correct. Voir cette page sur l'utilisation de Ruby et mot ensemble: http://rubyonwindows.blogspot.com/2007/04/automating-word-with-ruby-application.html Fondamentalement: ** 1) ** Démarrer le mot, tapez du texte et sélectionnez-le ** 2) ** Dans IRB 'require 'win32ole'' ** 3) **' word = WIN32OLE.connect (' Word.Application ') 'pour se connecter au mot ** 4) **' doc = mot .ActiveDocument' pour obtenir le doc actuel ** 5) ** Coller le code de @David Mullet pour tester. – atomicules

Questions connexes