В приведенном коде ошибку "list index out of bounds (0)" ничего не вызывает. А сама ошибка говорит о том, что индекс списка к которому идет обращение лежит в не границ. Другими словами, обращение идет к несуществующему индексу списка.
А вот здесь у меня вопрос.
Код:
if (Form2.ListBox1.Items[i] = 'Лиття під тиском')then
if (Form2.ListBox1.Items[i] = 'Виконати лиття') then
Как один и тоже элемент списка может равняться двум различным значениям? Или где-то опечатка?
P.S.: заверните свой код в тег, или же получите предупреждение.