Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Word 2010: Suchen und Ersetzen mit Querverweis

Frage Microsoft Microsoft Office

Mitglied: malika

malika (Level 2) - Jetzt verbinden

02.07.2014, aktualisiert 19.09.2014, 2916 Aufrufe, 10 Kommentare, 3 Danke

Hallo,

ich bräuchte einen Tipp. Wie kann man im Word 2010 nach einem bestimmten Text über die Funktion »Suchen und Ersetzen« (F5-Taste) suchen und mit Querverweis ersetzen?

Danke!
Mitglied: colinardo
02.07.2014, aktualisiert um 11:18 Uhr
Hallo Malika,
könnte man mit einem VBA Makro erledigen (Suchwort: Zeile 4):
01.
Sub ReplaceTextWithCrossReference() 
02.
    ActiveDocument.Content.Select 
03.
    With Selection.Find 
04.
        .Text = "Suchwort" 
05.
        .Replacement.Text = "" 
06.
        .Forward = True 
07.
        .Wrap = wdFindStop 
08.
        .Format = False 
09.
        .MatchCase = False 
10.
        .MatchWholeWord = True 
11.
        .MatchWildcards = False 
12.
        .MatchSoundsLike = False 
13.
        .MatchAllWordForms = False 
14.
    End With 
15.
    While Selection.Find.Execute 
16.
        Selection.InsertCrossReference ReferenceType:="Überschrift", ReferenceKind _ 
17.
        :=wdContentText, ReferenceItem:="1", InsertAsHyperlink:=True, _ 
18.
        IncludePosition:=False, SeparateNumbers:=False, SeparatorString:=" " 
19.
    Wend 
20.
End Sub
Die Parameter für den Querverweis musst du natürlich an deine Gegebenheiten anpassen. Im Beispiel wird die erste Überschrift referenziert.
Tipp: Zeichne dir mit der Makro-Aufzeichnen Funktion den InsertCrossReference Befehl auf so musst du nicht raten welche Parameter du benötigst.

Grüße Uwe
Bitte warten ..
Mitglied: malika
02.07.2014 um 12:28 Uhr
Danke Uwe!

Meine Endversion:

01.
Sub ReplaceTextWithCrossReference() 
02.
 
03.
    ActiveDocument.Content.Select 
04.
 
05.
    With Selection.Find 
06.
        .Text = "Test-Text" 
07.
        .Replacement.Text = "" 
08.
        .Forward = True 
09.
        .Wrap = wdFindStop 
10.
        .Format = False 
11.
        .MatchCase = False 
12.
        .MatchWholeWord = True 
13.
        .MatchWildcards = False 
14.
        .MatchSoundsLike = False 
15.
        .MatchAllWordForms = False 
16.
    End With 
17.
 
18.
    While Selection.Find.Execute 
19.
        Selection.InsertCrossReference ReferenceType:="Textmarke", ReferenceKind:= _ 
20.
        wdContentText, ReferenceItem:="txt_Firstname", _ 
21.
        InsertAsHyperlink:=True, IncludePosition:=False, SeparateNumbers:=False, _ 
22.
        SeparatorString:=" " 
23.
    Wend 
24.
 
25.
End Sub
»txt_Firstname« ist der Querverweis als Textmarkenname; »Test-Text« ist das gesuchte Wort.

Leider bei jedem Aufruf muss man die Beiden immer anpassen.
Bitte warten ..
Mitglied: colinardo
LÖSUNG 02.07.2014, aktualisiert 19.09.2014
Zitat von malika:
Leider bei jedem Aufruf muss man die Beiden immer anpassen.
auch kein Beinbruch . Diese Version übernimmt zusätzlich den aktuell markierten Text im Dokument in die Suchabfragebox, sollte eine Auswahl bestehen.
01.
Sub ReplaceWithCrossReference() 
02.
    Dim strDefault, strSuchwort, strTextmarke 
03.
    If Not Selection Is Nothing Then 
04.
        strDefault = Selection.Text 
05.
    End If 
06.
    strSuchwort = InputBox("Geben sie das Suchwort ein:", "Suchwort", strDefault) 
07.
    strTextmarke = InputBox("Geben sie die Textmarke ein:", "Textmarke") 
08.
    If strSuchwort <> "" And strTextmarke <> "" Then 
09.
        ActiveDocument.Content.Select 
10.
        With Selection.Find 
11.
            .Text = strSuchwort 
12.
            .Replacement.Text = "" 
13.
            .Forward = True 
14.
            .Wrap = wdFindStop 
15.
            .Format = False 
16.
            .MatchCase = False 
17.
            .MatchWholeWord = True 
18.
            .MatchWildcards = False 
19.
            .MatchSoundsLike = False 
20.
            .MatchAllWordForms = False 
21.
        End With 
22.
        While Selection.Find.Execute 
23.
            Selection.InsertCrossReference ReferenceType:="Textmarke", ReferenceKind _ 
24.
            :=wdContentText, ReferenceItem:=strTextmarke, InsertAsHyperlink:=True, _ 
25.
            IncludePosition:=False, SeparateNumbers:=False, SeparatorString:=" " 
26.
             
27.
            Selection.MoveLeft Unit:=wdWord, Count:=1 
28.
            Selection.Expand Unit:=wdWord 
29.
            For Each oField In Selection.Fields 
30.
                If oField.Type = wdFieldRef Then 
31.
                    scode = oField.Code.Text 
32.
                    If InStr(scode, "Charformat") = 0 Then oField.Code.Text = scode & "\* Charformat" 
33.
                End If 
34.
            Next 
35.
            Selection.Fields.Update 
36.
            Selection.MoveRight Unit:=wdWord, Count:=1 
37.
        Wend 
38.
    End If 
39.
End Sub 
40.
 
41.
 
Das ganze noch mit einem Button versehen, feddich

Grüße Uwe
Bitte warten ..
Mitglied: malika
02.07.2014 um 13:37 Uhr
Ich sehe noch eine Kleinigkeit. Nehmen wir an, dass der Querverweis als Fett markiert ist, dann werden die ersetzten Texte auch Fett. Ich habe probiert in der While-Schleife mit
01.
Selection.Font.Bold = False
zu lösen aber ohne Erfolg...
Bitte warten ..
Mitglied: colinardo
02.07.2014, aktualisiert um 14:06 Uhr
Zitat von malika:

Ich sehe noch eine Kleinigkeit. Nehmen wir an, dass der Querverweis als Fett markiert ist, dann werden die
ersetzten Texte auch zu lösen aber ohne Erfolg...
so einfach geht das hier leider nicht, ist etwas aufwendiger , ist oben angepasst
Bitte warten ..
Mitglied: malika
02.07.2014 um 14:28 Uhr
Zitat von colinardo:
so einfach geht das hier leider nicht, ist etwas aufwendiger , ist oben angepasst

Wow! D. h. in der For-Schleife wird Zeichen für Zeichen auf Charformat umgestellt?! Klasse! In der Beispielen von Word-Makros zeigen die mit dem »Selection.Font.Bold« Objekt...
Bitte warten ..
Mitglied: colinardo
02.07.2014, aktualisiert um 14:32 Uhr
Zitat von malika:
Wow! D. h. in der For-Schleife wird Zeichen für Zeichen auf Charformat umgestellt?! Klasse! In der
Beispielen von Word-Makros zeigen die mit dem »Selection.Font.Bold« Objekt...
Nein, nach der Umwandlung in eine CrossReference ist der Range ein Feld das mit der Quelle verbunden ist und in das der spezielle Schalter \* Charformat eingefügt wird - Drück mal ALT-F9 dann siehst du es.
Bitte warten ..
Mitglied: malika
02.07.2014 um 15:35 Uhr
Könntest du mir bitte noch bei der Auswahlmenü für Bookmarks helfen. Ich habe in der Hilfe nach OneOfN oder Selects gesucht aber nichts gefunden...

Danke!
Bitte warten ..
Mitglied: colinardo
02.07.2014, aktualisiert um 16:07 Uhr
Wie meinen ??
Du willst eine einfachere Auswahl haben für alle vorhandenen Bookmarks ?
Alle Bookmarks kannst du so auflisten:
01.
Dim bm As Bookmark, all As String 
02.
For Each bm In ActiveDocument.Bookmarks 
03.
    all = all & bm.Name & vbNewLine 
04.
Next 
05.
MsgBox all
Die Anzeige in einem Dropdown oder einer ListBox geht dann aber nur mit einem CustomDialog...
Bitte warten ..
Mitglied: malika
02.07.2014 um 22:39 Uhr
Ok, vielen Dank!

Ich habe noch ein Problem entdeckt, wenn man die Querverweise mit F9 aktualisiert dann zeigen die ins Nirwana...
Bitte warten ..
Ähnliche Inhalte
VB for Applications
VBS - Suchen und Ersetzen in Word 2010 in Kopfzeile
gelöst Frage von JuckieVB for Applications7 Kommentare

Hallo zusammen, ich stehe bei einem VBS ein wenig auf dem Schlauch. Ich habe ein VBS, welches in Verzeichnissen ...

VB for Applications
Suche in Word
gelöst Frage von MarcoBornVB for Applications2 Kommentare

Hallo Forum, ich möchte per VBA in Word nach dem Vorkommen eines Strings suchen, z.B. nach "Hallo". Mit der ...

Linux Tools
Bash: suchen und ersetzen
Frage von SIPSIPLinux Tools14 Kommentare

Hallo zusammen Möchte aus einer riesigen HTML Datei folgenden Strings ersetzen: ^M\ Nun habe ich dieses kleine Script erstellt, ...

Windows Tools
Suche Programm zum dateien suchen und Ersetzen mit Wildcat Suche
gelöst Frage von sfera-haizaWindows Tools5 Kommentare

Grüßt euch, ich nutze zzT. das Programm InfoRapid Suchen & Ersetzen um HTML / PHP Dateien zu durchsuchen bzw. ...

Neue Wissensbeiträge
Linux

Limux-Ende in München: Wie ein Linux Projekt unter Ausschluss der Öffentlichkeit zerstört wurde

Information von Frank vor 6 StundenLinux12 Kommentare

Mein persönlicher Kommentar zum Thema "Limux-Ende". Die SPD-Politikerin Anne Hübner hat die Richtung von München ganz klar definiert: "Wir ...

Batch & Shell

Open Object Rexx: Eine mittlerweile fast vergessene Skriptsprache aus dem Mainframebereich

Information von Penny.Cilin vor 1 TagBatch & Shell9 Kommentare

Ich kann mich noch sehr gut an diese Skriptsprache erinnern und nutze diese auch heute ab und an noch. ...

Humor (lol)

"gimme gimme gimme": Automatischer Test stolpert über Easter Egg im man-Tool

Information von Penny.Cilin vor 1 TagHumor (lol)6 Kommentare

Interessant, was man so alles als Easter Egg implementiert. Ist schon wieder Ostern? "gimme gimme gimme": Automatischer Test stolpert ...

MikroTik RouterOS

Mikrotik - Lets Encrypt Zertifikate mit MetaROUTER Instanz auf dem Router erzeugen

Anleitung von colinardo vor 2 TagenMikroTik RouterOS8 Kommentare

Einleitung Folgende Anleitung ist aus der Lage heraus entstanden das ein Kunde auf seinem Mikrotik sein Hotspot Captive Portal ...

Heiß diskutierte Inhalte
Router & Routing
Zwei Netzwerke erstellen
Frage von bunteblumeRouter & Routing14 Kommentare

Hallo Zusammen, Ich möchte gerne ein backup von einem bestimmten Folder welcher auf dem Server regelmässig synchronisiert wird auf ...

Off Topic
Fachkräftemangel in Deutschland? - Talentschmiede schreibt alle 2 Tage die gleichen Stellen aus
Frage von Penny.CilinOff Topic12 Kommentare

Hallo, haben wir in Deutschland Fachkräftemangel? Die Talentschmiede schreibt gefühlt alle zwei Tage dieselben Stellen aus. Und das schon ...

Windows 10
Alle Programme mit bestimmtem Namen automatisch (per GPO) deinstallieren
gelöst Frage von lordofremixesWindows 1012 Kommentare

Hallo zusammen, gibt es eine Möglichkeit, alle Programme beginnend mit z.B. "Dell" im Namen per Script und somit per ...

Linux
Limux-Ende in München: Wie ein Linux Projekt unter Ausschluss der Öffentlichkeit zerstört wurde
Information von FrankLinux12 Kommentare

Mein persönlicher Kommentar zum Thema "Limux-Ende". Die SPD-Politikerin Anne Hübner hat die Richtung von München ganz klar definiert: "Wir ...