Wie lassen sich Hyperlinks in MS Word für in anderen Textverarbeitungsprogrammen erstellte Dateien richtig anzeigen?

1193
surfmadpig

In meinem Job werden mir oft Artikel geschickt, die in verschiedenen Textverarbeitungsprogrammen erstellt wurden, die ich in Word 2013 öffne und bearbeite. In Bezug auf die Kompatibilität spielen sie jedoch nicht besonders gut zusammen.

Es gibt keine umfangreiche Formatierung, aber ich hatte große Probleme mit der Anzeige von Hyperlinks in diesen Artikeln.

  1. Eine Person schreibt in Pages (Mac) und speichert sie als .docx. Die Hyperlinks in ihren Dateien sind immer unterstrichen, jedoch niemals blau, wie es in Word der Fall ist: sie sind schwarz. Ich habe auch bemerkt, dass ich, wenn ich einen Link zu einer von ihr erstellten Datei hinzufüge, in schwarz unterstrichenem Text erscheint, nicht blau unterstrichen wie in meinen anderen Dateien.

  2. Eine andere Person sendet Dateien als .rtf - nicht sicher, welches Programm aber auf einem Mac. Die Hyperlinks in seinen Dateien haben keine andere Formatierung als der Rest des Textes. Nur wenn Sie mit der Maus in Word fahren, können Sie feststellen, dass dort ein Link vorhanden ist. In meinem Word 2013 sind Hyperlinks und normaler Text identisch. Interessanterweise werden in der Google Mail-Vorschau die Links in diesen Dateien in Ordnung dargestellt (blau, unterstrichen). Daher habe ich dies als Problemumgehung verwendet. Die besagte Person hat versucht, stattdessen als .docx zu speichern, aber die Hyperlinks haben die Konvertierung überhaupt nicht überlebt - sie sind nicht einmal dort, wenn Sie mit der Maus über die Stelle fahren, an der sie sich befanden.

Gibt es eine Möglichkeit für mich (und nicht für diese beiden), diese Dateien nach Erhalt automatisch in Dateien zu ändern, bei denen Hyperlinks normalerweise, in unterschiedlicher Farbe und unterstrichen angezeigt werden?

Fall # 1 ist erträglich, aber # 2 ist seit einiger Zeit ein Schmerz.

Beispieldatei von Fall Nr. 2 (enthält nur einen Hyperlink): http://s000.tinyupload.com/index.php?file_id=45065577867642123191

0
Könnten Sie ein kleines Beispiel von Fall Nr. 2 posten? harrymc vor 8 Jahren 0
Glücklicherweise, aber nicht sicher, was hier gezeigt werden soll - wenn es sich nicht um die tatsächlichen Hyperlinks handelt, die nicht in einem anderen Format vorliegen, gehen Sie hier: http://postimg.org/image/rh7gm4k3f/ (Das Popup-Fenster wird angezeigt, wenn Sie über Weitere Abenteuer in Finanzen und Verbrechen schweben , wo sich der Hyperlink befindet). surfmadpig vor 8 Jahren 0
Ich habe nach einer Beispieldatei gefragt, die ich studieren könnte. Vielleicht zwei davon: docx für Fall 1 und RTF für Fall 2. Es macht keinen Sinn, große Dateien zu geben. harrymc vor 8 Jahren 0
@bibadia: War eine großartige Idee, funktioniert aber leider nicht. Ich habe auch versucht, mit den Optionen zu spielen ... immer noch nichts. Es ist, als ob das Format nicht formatierter Hyperlinks Teil des eingebetteten Stils ist, aber Autoformat überschreibt es nicht. Ich habe zuerst versucht, in .docx zu konvertieren, dann automatisch und ohne zu formatieren. Kein Glück. surfmadpig vor 8 Jahren 0
@ harrymc: Der Beitrag wurde gerade mit einem kurzen Beispiel bearbeitet. surfmadpig vor 8 Jahren 0
Es gibt nichts zu Link 2 von Fall 2. ejbytes vor 8 Jahren 0
Für alle, die diese Frage betrachten, besteht das Problem mit der DOCX-Beispieldatei, die ich von Mac Pages (Version 5.6.2) exportiert habe, darin, dass der Stil des Anzeigetexts "Hyperlink.0" und nicht "Hyperlink" heißt. Ob dies das gleiche Problem ist, das beim OP aufgetreten ist, oder das einzige Problem beim Export von Seiten, kann ich nicht sagen. vor 8 Jahren 0

3 Antworten auf die Frage

1
harrymc

Ich habe die Beispieldatei studiert und glaube, ich habe die Wurzel des Problems verstanden: Das RTF-Format hat Hyperlink-Felder, aber nicht den Hyperlink-Stil. Nur weiter entwickelte Dokumentenformate haben diesen Stil: DOC, DOCX und DOCM.

Die Hyperlink-Felder im RTF-Dokument sind korrekt definiert, jedoch mit dem Stil "Normal" und nicht mit dem Hyperlink-Stil. Leider kann Word dieses Problem nicht automatisch beheben.

Die Lösung, mit der ich die Beispieldatei korrigierte, lautete:

  1. Speichern Sie die RTF-Datei als DOCM, damit sie einen Hyperlink-Stil hat
    (DOCM ist mit DOCX identisch, mit der Ausnahme, dass Makros zulässig sind.)
  2. Führen Sie ein VBA-Makro aus, das den Stil aller Hyperlink-Felder auf Hyperlink setzt

Das von mir verwendete VBA-Makro ist unten aufgeführt:

Sub hyper() For Each oHyperlink In ActiveDocument.Hyperlinks oHyperlink.Range.Style = ActiveDocument.Styles("Hyperlink") Next oHyperlink ActiveDocument.Range.Fields.Update End Sub 

Der Vorteil dieser Lösung besteht darin, dass sie allen Hyperlink-Feldern den echten Hyperlink-Stil zuweist. Dies ist besser als nur kosmetische Änderungen wie Schriftfarbe und Unterstreichung vorzunehmen.

Vielen Dank, dieses Makro hat für Fall # 2 gut funktioniert, aber interessanterweise nicht für # 1 - Dokumente, die in Pages erstellt wurden. Kann man es auch mit Befehlen ändern, um die Standardschriftart und die Schriftgröße zu ändern? surfmadpig vor 8 Jahren 0
Mit `oHyperlink.Range` kann man alles tun, was nicht gewünscht ist, und nicht nur den Stil festlegen. Fall Nr. 1: Sie könnten ein Beispiel posten, aber möglicherweise zuerst [Ansichtsfeldcodes aktivieren] (http://wordribbon.tips.net/T006080_Tools_to_View_Field_Codes.html), um zu sehen, wie / ob Pages diese Felder erstellt hat. harrymc vor 8 Jahren 0
0
Seyyed Sajjad Moosavi

Wenn alle Hyperlinks tatsächlich Hyperlinks sind (nicht nur Text), dann

Ärgern Sie sich nicht mehr, mein Freund

10 einfache Schritte erwarten Sie.

Versuche dies:

  1. Drücken Sie Alt+F9in dem Dokument, in dem Sie die Änderung sehen möchten (dies wird alle Hyperlinks transformieren und enthüllen, nichts, worüber Sie sich Sorgen machen müssen).
  2. Drücken Sie Ctrl+Hzu öffnen Find and Replace.
  3. Geben Sie ^d hyperlinkin das FindFeld ein.
  4. Bewegen Sie den Cursor und wählen Sie das Replace withKästchen aus, geben Sie jedoch nichts ein.
  5. Klicken Sie auf die MoreSchaltfläche unter dem Replace withFeld.
  6. Klicken Sie auf die FormatSchaltfläche unter den anderen Optionen, die Sie gerade angezeigt haben.
  7. Klicken Sie auf Style.
  8. Wählen Sie Hyperlinkaus der Liste aus (drücken Sie Hauf Ihrer Tastatur, um sie leichter zu finden) und klicken Sie auf OK.
  9. Klicken Sie auf Replace Allund voila! Das ist alles erledigt.
  10. Schließen Sie das Find and ReplaceFenster und drücken Sie Alt+F9.

TIPP: Wenn Sie dies nicht jedes Mal für jedes Dokument tun möchten, können Sie eine Makrofunktion erstellen und auf der Multifunktionsleiste platzieren. Nur noch einen Mausklick von da an.

Ich hoffe es hilft.

Danke, Seyyed. Das klingt nach etwas, das funktionieren sollte, aber es funktioniert nicht. Ich glaube, ich weiß warum: In der Popup-Seite "Stil suchen" wird in der Beschreibung des Hyperlinks im "schlechten" Dokument "Schriftfarbe: Hyperlink" und zwar das gleiche Feld angezeigt In einem von mir erstellten normalen Dokument steht "Schriftfarbe: Blau". Wie ich vermutete, handelt es sich also um die Style-Informationen, die in diesen spezifischen Dateien selbst enthalten sind. Irgendwelche Ideen? surfmadpig vor 8 Jahren 0
0

Zu groß für einen Kommentar (was es sein sollte, weil dies nicht gut getestet ist und möglicherweise nicht das macht, was Sie möchten).

Wenn AutoFormat nicht genug tut (wie in unseren Unterhaltungen in den Kommentaren), denke ich, dass Sie jeden Hyperlink ziemlich viel tun müssen, dh

  • Stellen Sie sicher, dass es von Word als Hyperlink erkannt wurde (in diesem Fall sollten Sie in der Lage sein, einen -Feldcode zu sehen, wenn Sie Alt-F9 verwenden.
  • Wenden Sie den Hyperlink-Zeichenstil auf das Ergebnis des HYPERLINK-Felds an
  • Wenden Sie die Zeichenformatierung erneut auf das HYPERLINK-Feldergebnis an, um den durch den Hyperlink-Stil verursachten Schaden zu beheben

Wenn der importierte Text eine Reihe von Hyperlinks enthält, ist dies wahrscheinlich sehr langwierig. Daher soll der folgende Teil von VBA Hyperlinks im Hauptteil des derzeit aktiven Word-Dokuments korrigieren.

Es werden nur Dinge erkannt, von denen Word glaubt, dass sie Hyperlinks sind (nicht unbedingt alles, was Sie erwarten).

Ich würde vorschlagen, dass Sie importierte Texte nach Möglichkeit zuerst als separate Dokumente öffnen und dann diesen Code ausführen. Das sollte unerwünschte Nebenwirkungen minimieren.

Der Hyperlink-Zeichenstil besteht darin, dass er die "Standard-Absatzschrift" verwendet, die möglicherweise nicht die gleichen Eigenschaften (z. B. Größe usw.) wie der vorhandene Text aufweist. Selbst wenn Sie den Stil so ändern, dass "Underlying Properties" verwendet wird, ändert sich möglicherweise die Textgröße usw. Was ich hier getan habe, ist, die Eigenschaften des ersten Zeichens im "Anzeigetext" für den Hyperlink zu betrachten und auf den gesamten Anzeigetext anzuwenden, nachdem der Hyperlink-Stil angewendet wurde.

Wenn Sie jedoch Ihre eigenen Absatzformate auf den importierten Text anwenden, ist es wahrscheinlicher, dass Text, der im Hyperlink-Stil gestaltet ist, das tut, was Sie möchten, sodass Sie dieses Stück VBA möglicherweise entfernen können.

Wenn Sie nach Hyperlinks in anderen "Stories" im Dokument suchen müssen, z. B. in Textfeldern, Kopf- / Fußzeilen usw., benötigen Sie auf jeden Fall mehr.

Private Type AutoFormatOptions bAutoFormatApplyBulletedLists As Boolean bAutoFormatApplyFirstIndents As Boolean bAutoFormatApplyHeadings As Boolean bAutoFormatApplyLists As Boolean bAutoFormatApplyOtherParas As Boolean bAutoFormatDeleteAutoSpaces As Boolean bAutoFormatMatchParentheses As Boolean bAutoFormatPlainTextWordMail As Boolean bAutoFormatPreserveStyles As Boolean bAutoFormatReplaceFarEastDashes As Boolean bAutoFormatReplaceFractions As Boolean bAutoFormatReplaceHyperlinks As Boolean bAutoFormatReplaceOrdinals As Boolean bAutoFormatReplacePlainTextEmphasis As Boolean bAutoFormatReplaceQuotes As Boolean bAutoFormatReplaceSymbols As Boolean End Type Sub fixUpHyperlinks()  Dim afo As AutoFormatOptions  Dim f As Word.Font  Dim h As Word.Hyperlink ' Save existing autoformat options  With Application.Options afo.bAutoFormatApplyBulletedLists = .AutoFormatApplyBulletedLists afo.bAutoFormatApplyFirstIndents = .AutoFormatApplyFirstIndents afo.bAutoFormatApplyHeadings = .AutoFormatApplyHeadings afo.bAutoFormatApplyLists = .AutoFormatApplyLists afo.bAutoFormatApplyOtherParas = .AutoFormatApplyOtherParas afo.bAutoFormatDeleteAutoSpaces = .AutoFormatDeleteAutoSpaces afo.bAutoFormatMatchParentheses = .AutoFormatMatchParentheses afo.bAutoFormatPlainTextWordMail = .AutoFormatPlainTextWordMail afo.bAutoFormatPreserveStyles = .AutoFormatPreserveStyles afo.bAutoFormatReplaceFarEastDashes = .AutoFormatReplaceFarEastDashes afo.bAutoFormatReplaceFractions = .AutoFormatReplaceFractions afo.bAutoFormatReplaceHyperlinks = .AutoFormatReplaceHyperlinks afo.bAutoFormatReplaceOrdinals = .AutoFormatReplaceOrdinals afo.bAutoFormatReplacePlainTextEmphasis = .AutoFormatReplacePlainTextEmphasis afo.bAutoFormatReplaceQuotes = .AutoFormatReplaceQuotes afo.bAutoFormatReplaceSymbols = .AutoFormatReplaceSymbols End With On Error GoTo cleanup  ' set everything the way we want  With Application.Options ' all false .AutoFormatApplyBulletedLists = False .AutoFormatApplyFirstIndents = False .AutoFormatApplyHeadings = False .AutoFormatApplyLists = False .AutoFormatApplyOtherParas = False .AutoFormatDeleteAutoSpaces = False .AutoFormatMatchParentheses = False .AutoFormatPlainTextWordMail = False .AutoFormatPreserveStyles = False .AutoFormatReplaceFarEastDashes = False .AutoFormatReplaceFractions = False ' except this one .AutoFormatReplaceHyperlinks = True .AutoFormatReplaceOrdinals = False .AutoFormatReplacePlainTextEmphasis = False .AutoFormatReplaceQuotes = False .AutoFormatReplaceSymbols = False End With  With ActiveDocument  ' Apply the selected formats .Kind = wdDocumentNotSpecified .Content.AutoFormat  ' Now apply the Hyperlink style to all Hyperlink field result ranges  For Each h In .Hyperlinks With .Range.Fields(1).Result If .Characters.Count >= 1 Then ' Remove the following line if the Hyperlink style works for you Set f = .Characters(1).Font.Duplicate ' Apply the Hyperlink style .Style = ActiveDocument.Styles(wdStyleHyperlink).NameLocal ' Remove the following 2 lines if the Hyperlink style works for you Set .Font = f set f = Nothing End If End With Next  End With  cleanup: ' restore the original settings  With Application.Options .AutoFormatApplyBulletedLists = afo.bAutoFormatApplyBulletedLists .AutoFormatApplyFirstIndents = afo.bAutoFormatApplyFirstIndents .AutoFormatApplyHeadings = afo.bAutoFormatApplyHeadings .AutoFormatApplyLists = afo.bAutoFormatApplyLists .AutoFormatApplyOtherParas = afo.bAutoFormatApplyOtherParas .AutoFormatDeleteAutoSpaces = afo.bAutoFormatDeleteAutoSpaces .AutoFormatMatchParentheses = afo.bAutoFormatMatchParentheses .AutoFormatPlainTextWordMail = afo.bAutoFormatPlainTextWordMail .AutoFormatPreserveStyles = afo.bAutoFormatPreserveStyles .AutoFormatReplaceFarEastDashes = afo.bAutoFormatReplaceFarEastDashes .AutoFormatReplaceFractions = afo.bAutoFormatReplaceFractions .AutoFormatReplaceHyperlinks = afo.bAutoFormatReplaceHyperlinks .AutoFormatReplaceOrdinals = afo.bAutoFormatReplaceOrdinals .AutoFormatReplacePlainTextEmphasis = afo.bAutoFormatReplacePlainTextEmphasis .AutoFormatReplaceQuotes = afo.bAutoFormatReplaceQuotes .AutoFormatReplaceSymbols = afo.bAutoFormatReplaceSymbols End With  ' Application.Options.AutoFormatApplyBulletedLists ' Selection.Document.Kind = wdDocumentNotSpecified ' Selection.Range.AutoFormat End Sub