Форум программистов, компьютерный форум, киберфорум
Наши страницы
Delphi: Базы данных
Войти
Регистрация
Восстановить пароль
 
plsap
-8 / 0 / 0
Регистрация: 26.10.2015
Сообщений: 100
1

Ошибка при импорте данных из Excel

04.06.2018, 20:58. Просмотров 81. Ответов 3
Метки нет (Все метки)

Хочу сделать импорт данных из Excel в Базу. Выдает ошибку. Я так понимаю, что неправильно указаны типы полей.
В базе указаны varchat и Date. Какое поле указывать в коде?
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
procedure TForm33.Button1Click(Sender: TObject);
const xlCellTypeLast=$000000B;
  var
  excel:OLEVariant;
  Pol, Group, Adress, i, j, col:integer;
  FIO   :string;
  God_roshdenia: boolean;
begin
 excel :=CreateOleObject('Excel.Application');
 excel.DisplayAlerts :=False;
  OpenDialog1.Filter :='Файлы MS Excel|*.xls;*.xlsx';
  if not OpenDialog1.Execute then Exit;
    try
     Excel.WorkBooks.Open(OpenDialog1.FileName);  //открываем файл
     i :=2;  //считываем со 2-й строки
     j := excel.ActiveCell.SpecialCells(xlCellTypeLast).Row;
      while i<>j do
      begin
        FIO :=excel.cells[i,1].value; 
        God_roshdenia :=excel.cells[i,2].value;
        Pol :=excel.cells[i,3].value;
        Group :=excel.cells[i,4].value;
        Adress :=excel.cells[i,5].value;
 
 
        with DataModule2.ADO_spravochnik_student do 
        begin
        Insert; //вставка// записей
        FieldByName('FIO').AsString :=FIO;
        FieldByName('God_roshdenia').AsBoolean := God_roshdenia;
         FieldByName('Pol').AsInteger :=Pol;
         FieldByName('Group').AsInteger :=Group;
         FieldByName('Adress').AsInteger :=Adress;
 
        Post;
        end;
        inc(i); //переходим на следующую строку Excel
      end;
      DataModule2.ADO_spravochnik_student.First; //переход на 1-ю запись таблицы
      //lbl1.Caption :='Загружено записей: '+IntToStr(tbl1.RecordCount);
    excel.Quit;
    excel:=Unassigned;
    except
    end;
 
end;
Ошибка при импорте данных из Excel
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.06.2018, 20:58
Ответы с готовыми решениями:

Ошибка при экспорте данных из DBgrid в excel
Доброго времени суток! Возникла такая проблема: Выдает ошибку (...

Корректная замена типов при импорте
Я - полублондинка, поэтому прошу помощи в составлении правильной логической...

Ошибка при выводе в excel
Всем привет друзья! У меня вопрос связанный с выводом БД access в excel.Пытаюсь...

Ошибка при создании отчета в Excel
Доброго времени суток. У меня возникла следующая проблема. Когда создаю отчеты...

Ошибка при выводе отчета в Excel
Здравствуйте! Возникла такая ошибка: Identifier expected but ' на строке:Sum :=...

3
qwertehok
2301 / 2205 / 602
Регистрация: 29.08.2013
Сообщений: 14,727
04.06.2018, 21:39 2
1. не делай импорта из экселя в базу
2. если делать, то лучше csv
3. если все таки делаешь, то проверяй все поля

для проверки используй try..except
0
krapotkin
3419 / 3026 / 1047
Регистрация: 14.04.2014
Сообщений: 14,682
Записей в блоге: 15
04.06.2018, 22:22 3
ну там прямо черным по белому
поле типа булеан, а значение туда пишете типа строка
код:
если ваша строка равна чему-то то писать в поле TRUE
иначе писать в поле FALSE
0
Пытливый
1380 / 691 / 249
Регистрация: 29.05.2013
Сообщений: 3,116
04.06.2018, 23:56 4
Несколько непонятно почему вообще God_roshdenia: boolean, а не число?
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
04.06.2018, 23:56

Запись данных в MS Access с ADOQuery (ошибка типов данных при записи)
Здравствуйте. Я добавила на форму три компонента ADOConnection, DataSource,...

Сумма строк при экспорте данных в Excel
здравствуйте, как написать код чтобы при экспорте выводило сумму строк например...

Ошибка при открытии и закрытии Excel из под Delphi
Доброго времени суток. У меня такая проблема: Почему то при открытии документа...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru