Я думаю, что самая большая проблема, хотя она очень медленная, это то, что вы загружаете + сохраняете файл для каждой содержащейся строки. Если вы поместите загрузку + сохранение вне цикла, код должен быть намного быстрее.
import openpyxl
book = openpyxl.load_workbook('semsar_full.xlsx')
sheet = book.active
row = 1
counter = 0
while row <= 20980:
a3 = sheet.cell(row=row, column=1)
a4 = a3.value + ':::'
sheet.cell(row=row, column=1, value=a4)
counter += 1
row += 1
print(counter)
book.save('semsar_full.xlsx')