Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » VBA for Access

Модерирует : ShIvADeSt

ShIvADeSt (14-09-2011 00:58): Все обсуждение тут http://forum.ru-board.com/topic.cgi?forum=33&topic=0357&start=1180  Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 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

   

AlexeiKozlov

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
на sql.ru иди.

Всего записей: 2188 | Зарегистр. 16-10-2004 | Отправлено: 10:05 03-07-2008
ninjab

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
а там что? мне на вба надо для аксеса сделать

Всего записей: 5 | Зарегистр. 26-06-2008 | Отправлено: 12:02 03-07-2008
Panterann3785

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Подскажите, пожайлуста, чего не хватает у меня в строках. У меня построено длинное выражение в процедуре и нужно перенести строки, т.к. строка имеет ограничение. Поставила в конце строки апострофы, но выделяет все красным цветом.
CurrentDb.Execute "INSERT INTO Начисление2 (КодРаботник, Коэффициент, КолДетей, ФиксЗП, Год, Месяц, Выручка, _
    Курс, НеоблагаемаяСумма, СтоимостьТрафика, НеоблагаемаяСуммаД,    КодПлан,ОтметкаОРаботе, ОтметкаОбУвольнении, _
    ОтметкаОбОтпуске) SELECT Работник.КодРаботник, Работник.Коэффициент, Работник.КолДетей, Работник.ФиксЗП, _
    Работник.ОтметкаОРаботе, Работник.ОтметкаОбУвольнении, Работник.ОтметкаОбОтпуске, " & Forms!НачислениеЗарплаты3!Год & " AS Гoд, _
    " & Forms!НачислениеЗарплаты3!Месяц & " AS Мeсяц, " & Replace(Forms!НачислениеЗарплаты3!Выручка, ",", ".") & " AS Выручка, _
    " & Replace(Forms!НачислениеЗарплаты3!Курс, ",", ".") & " AS Курс, _
    " & Replace(Forms!НачислениеЗарплаты3!НеоблагаемаяСумма, ",", ".") & " AS НеоблагаемаяСумма, _
    " & Replace(Forms!НачислениеЗарплаты3!СтоимостьТрафика, ",", ".") & " AS СтоимостьТрафика, _
    " & Replace(Forms!НачислениеЗарплаты3!НеоблагаемаяСуммаД, ",", ".") & " AS НеоблагаемаяСуммаД, _
    " & Forms!НачислениеЗарплаты3!КодПлан & " AS КодПлан " FROM Работник WHERE Работник.ДатаУвольнения Is Null"

Всего записей: 2 | Зарегистр. 25-04-2007 | Отправлено: 17:47 10-07-2008
AlexeiKozlov

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
"строка" & _
"продолжение строки"

Всего записей: 2188 | Зарегистр. 16-10-2004 | Отправлено: 17:58 10-07-2008
Panterann3785

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
AlexeiKozlov
А можно какой-нибудь небольшой пример наподобие моему, а то не получается, видно опять что-то не так поставила.

Всего записей: 2 | Зарегистр. 25-04-2007 | Отправлено: 21:29 10-07-2008
AlexeiKozlov

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
длина строки играет роль. нельзя строку любой длины переносить больше,скольки то раз.

Всего записей: 2188 | Зарегистр. 16-10-2004 | Отправлено: 22:30 10-07-2008
dneprcomp



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Panterann3785
_ и & не должны  находиться внутри кавычек
перед _ обязательно пpобел

Всего записей: 3920 | Зарегистр. 31-03-2002 | Отправлено: 01:14 11-07-2008 | Исправлено: dneprcomp, 03:28 11-07-2008
Udovenko

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Здравствуйте.  Посдкажите, как справиться со следующей задачей: имеется таблица, содержащая попя в формате OLE Object. Необходимо програмно вставить в соответсвующее поле указанный файл произвольного формата, лежащий на жестком диске. Затем обратная операция - открыть хранящийся в базе файл...

Всего записей: 11 | Зарегистр. 19-07-2006 | Отправлено: 07:34 16-07-2008
VladimirSTU

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
доброго времени суток! Скажите плз как добраться к свойству поля таблицы "тип элемента отображения"....
У меня таблица создается программно. В таблице есть поле типа dbBoolean, но при открытии таблицы  это поле отображается как поле а мне нужно сделать программно чтоб он отображался как флажок.... заранее спасибо

Всего записей: 1 | Зарегистр. 18-07-2008 | Отправлено: 12:52 18-07-2008
Luit

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Добрый день! Столкнулся с проблемой, но не в книгах не в интеренет ответа найти не смог. Заранее спасибо если подскажете.
 
Кнопка_Click()
 
Dim rs AS DAO.Recordset
Dim db AS DataBase
Set db = currentDB
Set rs = db.OpenRecordSet("таблица",dbOpenDynaset)
 
rs.AddNew
rs!Тип = Тип.Text
..................
rs.Update
 
rs.Close
 
[подчиненная форма].Requery
 
Данные из поля в форме должны добавлятся в таблицу и связанную с ней подчиненную таблицу. Подчиненная таблица отображается в Форме.
 
Проблема: большая задержка (около 5 секунд) при добавлении данных в первую таблицу поэтому при нажатии на кнопку подчиненная таблица не изменяется, а при повторном нажатии появляются сразу две записи. Есть способы уменьшить задержку перед добавлением записи в таблицу?

Всего записей: 1 | Зарегистр. 14-09-2008 | Отправлено: 14:34 14-09-2008
apexfmm



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Luit
Попробуй так:
1. Set rs = db.OpenRecordSet("таблица",dbOpenSnapshot)
2. Выгрузи из памяти Recordset, добавив 2 команды в конце:
Set rs = Nothing
Set db = Nothing

----------
-Если вы не испытываете желания преступить хоть одну из десяти заповедей - значит, с вами что-то не так
[WINXP SP3eng, Intel P75, CoreDuoE7400 2.8GHz, 2Gb DDR2, Radeon HD4830]

Всего записей: 782 | Зарегистр. 28-04-2005 | Отправлено: 16:13 14-09-2008
dneprcomp



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Luit

Цитата:
при повторном нажатии появляются сразу две записи

Такое поведение показывает на не правильную архетиктуру базы и/или не правильную логику работы програмы.
1. Если не должны образовываться идентичные записи, то
     a)  не допускать создания, проверяя перед внесением на существование
     b)  добавит поле-autonumber. Тогда строки записей не будут идентичы.
     c)  запретить создание двойников на уровне relationship таблиц
2. Предотвратить создание на уровне логики програмы
     a)  на нажатие кнопки делать ее disabled до завершения Requery  
          (простейший вариант)

Всего записей: 3920 | Зарегистр. 31-03-2002 | Отправлено: 21:48 14-09-2008 | Исправлено: dneprcomp, 21:51 14-09-2008
Elena3785

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Кто подскажет такую вещь. Есть форма, в которой есть кнопка. При нажатии этой кнопки данные из формы добавляются в таблицу, далее эта форма закрывается, а другая форма открывается. Я прописала так:
Private Sub Form_Close()
DoCmd.OpenForm "НовыйОклад", , , , , acDialog
End Sub
 
Private Sub КнДалее_Click()
    CurrentDb.Execute "INSERT INTO ВыборМесяца ( Год, Месяц) SELECT  " & Forms!ВыборМесяца!Год & " AS Гoд, " & Forms!ВыборМесяца!Месяц & " AS Мeсяц "
Else
    DoCmd.Close acForm, Me.Name
 
End Sub
Данные добавляются, другая форма открывается, а та которая должна закрыться не закрывается. Как прописать правильно?

Всего записей: 24 | Зарегистр. 11-05-2008 | Отправлено: 18:54 18-09-2008
tavz



Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Elena3785
 
это из-за опции acDialog в OpenForm, она заставляет ждать возврата из открытой формы т.е. закрытия ее.
  надо заменить на acWindowNormal и первая форма закроется

Всего записей: 8 | Зарегистр. 02-02-2006 | Отправлено: 19:52 18-09-2008
Elena3785

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Подскажите пожайлуста как в поле формы прописать формулу, чтобы в этом поле отображалась последняя запись из таблицы, например, месяц. Т.е. есть таблица ВыборМесяца, где сл.поля: КодМесяц, Месяц, Год.

Всего записей: 24 | Зарегистр. 11-05-2008 | Отправлено: 20:42 22-09-2008
David_Kats



Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Кто знает как передавать парметр запроса и вызывать запрос с параметром из кода VBA?

Всего записей: 29 | Зарегистр. 06-11-2007 | Отправлено: 16:52 29-09-2008
Elena3785

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Ребята! Подскажите, пожайлуста, как хоть называется (вообще, есть ли такая?) функция (желательно ее ситаксис), с помощью которой показывается последняя запись (строка) в таблице. Например, я хочу в запросе отбразить только последнюю запись из таблицы?
Заранее спасибо.

Всего записей: 24 | Зарегистр. 11-05-2008 | Отправлено: 20:16 29-09-2008
dneprcomp



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Elena3785
В таблице нельзя найти последнюю запись саму по себе. Физически запись может быть записана на любом свободном месте. База даных не является файлом последовательной записи. Чтобы найти последнюю добавленую запись надо или Select Max(поля c autonumber/другой вариацией уникального ID), или  сохранять в базе дату/время создания и Select Max по этому полю.

Всего записей: 3920 | Зарегистр. 31-03-2002 | Отправлено: 21:01 29-09-2008 | Исправлено: dneprcomp, 21:03 29-09-2008
jONES1979



Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
David_Kats примеры есть даже в Northwind.mdb
в запросе вызывается vba-функция, функция должна быть описана в глобальном модуле с директивой Public
 
Синтаксис SQL примерно такой:  
  SELECT ... FROM [Откудато] WHERE [Откудато]![Чтото] = VBAFunction()
иди даже
  SELECT ... FROM [Откудато] WHERE ЧтотоЕщё = VBAFunction([Откудато]![ЧтотоЕщё])

Всего записей: 324 | Зарегистр. 20-05-2005 | Отправлено: 22:04 29-09-2008
David_Kats



Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
jONES1979
Не в запросе код VBA, а НАОБОРОТ! Как ИЗ кода VBA запустить запрос и передать в этот запрос параметр?
 
Добавлено:
Такая ситуация. В форме у одного из комбобоксов в качестве источника данных используется запрос. Этот запрос зависит от значения в другом комбобоксе этой формы.  При загрузке формы все работает правильно: Запрос "смотрит" что в Комбобокс1, формирует список значений и подставляет в Комбобокс2. Но если, не закрывая форму, я поменяю значение Комбобокс1, то список значений во втором комбобоксе не меняется! А надо чтобы менялся. Как это сделать? Проще говоря, нужно чтобы запрос обновился.

Всего записей: 29 | Зарегистр. 06-11-2007 | Отправлено: 11:33 30-09-2008
   

Страницы: 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

Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » VBA for Access
ShIvADeSt (14-09-2011 00:58): Все обсуждение тут http://forum.ru-board.com/topic.cgi?forum=33&topic=0357&start=1180


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru