Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > MS Access > VBA чтение таблицы


Автор: iff 8.6.2011, 15:56
Как из VBA прочитать (обработать) таблицу?
Это нужно делать в цикле.
Причём, нужно знать:
  • Кол-во строк
    Можно так:
    Код

    CurrentDb.TableDefs("имя таблицы").RecordCount
  • Кол-во столбцов
    Можно так:
    Код

    CurrentDb.TableDefs("имя таблицы").Fields.Count
  • Значение ячейки с в данной строке в данном столбце
     Как это значение найти?

Автор: Akina 8.6.2011, 16:41
Цитата(iff @  8.6.2011,  16:56 Найти цитируемый пост)
Значение ячейки с в данной строке в данном столбце

Данной - я не могу иначе интерпретировать как "по номеру". Но номеров строк в таблицах реляционных БД (равно как и порядка строк) не существует. Порядок моджет быть в запросе, и то при условии, что явно указана сортировка.
Вопрос лишён смысла.

Автор: Данкинг 8.6.2011, 16:57
Так и перебирай построчно от 1 до .RecordCount с помощью .Next, в чём вопрос-то?

Автор: iff 8.6.2011, 19:04
Цитата(Данкинг @  8.6.2011,  16:57 Найти цитируемый пост)
Так и перебирай построчно от 1 до .RecordCount с помощью .Next, в чём вопрос-то? 

Я бы так и сделал, если бы знал как обратиться к строчке.

Добавлено через 1 минуту и 4 секунды
Цитата(Akina @  8.6.2011,  16:41 Найти цитируемый пост)
Данной - я не могу иначе интерпретировать как "по номеру". Но номеров строк в таблицах реляционных БД (равно как и порядка строк) не существует. Порядок моджет быть в запросе, и то при условии, что явно указана сортировка.
Вопрос лишён смысла. 

Задача состоит в том что-бы перебрать таблицу построчно. Порядок строк не важен.

Автор: Akina 8.6.2011, 21:08
Цитата(iff @  8.6.2011,  20:04 Найти цитируемый пост)
Задача состоит в том что-бы перебрать таблицу построчно. Порядок строк не важен. 

Открой её как рекордсет (DAO, ADO - неважно) и отправляйся на нужную запись методом Move... 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)