Обращение к полю таблицы

Программирование на Visual Basic for Applications
Morozniy
Начинающий
Начинающий
 
Сообщения: 4
Зарегистрирован: 11.11.2004 (Чт) 13:28
Откуда: Germany

Обращение к полю таблицы

Сообщение Morozniy » 29.11.2004 (Пн) 13:46

Как быть, если известно название поля в таблице Аccess, но не на момент написания скрипта.
То есть ето имя поля есть текстовая переменная.
Как тогда обратиться к ячейке таблицы:

Тблица!Поле ведь не работает!!!!!!!

Steiner
Начинающий
Начинающий
 
Сообщения: 22
Зарегистрирован: 26.10.2004 (Вт) 10:54

Сообщение Steiner » 29.11.2004 (Пн) 14:47

Напиши код попробуем разобраться. Непойму зачем значение поля присваивать переменной?
Если человек до двадцати лет не поумнел, значит он увы уже никогда НЕ ПОУМНЕТ!

Steiner
Начинающий
Начинающий
 
Сообщения: 22
Зарегистрирован: 26.10.2004 (Вт) 10:54

Сообщение Steiner » 29.11.2004 (Пн) 14:49

Напиши что за таблица, наименование поля и что ты хочешь сделать с ними?!
Если человек до двадцати лет не поумнел, значит он увы уже никогда НЕ ПОУМНЕТ!

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Сообщение alibek » 29.11.2004 (Пн) 14:58

А Таблица.Fields("Поле1") не пробовал?
Lasciate ogni speranza, voi ch'entrate.

Morozniy
Начинающий
Начинающий
 
Сообщения: 4
Зарегистрирован: 11.11.2004 (Чт) 13:28
Откуда: Germany

utochnjayu

Сообщение Morozniy » 29.11.2004 (Пн) 15:21

Суть такая:
Пользователь на форме выбирает, какие записи и какие столбцы исходной акцессовской таблицы ему нужны,
после етого должна создаваться програмно таблица "выборкаХХ" с выбранными пользователем полями и програмно заполнятся выбранными пользователем записями (записи копируются из исходной таблицы).

Heads- Строковый массив выбираных пользователем полей, например: "S1", "Firma", "Asset", "Voltage"
Znachenie- строковый массив

Dim db As Database
Dim VybTable As TableDef, TableField As Field
Dim Rset1 As Recordset
'создаем таблицу:
Set db = CurrentDb
Set VybTable = db.CreateTableDef("Vybor")
For i = 0 To UBound(Heads, 1)
Heads-выбранныe пользователем поля
Set TableField = VybTable.CreateField(Heads(i), dbText)
VybTable.Fields.Append TableField
VybTable.Fields.Refresh
Next i
db.TableDefs.Append CurrTable
db.TableDefs.Refresh

заполняем таблицу:
Set Rset1 = db.OpenRecordset("Vybor")
for k=0 to 10
for i=0 to UBound(Heads, 1)
Rset1.AddNew
Rset1!S1 = Znachenie(k,i)
'заменить S1 на соответствуюсчую переменную <Heads(i)> из массива полей исходной таблицы
Rset1.Update
next i
next k

Morozniy
Начинающий
Начинающий
 
Сообщения: 4
Зарегистрирован: 11.11.2004 (Чт) 13:28
Откуда: Germany

Сообщение Morozniy » 29.11.2004 (Пн) 15:30

alibek писал(а):А Таблица.Fields("Поле1") не пробовал?


Spasibo!!!!!!!!!!!!!!!

Vse Oki


Вернуться в VBA

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 54

    TopList  
cron