2

Я использую Word 2010 (Professional Plus) на компьютере с Win 7. Я набираю документ на тибетском языке и хотел бы, чтобы ссылочные номера (сноски и номера сносок) также были на тибетском языке, но это не так, они только на английском (арабском) языке. У меня похожая проблема с номерами страниц, и было бы здорово, если бы ее можно было исправить, но ссылочные номера - более насущная проблема.

Я использую тибетский шрифт Unicode и стороннюю систему ввода. У меня установлен тибетский язык как дополнительный язык в Office, и у меня он также установлен как язык и клавиатура в Windows, но я НЕ использую тибетскую клавиатуру Windows. Тем не менее, я попытался вставить ссылки при использовании тибетской клавиатуры Win7, и она все еще вставляет арабские символы.

Мой язык по умолчанию для компьютера и Office - американский английский.

Я не смог найти никакой помощи онлайн, в большинстве случаев на вопросы о неанглоязычных символах в Office не было ответов. Любая помощь будет оценена. Благодарю.

1 ответ1

0

Другой подход заключается в использовании VBA для замены всех ссылок на сноски последовательностью ссылок с использованием тибетских глифов. Я думаю, что следующее будет делать это для сносок, при условии, что вы хотите, чтобы каждая сноска была пронумерована таким образом, и нумерация непрерывна на протяжении всего документа. Но если вы хотите видеть правильную нумерацию все время, вам придется запускать этот макрос каждый раз, когда вы вставляете, удаляете или повторно упорядочиваете сноску.

Sub replaceFootnoteRefsbyTibetanSequence()
Dim fsource As Word.Footnote
Dim ftarget As Word.Footnote
Dim lng As Long
Dim rsource As Word.Range
Dim rtarget As Word.Range
With ActiveDocument
  For lng = 1 To .Footnotes.Count
    Set rtarget = .Footnotes(lng).Reference.Duplicate
    rtarget.Collapse Direction:=wdCollapseEnd
    Set ftarget = rtarget.Footnotes.Add(rtarget, strTibetan(lng))
    rtarget.Style = ActiveDocument.Styles(Word.WdBuiltinStyle.wdStyleFootnoteReference).NameLocal
    ftarget.Range.FormattedText = .Footnotes(lng).Range.FormattedText
    .Footnotes(lng).Delete
    Set ftarget = Nothing
    Set rtarget = Nothing
  Next
End With

End Sub

Function strTibetan(theNumber As Long) As String
Dim i As Integer
Dim s As String
s = ""
For i = 1 To Len(CStr(theNumber))
  s = s & ChrW(AscW(Mid(CStr(theNumber), i, 1)) - AscW("0") + &HF20)
Next
strTibetan = s
End Function

Нечто подобное, несомненно, было бы возможно с примечаниями. Вещи могут быть сложнее, если есть нумерация для каждой страницы или раздела.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .