|
|
|
Проверка на наличие поля
|
|||
|---|---|---|---|
|
#18+
Данные в нескольких таблицах с немного отличающейся структурой. Нужно вывести отчет по определенным полям (причем в части таблиц неск треб полей отсутствует) Как сделать чтоб в случае отсутствия поля в таблице в отчете выводилась пустая строка. Как програмно определить есть ли поле X в таблице Y? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.03.2004, 09:05 |
|
||
|
Проверка на наличие поля
|
|||
|---|---|---|---|
|
#18+
Как програмно определить есть ли поле X в таблице Y? Код: plaintext 1. 2. 3. 4. 5. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.03.2004, 09:27 |
|
||
|
Проверка на наличие поля
|
|||
|---|---|---|---|
|
#18+
Спасибо! пойду попробую :)) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.03.2004, 09:57 |
|
||
|
Проверка на наличие поля
|
|||
|---|---|---|---|
|
#18+
Вот мой вариант. Конечно Sub можно ваще не использовать - это просто для демонстрации. Можно где-то в коде передавать значение в функцию и получать ответ. Сразу хочу сказать, что на таблице со 100 полями определяет примерно секунды за 2-3. Sub Poisk_polya() table_name = InputBox("Введите имя таблицы") pole_name = InputBox("Введите имя поля") MsgBox naydeno(table_name, pole_name) End Sub Public Function naydeno(ByVal table_name As String, ByVal pole_name As String) count_poley = CurrentDb.tabledefs(table_name).Fields.Count For i = 0 To count_poley - 1 If CurrentDb.tabledefs(table_name).Fields(i).Name = pole_name Then naydeno = True End If Next i End Function ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.03.2004, 10:08 |
|
||
|
Проверка на наличие поля
|
|||
|---|---|---|---|
|
#18+
ВсеволовВDim RrecSet as DAO.Recordset Set RrecSet = CurrentDB.OpenRecordset("SELECT ПроверяемоеПоле FROM tbl") If RrecSet.EOF Then .... неправильно, надо Dim RrecSet as DAO.Recordset on error resume next Set RrecSet = CurrentDB.OpenRecordset("SELECT ПроверяемоеПоле FROM tbl") if err.number = 3061 then' Или какая там ошибка вылезет ' нету else ' наверное есть (еще м. не быть самой таблицы) endif или Dim RrecSet as DAO.Recordset on error resume next Set RrecSet = CurrentDB.OpenRecordset("SELECT ПроверяемоеПоле FROM tbl") if err.number = 0 then ' есть else ' наверное нет endif ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.03.2004, 11:41 |
|
||
|
Проверка на наличие поля
|
|||
|---|---|---|---|
|
#18+
Public Function xxx() as Boolean On Error GoTo xxx_err xxx = iif(Currentdb.TableDefs("MyTable").Fields("MyField").Name <> "", True, False) Exit Function xxx_err: xxx=False End Function ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.03.2004, 12:05 |
|
||
|
|

start [/forum/topic.php?fid=45&fpage=1661&tid=1675869]: |
0ms |
get settings: |
7ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
329ms |
get topic data: |
11ms |
get forum data: |
4ms |
get page messages: |
36ms |
get tp. blocked users: |
3ms |
| others: | 203ms |
| total: | 614ms |

| 0 / 0 |
