Մեջբերում Աթեիստ-ի խոսքերից Նայել գրառումը
Էսօր word-ի համար գրածս մակրոյում մի քիչ փոփոխություն արեցի, որ ե-ի ու չակերտի խնդիրը լուծի։

Էս տարբերակում նայում ա հարևան սիմվոլներին, ու ըստ դրանց որոշում կոդավորումն ու սիմվոլը։

Կոդ:
Public najord As String
Public naxord As String

Sub Unicode2ANSI()
'
' Unicode 2 ANSI
' Created by †Ateist†
'
ss = Selection.Start
se = Selection.End
backup = Selection
If se - ss < 0 Then End
For i = ss To se - 1

'naxord tar@
If i = ss Then naxord = " " Else naxord = Mid(backup, i - ss, 1)

'hajord tar@
If i = se - 1 Then hajord = " " Else hajord = Mid(backup, i - ss + 2, 1)

Selection.Start = i
Selection.End = i + 1
tar = Selection

If AscW(tar) = 164 Or AscW(tar) = 165 Then GoTo 10
If AscW(tar) = 171 Then Selection = Chr(167): GoTo 10
If AscW(tar) = 187 Then Call unicode_stugum(naxord, hajord): GoTo 10 ' Pakogh chakerti Yev YE tari problem

If AscW(tar) = 1415 Then Selection = ChrW(168) 'ChrW(187) + ChrW(245): se = se + 1 'yev tar@
If AscW(tar) < 1329 Or AscW(tar) > 1418 Then GoTo 10
If AscW(tar) < 1367 Then Selection = ChrW(176 + (AscW(tar) - 1328) * 2)
If AscW(tar) > 1366 And AscW(tar) < 1415 Then Selection = ChrW(177 + (AscW(tar) - 1376) * 2)
If AscW(tar) = 1374 Then Selection = ChrW(177) ' harcakan nshan

10: Next i
Selection.Start = ss
Selection.End = se
Selection.Font.Name = "Arial armenian"
End Sub


Sub ANSI2Unicode()
'
' Normal2Unicode
' Created by †Ateist†
'
ss = Selection.Start
se = Selection.End
backup = Selection
If se - ss < 0 Then End
For i = ss To se - 1

'naxord tar@
If i - ss = 0 Then naxord = " " Else naxord = Mid(backup, i - ss, 1)

'hajord tar@
If i = se - 1 Then hajord = " " Else hajord = Mid(backup, i - ss + 2, 1)

Selection.Start = i
Selection.End = i + 1
tar = Selection

If AscW(tar) = 164 Or AscW(tar) = 165 Then GoTo 10
If AscW(tar) = 167 Then Selection = Chr(171): GoTo 10
If AscW(tar) = 166 Then Selection = Chr(187): GoTo 10
If AscW(tar) = 187 Then Call ansi_stugum(naxord, hajord): GoTo 10 ' Pakogh chakerti Yev YE tari problem

If AscW(tar) = 168 Then Selection = ChrW(1415) 'yev tar@

If AscW(tar) < 178 Or AscW(tar) > 253 Then GoTo 10
If AscW(tar) / 2 = AscW(tar) \ 2 Then Selection = ChrW(1328 + (AscW(tar) - 176) / 2)
If AscW(tar) / 2 <> AscW(tar) \ 2 Then Selection = ChrW(1376 + (AscW(tar) - 177) / 2)
If AscW(tar) = 177 Then Selection = ChrW(1374) ' harcakan nshan

10: Next i
Selection.Start = ss
Selection.End = se
Selection.Font.Name = "arian amu"
End Sub

Sub unicode_stugum(ByVal naxord As String, ByVal hajord As String)  
ard = ChrW(166)
ansi = False

If AscW(naxord) > 176 And AscW(naxord) < 254 Then ansi = True
If AscW(naxord) > 165 And AscW(naxord) < 169 Then ascii = True
If AscW(hajord) > 176 And AscW(hajord) < 254 Then ascii = True
If AscW(hajord) > 165 And AscW(hajord) < 169 Then ascii = True
If ansi Then ard = ChrW(187)
Selection = ard
End Sub

Sub ansi_stugum(ByVal naxord As String, ByVal hajord As String)
ard = ChrW(1381)
unic = False

If AscW(naxord) > 1328 And AscW(naxord) < 1423 Then unic = True
If AscW(hajord) > 1328 And AscW(hajord) < 1423 Then unic = True
If unic Then ard = ChrW(187)
Selection = ard

End Sub
Ես ծրագրավորող չեմ, կարծում եմ, որ նույնը կարելի ա ավելի էֆեկտիվ գրել։ Էս տարբերակով իմ կոմպի վրա 25 էջանոց ֆայլը փոխակերպեց 22 վարկյանում։

Հ.Գ.
Ոչ բոլոր անսի կետադրական նշաններն եմ փոխել յունիկոդի։ Օրինակ. միջակետը, վերջակետը դեռ էդքան տարածում չունեն։ Սկի Word-ը հայկական վերջակետից հետո (։) չի ֆայմում հաջորդ տառը մեծատառ դարձնի։
սաղ հեչ, էն ի՞նչ խաչեր ա Աթեիստի կողքերը, մակրոսի մեջ