Вы говорите, что условие хранения в 'arrEl (x, 5)'
Если это так, вам нужно изменить эту строку
.Cell(r, c).Range.Text =.Cell(r,c).Range.Text + arrEl(x, 3) + " "+ arrEl(x, 4) + " "+ arrEl(x, 5)
на
.Cell(r, c).Range.Text =.Cell(r,c).Range.Text & arrEl(x, 3) & " "+ arrEl(x, 4) & " "
Set my_range = .cell(r,c).range
my_range.collapse direction:=wdcollapseend
.Cell(r,c).range.text = .Cell(r,c).range.text & arrEl(x, 5)
my_range.end = .Cell(r,c).range.end
На данный момент my_range должен включать только текст из arrEl (x, 5), чтобы вы могли теперь применить желаемый формат шрифта к my_range.
Вам, конечно, нужно будет вставить Dim my_range какWord.range в вашем коде
Редактировать
Чтобы убедиться, что мы не включаем маркеры конца ячейки или абзаца в диапазон, мы можем использовать метод .MoveEndUntil.В примерах диапазона представлен набор символов, обозначающих конец ярости: «CT8».Таким образом мы можем сделать
my_range.MoveEndUntil cset:="CT8", count:=wdbackwards