Zmiana nazwy arkusza Excel

0

Cześć, wiem jak to zrobić "niskopoziomowo", ale chciałem to zrobić teraz za pomocą klasy TExcelApplication.

Muszę utworzyć nowy arkusz i zmienić mu nazwę i niby proste to, a wydawać by się mogło, że wystarczy zrobić:

  FExcelApp.Workbooks[1].Worksheets.Add(null, FExcelApp.Workbooks[1].Worksheets[FSheetsCount], 1, null, FLCID);
  TExcelWorksheet(FExcelApp.Workbooks[1].ActiveSheet).Name:='Blabla';

pierwsza linijka dodaje mi arkusz na samym końcu, a druga ma zmienić jego nazwę.
Jednak podczas zmiany nazwy dostaję Access Violation.

Przyrównałem sobie nawet utworzoną kartę do zmiennej:

var
  ws: TExcelWorkSheet;
begin
  ws:=//utworzenie karty, jak wyżej
  ws.Name:='Blabla';
end;

AV też się pojawia. Sprawdziłem, że ws istnieje(nie jest nil). Nawet nie mogę tej właściwości odczytać, bo też dostaję AV.

0
var
Sheet, Excel: Variant;
Begin
     Excel := CreateOleObject('Excel.Application');
     Excel.Visible := True;
     Excel.WorkBooks.Add(); 
     Excel.WorkBooks[1].WorkSheets.Add(); 

     Sheet := Excel.WorkBooks[1].WorkSheets[1];
     Sheet.Name := 'Adydan :)';
End;

Utworzenie +zmiana nazwy dla 1.
Napisz czy pomogło.

0

Nie czytasz mnie. Tak to ja też umiem. Ale chcę to zrobić za pomocą TExcelApplication.

1 użytkowników online, w tym zalogowanych: 0, gości: 1