Офф..Есть в АК спецы по VBA?
Офф..Есть в АК спецы по VBA?
#1160102
наверх
Автор: vladforex (О пользователе)
Дата: 16 февраля 2006 11:29
Прошу модераторов не ругать за офф, но я уже не знаю у кого спрашивать, осталась надежда на Автоклуб,
вот ссылка на мой вопрос из профильного форума.
Поможите, кто сможет!
0 /0 |
| Поделиться:
Re: Офф..Есть в АК спецы по VBA?
#1160136
наверх
Автор: +Dm+
Дата: 16 февраля 2006 11:44
Ссылка где ?
0 /0 |
| Поделиться:
Re: Офф..Есть в АК спецы по VBA?
#1160205
наверх
Автор: +Dm+
Дата: 16 февраля 2006 12:11
Скинь на почту прогу, посмотрю...
0 /0 |
| Поделиться:
Re: Офф..Есть в АК спецы по VBA?
#1160415
наверх
Автор: demiurg_ii
Дата: 16 февраля 2006 13:06
А где, собственно, тест сообщения об ошибке? ИМХО, все, что надо сказали уже в первых пяти постах -- см. Project - References и объявляй DAO.Recordset и DAO.Field
И вообще, забудь даже думать про global namespace и возможность сокращенного наименования типов и объектов -- ето
наидурнейший тон в разработке. :-)
0 /0 |
| Поделиться:
Re: Офф..Есть в АК спецы по VBA?
#1160554
наверх
Автор: Sergic
Дата: 16 февраля 2006 13:51
Проверил, компилится без проблем. Все работает
0 /0 |
| Поделиться:
Re: Офф..Есть в АК спецы по VBA?
#1160561
наверх
Автор: vladforex (О пользователе)
Дата: 16 февраля 2006 13:54
Компилится но при запуске останавливается на строке где переменной присваю значение
0 /0 |
| Поделиться:
Re: Офф..Есть в АК спецы по VBA?
#1160578
наверх
Автор: demiurg_ii
Дата: 16 февраля 2006 13:58
Итить... через семь гробов с присвистом в центр мирового равновесия...
Цитата: От пользователя: demiurg_ii
А где, собственно, текст сообщения об ошибке
[Сообщение изменено пользователем 16.02.2006 13:59]
0 /0 |
| Поделиться:
Re: Офф..Есть в АК спецы по VBA?
#1160594
наверх
Автор: vladforex (О пользователе)
Дата: 16 февраля 2006 14:02
Цитата: От пользователя: vladforex
Компилится но при запуске останавливается на строке где переменной присваю значение
И выдает ошибку
Type mismatch
0 /0 |
| Поделиться:
Re: Офф..Есть в АК спецы по VBA?
#1160603
наверх
Автор: +Dm+
Дата: 16 февраля 2006 14:09
Dim rcdППРК As Object
Dim rcdR3 As Object
Попробуй переменные так описать.
0 /0 |
| Поделиться:
Re: Офф..Есть в АК спецы по VBA?
#1160632
наверх
Автор: demiurg_ii
Дата: 16 февраля 2006 14:18
Цитата: Public Sub Test()
Dim rsTest As ADODB .Recordset
Set rsTest = CurrentDb.OpenRecordset("select * from MSysObjects", dbOpenDynaset)
MsgBox rsTest.RecordCount
End Sub
-- дает Type mismatch
Цитата: Public Sub Test()
Dim rsTest
As DAO .Recordset
Set rsTest = CurrentDb.OpenRecordset("select * from MSysObjects", dbOpenDynaset)
MsgBox rsTest.RecordCount
End Sub
-- работает
В Tools-References включены
Microsoft ActiveX Data Objects 2.1
Microsoft Data Access
Objects 3.6
одновременно
[Сообщение изменено пользователем 16.02.2006 14:19]
0 /0 |
| Поделиться:
Re: Офф..Есть в АК спецы по VBA?
#1160708
наверх
Автор: vladforex (О пользователе)
Дата: 16 февраля 2006 14:38
Цитата: От пользователя: demiurg_ii
В Tools-References включены
Microsoft ActiveX Data Objects 2.1
Microsoft Data Access Objects 3.6
одновременно
Это мне сильно помогло!
при обявлении рекордсетов ствалю вначале DAo
теперь только проблема с
присванием перменным наименования поля таблицы, тут как делать лучше?
0 /0 |
| Поделиться:
Re: Офф..Есть в АК спецы по VBA?
#1160713
наверх
Автор: demiurg_ii
Дата: 16 февраля 2006 14:39
Писать Dim xxx as DAO.Field :-)
0 /0 |
| Поделиться:
Re: Офф..Есть в АК спецы по VBA?
#1160721
наверх
Автор: WSV
Дата: 16 февраля 2006 14:40
Цитата: От пользователя: vladforex
присванием перменным наименования поля таблицы, тут как делать лучше?
Т.е. тебе надо передать в переменную имя поля? или передать в переменную значение поля?
0 /0 |
| Поделиться:
Re: Офф..Есть в АК спецы по VBA?
#1160729
наверх
Автор: vladforex (О пользователе)
Дата: 16 февраля 2006 14:42
Цитата: От пользователя: demiurg_ii
Писать Dim xxx as DAO.Field
Я поля так и объявил
мне надо передать в переменную значение поля
0 /0 |
| Поделиться:
Re: Офф..Есть в АК спецы по VBA?
#1160755
наверх
Автор: WSV
Дата: 16 февраля 2006 14:46
Цитата: От пользователя: vladforex
мне надо передать в переменную значение поля
ИМХуется, что у тебя ХХХ - наследник фиелда. Таким образом, ХХХ.валуе - и будет значением.
0 /0 |
| Поделиться:
Re: Офф..Есть в АК спецы по VBA?
#1160766
наверх
Автор: WSV
Дата: 16 февраля 2006 14:48
Нах ВБА
Дельфин рулит.
0 /0 |
| Поделиться:
Re: Офф..Есть в АК спецы по VBA?
#1160790
наверх
Автор: vladforex (О пользователе)
Дата: 16 февраля 2006 14:51
Я задаю таким образом:
Set fldчертеж = rcdППРК(5)
Set fldномер = rcdППРК(7)
Set fldНР3 = rcdR3(0)
Set fldНаим = rcdR3(5)
Вылетает на этой строчке Set fldномер = rcdППРК(7)
Говорит что элемента нет в данном семействе
0 /0 |
| Поделиться:
Re: Офф..Есть в АК спецы по VBA?
#1160792
наверх
Автор: demiurg_ii
Дата: 16 февраля 2006 14:51
Св-во Value объекта Field является св-вом по умолчанию. Оно неявно используется при присваивании необъектным типам.
Dim s as String
s = rsTest("TheField").Value
и
Dim s as String
s = rsTest("TheField")
ето одно и тоже
0 /0 |
| Поделиться:
Re: Офф..Есть в АК спецы по VBA?
#1160800
наверх
Автор: demiurg_ii
Дата: 16 февраля 2006 14:53
Цитата: От пользователя: vladforex
элемента нет в данном семействе
нету в рекордсете _восьми_ полей, значит (они нумеруются от 0, седьмое поле имеет индекс 6)
0 /0 |
| Поделиться:
Re: Офф..Есть в АК спецы по VBA?
#1160847
наверх
Автор: WSV
Дата: 16 февраля 2006 15:01
Цитата: От пользователя: demiurg_ii
они нумеруются от 0, седьмое поле имеет индекс 6
+1
Причем хоть ДАО, хоть АДО хоть БДЕ
0 /0 |
| Поделиться:
Re: Офф..Есть в АК спецы по VBA?
#1160906
наверх
Автор: vladforex (О пользователе)
Дата: 16 февраля 2006 15:12
Точно ребята!
Я ведь это знал только посчитал неправильно поля!
Спасибо за помощь!
0 /0 |
| Поделиться:
Re: Офф..Есть в АК спецы по VBA?
#1160963
наверх
Автор: vladforex (О пользователе)
Дата: 16 февраля 2006 15:25
Может я и в строке поиска указываю как то неправильно обращение к таблице
mln1 = Nz(DLookup("fldНР3", "rcdR3", " instr(fldНаим ,fldчертеж)>0"), 0)
Мне ошибку выдает что не могу найти таблицу rcdR3
0 /0 |
| Поделиться:
Re: Офф..Есть в АК спецы по VBA?
#1161000
наверх
Автор: demiurg_ii
Дата: 16 февраля 2006 15:36
rcdR3 -- имя объекта, известое только интерпретатору VBA. DLookup требует название запроса или таблицы в БД.
Если я правильно помню код, то там должно стоять
Nz(DLookup("fldНР3", "МатерЦеныR3", " instr(fldНаим ,fldчертеж)>0"), 0)
0 /0 |
| Поделиться:
Re: Офф..Есть в АК спецы по VBA?
#1161047
наверх
Автор: vladforex (О пользователе)
Дата: 16 февраля 2006 15:50
А имя поля какое использоватьв Dlookup присвоенное или из базы данных
0 /0 |
| Поделиться:
Обсуждение этой темы закрыто модератором форума