hartcodierte Word-Bibliographieliste konvertieren

hartcodierte Word-Bibliographieliste konvertieren

Ich habe ein ziemlich großes Word-Dokument mit ca. 250 Seiten. Word-Referenzen/Zitate werden nicht verwendet. Die im Dokument enthaltenen Referenzen bestehen aus einfachem Text:

Empfehlungen der International Association for Suicide Prevention (IASP) [18, 36, 202]. Dennoch ist es wichtig, dass die fachkundigen fachkundigen Interventionen bei spezifischen fachkundigen Patienten sorgfältig geprüft werden, bevor die fachkundigen Patienten die fachkundigen Patienten untersuchen [19, 176, 177].`

Das Literaturverzeichnis wird am Ende des Dokuments handschriftlich eingetragen.

  1. Abbas MAF, Abu Zaid LZ, Hussaein M. Angst und Depression beim Pflegepersonal der King Fahad Medical City, Königreich Saudi-Arabien. AIMS Medical Science 2015; 2(4): 303–309.
  2. Ahmed-Little Y. Auswirkungen der Schichtarbeit für Assistenzärzte. BMJ 2007; 334:777–778.
  3. Ahola K, Honkonen T, Pirkola S, Isometsa E, Kalimo R, Nykyri E et al. Alkoholabhängigkeit im Zusammenhang mit Burnout unter der finnischen arbeitenden Bevölkerung // Die Autoren. Zeitschriftensammlung. Society for the Study of Addiction 2006;11:1438 – 1443.
  4. Ajzen I. Natur und Betriebseinstellungen. Annual Review of Psychology 2001;52:27–58.

...

250.

Gibt es eine andere Möglichkeit, als die Einträge einzeln durchzugehen, um eine richtige Bibliografieliste zu erstellen?

Antwort1

Habe schließlich ein VB-Skript geschrieben

Sub ChangeText()


    Dim cDoc As Word.Document
    Dim cRng As Word.Range
    Set cDoc = ActiveDocument
    Set cRng = cDoc.Content
    cRng.Find.ClearFormatting

    'Dim dic As Dictionary
    'Set dic = New Dictionary

    Dim c As Object
    Set c = CreateObject("Scripting.Dictionary")
    c.Add "x1", "1"
    c.Add "x2", "62"
    c.Add "x3", "2"

With cRng.Find
    .Forward = True
    .Text = "["
    .Wrap = wdFindStop
    .Execute
    Do While .Found

        cRng.Collapse Word.WdCollapseDirection.wdCollapseEnd
        cRng.MoveEndUntil Cset:="]", Count:=Word.wdForward

        Dim TextStr As String
        Dim Result() As String
        TextStr = cRng.FormattedText.Text
        Result() = Split(TextStr, ",")
        For i = LBound(Result()) To UBound(Result())
                Dim temp As String
                temp = CStr(LTrim(Result(i)))
                Result(i) = c(temp)
        Next i
        Debug.Print "before: " & cRng.FormattedText.Text

        cRng.FormattedText.Text = Join(Result, ", ")
        Debug.Print "after:" & cRng.FormattedText.Text
        cRng.Collapse Word.WdCollapseDirection.wdCollapseEnd
        .Execute
    Loop
End With        
End Sub

verwandte Informationen