Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 21.10.2010, 05:05   #1
artemavd
Старожил
 
Аватар для artemavd
 
Регистрация: 05.06.2008
Сообщений: 4,210
Вопрос Ошибка в ранее рабочем коде

Возникает ошибка при компиляции программы. Раньше работал этот код:
Код:
function xls_to_stringgrid11(StringGrid1:TStringGrid; axlsfile:string):Boolean;
const
 XlCellTypeLastCell=$0000000b;
var
 XLapp,Sheet:Olevariant;
 RangeMatrix:Variant;
 x,y,k,r:integer;
begin
  Result:=false;
  XLapp:=CreateOleObject('excel.application');
  try
    XLapp.Visible:=false;
    XLapp.Workbooks.Open(axlsfile);
    Sheet:=XLapp.Workbooks[1].Worksheets[1];
    Sheet.cells.specialcells(XLCellTypeLastCell,emptyparam).Activate;
    x:=XLapp.Activecell.Row;
    y:=XLapp.Activecell.Column;
    StringGrid1.RowCount:=x;
    StringGrid1.ColCount:=y;
    RangeMatrix:=XLapp.Range['a1',XLapp.Cells.Item[x,y]].Value;
    k:=1;
    repeat
      for
        r:=1 to y do
        StringGrid1.Cells[r-1,k-1]:=RangeMatrix[k,r];
        inc(k,1);
        StringGrid1.RowCount:=k+1;
        until k>x;
        RangeMatrix:=Unassigned;
    finally
    if not Varisempty(XLapp) then
      begin
       XLapp.Quit;
       XLapp:=Unassigned;
       Sheet:=Unassigned;
       Result:=True;
      end;
    end;
  end;
//------------------------------------------------------------------------------

procedure TForm1.BtnNewClick(Sender: TObject);
begin
 Form1.OpenDialog1.FileName:='*.xls';
if OpenDialog1.Execute then
    begin
     if xls_to_stringgrid11(StringGrid1,OpenDialog1.FileName) then
     end;
end;
Говорит, что "[Error] UnitTwain.pas(1370): Undeclared identifier: 'emptyparam'"
Не стоит смеяться над человеком делающим шаг назад, возможно он делает разбег.
artemavd вне форума
Старый 21.10.2010, 05:18   #2
Sparkman
220400
Форумчанин
 
Аватар для Sparkman
 
Регистрация: 21.05.2010
Сообщений: 726
По умолчанию

Код:
uses variants;
есть?
Cерьёзной помощи не ждите - помогаю в перерывах на "перекур".
Не существует ничего невозможного для человека, который не собирается ничего делать сам.
Не учите человека, если вы не его учитель.
Sparkman вне форума
Старый 21.10.2010, 05:54   #3
artemavd
Старожил
 
Аватар для artemavd
 
Регистрация: 05.06.2008
Сообщений: 4,210
По умолчанию

Зачот! Спасибо!
Не стоит смеяться над человеком делающим шаг назад, возможно он делает разбег.
artemavd вне форума
Закрытая тема


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Ошибка в коде Cronos20 PHP 3 09.07.2010 23:31
Ошибка в коде. cheef PHP 7 29.04.2010 09:09
Ошибка в коде konstantinopol Общие вопросы по Java, Java SE, Kotlin 1 26.10.2009 23:21
Ошибка в коде.. NSvirus PHP 4 14.10.2009 22:57
Ошибка в коде hacknet Компоненты Delphi 12 07.12.2008 14:23