Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Изменение формата ячеек Excel [D5, Win95/98, Win2k]


Strannik_ ©   (2002-04-01 18:13:00) 

Есть у меня программа:

BeginCol := 1;
BeginRow := 5;

RowCount := form1.StringGrid2.RowCount-1;
ColCount := Form1.StringGrid2.ColCount;

ExcelApp := CreateOleObject("Excel.Application");
ExcelApp.Application.EnableEvents := false;

Workbook := ExcelApp.WorkBooks.Add("c:\bestat\det.xls");
ArrayData := VarArrayCreate([0, RowCount, 0, ColCount], varVariant);

for I := 0 to RowCount do
for J := 0 to ColCount do
ArrayData[I, J] :=Form1.StringGrid2.Cells[j,i];

Cell1 := WorkBook.WorkSheets[1].Cells[BeginRow, BeginCol];

Cell2 := WorkBook.WorkSheets[1].Cells[BeginRow + RowCount - 1, BeginCol +
ColCount - 1];
Range := WorkBook.WorkSheets[1].Range[Cell1, Cell2];
Range.Value := ArrayData;
ExcelApp.Application.Quit;
Мне надо после того как програма кинет данные в Excel, изменить формат ячеек на часы:минуты:секунды

Макрос в екселе
Range("B17").Select
Selection.NumberFormat = "h:mm:ss"

Как мне перевести этот макрос в дельфи код


Strannik_   (2002-04-02 15:35:00) [1]

Удалено модератором


Strannik_   (2002-04-02 15:32:00) [2]

А может быть такое:
есть ячейка формата чч:мин:сек и после перегонки он почему то становится экспонициальный (2 знака)

Мне пришлось чтобы это обойти сначала перевести в формат строки (TimeToStr) а потом просто в ексель передать как строчку
А если ли другие варианты попроще?


AFROLOV   (2002-04-02 13:18:00) [3]

rng - это Range

var
rng:Variant;
.....


Strannik_   (2002-04-02 12:44:00) [4]

vlv ©:
Что такое rng и как ее описать в var?


vlv   (2002-04-01 20:02:00) [5]

rng := ExcelApp.ActiveSheet.Range[ExcelApp.ActiveSheet.Cells[17,2], ExcelApp.ActiveSheet.Cells[17,2]];

rng.Select;

ExcelApp.Selection.NumberFormat := "h:mm:ss";


Наверх

Титульная страница Поиск, карта сайта Написать письмо