Dokumentacja HotXLS

Metoda VBADefined

Zwraca true, jeśli skoroszyt zawiera kod VBA

Składnia

function VBADefined:boolean;

Opis

Użyj VBADefined przed nadpisaniem istniejącego skoroszytu, gdy aplikacja musi zachować pliki zawierające makra. Metoda jest tylko do odczytu; nie tworzy, usuwa ani nie edytuje modułów VBA
W klasycznej fasadzie XLS wynik True oznacza, że skoroszyt ma strumień projektu VBA. Zapisz plik w formacie Excel, który może zachować zawartość VBA, i unikaj eksportowania go do formatów tekstowych, CSV lub HTML

Uwagi

Ten przykład otwiera istniejący skoroszyt i sprawdza, czy zawiera kod VBA przed jego zapisem

var
  Workbook: IXLSWorkbook;
begin
  Workbook := TXLSWorkbook.Create;
  try
    Workbook.Open('C:\Reports\Template.xls');

    if Workbook.VBADefined then
      ShowMessage('This workbook contains VBA code.');

    Workbook.SaveAs('C:\Reports\TemplateCopy.xls');
  finally
    Workbook := nil;
  end;
end;

Przykład