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

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

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

Восстановить пароль
Повторная активизация e-mail

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

Ответ
 
Опции темы Поиск в этой теме
Старый 28.09.2009, 17:07   #1
kate158
Форумчанин
 
Регистрация: 01.08.2008
Сообщений: 383
По умолчанию запись в конец файла

есть у меня такой код:
Код:
 
  if not SAVEDialog1.Execute then begin
     exit;
  end
    else
    fName := SAVEDialog1.FileName; 
    AssignFile(f, fName);
    Rewrite(f);  
   try
 for i:=0 to Memo1.Lines.Count - 1 do  
  begin
   E  := CreateOleObject('Excel.Application');
   E.DisplayAlerts  := False;
   s:='';
   writeln(f, (Memo1.Lines[i])); //запись названия файла
     for j:=0 to Length(a)-1 do //цикл по значениям
      begin
       E.WorkBooks.Open(trim(Memo1.Lines[i]), ReadOnly:=True);
       W := E.WorkBooks.Item[1];
       SH := W.Sheets.Item[1];
       D1 :=  SH.Range[a[j]].Value;
       write(f, (inttostr(d1)+'  ')); // запись значений
       e.quit;
     end;
    end;
   finally
   CloseFile(f);   
 end;
   MessageDlg('данные записаны!',mtInformation,[mbOk],0);
end;
данные записываются как:
'название файла'
значения
как можно записать данные в одну строку?типа
'название файла' значения

Последний раз редактировалось kate158; 28.09.2009 в 17:29.
kate158 вне форума Ответить с цитированием
Старый 28.09.2009, 18:44   #2
Utkin
Старожил
 
Аватар для Utkin
 
Регистрация: 04.02.2009
Сообщений: 17,351
По умолчанию

Код:
writeln(f, (Memo1.Lines[i])); //запись названия файла
убери эту строку совсем.
А вместо
Код:
write(f, (inttostr(d1)+'  ')); // запись значений
пиши
Код:
write(f, 'ИМЯ '+Memo1.Lines[i]+' Значение '+inttostr(d1)+'  '); // запись значений
Как-то так.
Маньяк-самоучка
Utkin появился в результате деления на нуль.
Осторожно! Альтернативная логика
Utkin вне форума Ответить с цитированием
Старый 28.09.2009, 19:17   #3
uberchel
Участник клуба
 
Аватар для uberchel
 
Регистрация: 19.01.2009
Сообщений: 1,453
По умолчанию

Мож так пойдет:
Код:
 if not SaveDlg1.Execute then exit
 else
 fName := SAVEDlg1.FileName;
 AssignFile(f, fName);
 Rewrite(f);
 try
  for i:=0 to Memo1.Lines.Count - 1 do
  begin
   E  := CreateOleObject('Excel.Application');
   E.DisplayAlerts  := False; s:='';
   write(f, Memo1.Lines[i] + ' '+ inttostr(d1)+ '  ');
     for j:=0 to Length(a)-1 do //öèêë ïî çíà÷åíèÿì
   begin
    E.WorkBooks.Open(trim(Memo1.Lines[i]), ReadOnly:=True);
    W := E.WorkBooks.Item[1];
    SH := W.Sheets.Item[1];
    D1 :=  SH.Range[a[j]].Value;
    write(f, (inttostr(d1)+'  ')); // çàïèñü çíà÷åíèé
    e.quit;
   end;
  end;
   finally
   CloseFile(f);
 end;
   MessageDlg('äàííûå çàïèñàíû!',mtInformation,[mbOk],0);
end;
uberchel вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Запись в конец столбца systemmind Microsoft Office Excel 13 07.05.2011 23:23
Почему не определяется конец файла? nazavrik Общие вопросы C/C++ 3 17.06.2009 20:53
MinLines(f), которая вставляет строку минимальной длины в начало и конец файла ArtS Паскаль, Turbo Pascal, PascalABC.NET 0 24.05.2009 19:13
Дописать в конец файла Cdevelop Общие вопросы C/C++ 1 25.03.2009 21:39
Дописать в конец файла Cdevelop Общие вопросы C/C++ 5 15.03.2009 16:46