Удалить лист Excel случайно не удается

Я пытаюсь удалить лист Excel с помощью кода C ++, но случайно это не удается.
Вот код:

HRESULT hr = AutoWrap(DISPATCH_METHOD, NULL, pXlSheet, L"Delete", 0);

Эта функция возвращает S_OK даже удалить лист не удалось, но лист не удален из рабочей книги.

Примечание. Система выдает звуковой сигнал об ошибке, если удалить лист не удалось.

2

Решение

Эта ошибка возникает из-за того, что при удалении листов иногда появляется предупреждение даже при удалении пустого листа.

Чтобы подавить предупреждение, я использовал приведенный ниже фрагмент, и он отлично работает.

Фрагмент кода:

VARIANT vBool;
vBool.vt=VT_BOOL;
vBool.boolVal=FALSE;

hr = AutoWrap(DISPATCH_PROPERTYPUT, NULL, _pXlApp, L"DisplayAlerts",1,vBool);

Этот метод возвращает S_OK 🙂

0

Другие решения

Других решений пока нет …