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

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

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

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 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 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68

Открыть новую тему     Написать ответ в эту тему

Guest

BANNED
Редактировать | Цитировать | Сообщить модератору
   
 
Обсуждаем вопросы только по Access VBA
(программирование макросов, скриптов, пользовательских функций и т.п.).
Приветствуются ссылки на ресурсы и справочную литературу по теме.

 

NB! Дублирующая тема VBA for Access закрыта во избежание путаницы. Оставлена эта, как более ранняя и имеющая больше сообщений.

Смежные темы:
Помощь в создании SQL-запросов: SQL запрос
Программы » Microsoft Office 2019 & 365 | 2016 | 2013 | 2010 | 2007 | 2003
Программы » OneNote | Outlook 2013 & 2016 & 2019 | Outlook 2010 | Microsoft Mathematics & Math Solver
Программы » Word FAQ | Excel FAQ | Access FAQ
Прикладное программирование » Word VBA | Excel VBA
Андеграунд » Microsoft Office 2019 | 2016 | 2013 | 2010 | 2007 | 2003
Андеграунд » OneNote | Visio | SharePoint Server | Project Server | Exchange Server
Андеграунд » Надстройки (add-ins) и коммерческие макросы Excel
Андеграунд » Самостоятельная сборка дистрибутивов Оffice 2007/2010/2013/2016 | MUI для Office 2007
----------
Как в Access перместить запись из одной таблицы в другую (допустим по нажатию кнопки на форме)?

Отправлено: 18:31 05-09-2002 | Исправлено: ALeXkRU, 17:14 03-08-2021
albelous



Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Во-первых Вы можете отфильтровать записи по дате непосредственно в режиме таблицы - рядом с именем поля в заголовке таблицы есть меню фильтра; через него можно задать диапазон дат.
Или, если Вы хотите cформировать запрос - воспользуйтесь построителем выражений, в качестве условия отбора указав диапазон: BETWEEN #dd.mm.yyyy# AND #dd.mm.yyyy# или то же на  SQL: SELECT * FROM имя_таблицы WHERE ссылка_на ячейку_с_датами BETWEEN #dd.mm.yyyy# AND #dd.mm.yyyy#
Пример есть во встроенной справке по Access по ключевому слову BETWEEN.

Всего записей: 5 | Зарегистр. 06-09-2006 | Отправлено: 22:59 27-02-2011
gilmOFF

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

Всего записей: 4 | Зарегистр. 27-02-2011 | Отправлено: 10:05 28-02-2011
albelous



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

Всего записей: 5 | Зарегистр. 06-09-2006 | Отправлено: 10:39 28-02-2011
gilmOFF

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
уважаемый albelous, а можно по подробнее

Всего записей: 4 | Зарегистр. 27-02-2011 | Отправлено: 10:54 28-02-2011
albelous



Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Подробнее? Подробнее:
Дано: база, содержащая таблицу данных Исходная и временную таблицу размещения результата Временная.
Пусть в форме запроса дат Имя_Формы пользователь определяет поля Верхняя_Граница и Нижняя_Граница. Тогда, для выбора всех записей по полю Даты таблицы Исходная в диапазоне между указанными границами, достаточно поместить под кнопку код на VBA  
 
Private Sub КнопкаПоказать_Click()
 
Dim sSQLCommand As String
 
sSQLCommand = "SELECT * INTO Временная FROM Исходная WHERE [Исходная]![Даты] Between [Формы]![Имя_Формы]![Нижняя_Граница] And [Формы]![Имя_Формы]![Верхняя_Граница]"
       
DoCmd.Close acTable, "Временная"            'закрываем, если открыта
DoCmd.DeleteObject acTable, "Временная" 'стираем существующую временную
DoCmd.RunSQL sSQLCommand                  'выполняем запрос  
DoCmd.Close acForm, "Имя_Формы"           'закрываем окно формы
DoCmd.OpenTable ("Временная")               'открываем пользователю результат
 
End Sub
 
На красоту и "правильность" решение не претендует, зато ошибиться в реализации трудно. Обработку ошибок, подавление сообщений об изменении базы и прочее предлагаю освоить самостоятельно

Всего записей: 5 | Зарегистр. 06-09-2006 | Отправлено: 08:43 01-03-2011 | Исправлено: albelous, 16:16 01-03-2011
JAndrei

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Здравствуйте.
Подскажите, есть ли решение:  
Таблица сотрудников с несколькими полями "сменаА, Б, В,…." Поля заполняются  из подчинённой формы в режиме таблицы (так удобно, чтобы иметь обзор) выбором из "полей со списком". В поле со списком для выбора всего три значения: 1, 2, 3 смена. Чтобы не раскрывать списки в полях таблицы и не выбирать значения (их всего три), есть ли какое-либо другое красивое решение: например, при наведении курсора на поле и нажатием на клавишу мыши вводилась 1 смена, при повторном нажатии - 2 смена, при 3 - 3 смена, 4 - опять пустое значение. Может как-то по другому. Спасибо.

Всего записей: 5 | Зарегистр. 09-03-2011 | Отправлено: 15:19 10-03-2011
Algofil



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

Цитата:
есть ли какое-либо другое красивое решение

есть стандартные решения, без ВБА, например:
Подстановка
тип эл. упр. - поле со списком
тип ист. строк - таблица или запрос
ист. строк - запрос (вроде такого: SELECT smena.N FROM smena ORDER BY smena.N;)
число ст. - 1
прис. столбец - 1
заглавия - нет
.... и т.д. все просто и по русски
результат: при переходе (неважно каким способом) в поле таблицы выбор из списка осуществляется нажатием на 1/2/3 например на нумпаде, при этом из списка автоматически выбирается строка, начинающаяся с введенного символа, запись обновляется, емнип, при потере фокуса (выходе из поля)

Всего записей: 247 | Зарегистр. 19-09-2007 | Отправлено: 10:14 11-03-2011
JAndrei

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

Всего записей: 5 | Зарегистр. 09-03-2011 | Отправлено: 12:45 11-03-2011
Algofil



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

Цитата:
Я вроде бы всё подробно описал, спрашивая как обойтись без раскрывающегося списка.

Я вроде бы всё подробно описал, как получить результат без раскрывающегося списка. Он ни разу не раскрывается в моем варианте ))

Всего записей: 247 | Зарегистр. 19-09-2007 | Отправлено: 14:52 11-03-2011
JAndrei

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Извиняюсь, спасибо, работает. Но тогда надо две руки задействовать, что ещё неудобнее, плюс ещё инструкцию для другого пользователя.

Всего записей: 5 | Зарегистр. 09-03-2011 | Отправлено: 17:00 11-03-2011
Algofil



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
согласен, это сильно зависит от привычки, я начинал в 1985 еще без всяких мышек, так мне удобнее Tab Enter NumPad Home End стрелки, чем три клика мышкой, да так чтобы никакие два из них не оказались даблкликом ))

Всего записей: 247 | Зарегистр. 19-09-2007 | Отправлено: 18:01 11-03-2011
Tutankhamon86



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Добрый день
 
Пожалуйста подскажите как в MS Access загрузить таблицу с кодировкой ISO/IEC 8859-1 (также известная как ISO 8859-1 и Latin-1).
Для последующего редактирования и сохранения в той же кодировке

Всего записей: 225 | Зарегистр. 20-05-2008 | Отправлено: 15:58 14-03-2011
Algofil



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

Цитата:
Пожалуйста подскажите как в MS Access загрузить таблицу с кодировкой ISO/IEC 8859-1
С кодировкой понятно, а что есть таблица до загрузки в аксес?
Поэкспериментируем с текстом:
1. Создать БД
2. Новая БД
3. Файл-внешние данные-импорт
4. Выбрали тип файла-выбрали путь/имя файла
5. Дополнительно-Кодовая страница
Тут возможны варианты, если аксес отказывается признавать нужную Вам кодировку, попробуйте пересохранить исходник (родным для него редактором) в формате, более понятном аксесу

Всего записей: 247 | Зарегистр. 19-09-2007 | Отправлено: 16:17 14-03-2011
RioBravo



Newbie
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Помогите разобраться с проблемой. Есть кнопка для открытия вордового файла. Через раз вылетает ошибка 462 (The remote server machine does not exist or is unavailable 462). Если ворд висит запущенным, то ошибки нет. В чем может быть дело?  

Цитата:
 
DIM oApp AS Object  
DIM LWordDoc AS STRING  
    LWordDoc = [doc_link] '[doc_link] - поле с адресом файла  
    Set oApp = CreateObject(Class:="Word.Application")  
    oApp.Visible = True  
         
Documents.OPEN fileName:=LWordDoc  

 

Всего записей: 31 | Зарегистр. 22-07-2009 | Отправлено: 11:12 01-04-2011
Algofil



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

Цитата:
Если ворд висит запущенным, то ошибки нет. В чем может быть дело?

возможно в версии офиса, попробовать более ранние, чем новее офис - тем больше заморочек в форматах файлов. кроме того не повредит проверить настройку ODBC раз уж при открытом ворде проблем не возникает, а аксесу хочется воспринимать открываемый файл как файл БД... к серверу БД ему панимаешь надо коннектиться, чую скоро мелкомягкие начнут для открытия .csv файлов требовать сервера
 
 
Добавлено:
по тексту кода - настораживает "Word.Application" может надо "Word.Document"? Но если честно - к разработчику, может вспомнит о чем думал, раз уж каментить не научили

Всего записей: 247 | Зарегистр. 19-09-2007 | Отправлено: 12:11 01-04-2011
asbo

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

Код:
 
Sub sb_RioBravo
DIM oApp AS Object  
DIM LWordDoc AS STRING  
    LWordDoc = [doc_link] '[doc_link] - поле с адресом файла  
    Set oApp = CreateObject(Class:="Word.Application")  
    oApp.Visible = True  
    oApp.Documents.OPEN fileName:=LWordDoc  
End Sub
 

Всего записей: 1805 | Зарегистр. 03-10-2006 | Отправлено: 12:36 01-04-2011
Mariya1001

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Здравствуйте, у меня имеется 2 таблицы: Уроки, Оценки.
Пытаюсь сделать форму, в виде электронного журнала. Все данные в таблицу Оценки заносятся нормально, а в таблице Уроки только изменяет одну запись, добавить новые нельзя и если выбирать код урока из выпадающего списка пишет: "невозможно изменение элемента присоединенного к полю счетчика КодУрока".
Что делать? Помогите пожалуйста.

Всего записей: 1 | Зарегистр. 30-04-2011 | Отправлено: 12:43 30-04-2011
zarel

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
(Знакомый попросил сделать контрольную работу в аксесе, отдавать нужно уже послезавтра.... тоесть сделать нужно до вечера завтрашнего дня...)
 
Есть база данных, в ней две таблицы  "модели автомобилей" и "клиенты и заказы".
В таблице "модели автомобилей" содержатся следующие поля:
код, код модели,  модель, цвет, коробка передач, обивка, заводская цена.
 
Нужно создать запрос по таблице "модели автомобилей" , для отображения розничной цены на каждый автомобиль, которая на 15% выше заводской.
 
Честно говоря вообще не вкуриваю как это нужно сделать...
Точнее не понимаю следующее :
путем запроса в таблице создается новое поле закупочная цена , или же на основе поля заводская цена условием выборки получаем нужное значение ?
 
кто знает помогите, заранее благодарен...

Всего записей: 8 | Зарегистр. 26-03-2008 | Отправлено: 08:43 10-05-2011
SIgor33

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
zarel
А где поле с розничной ценой, а то чем сравнивать

Всего записей: 652 | Зарегистр. 03-03-2009 | Отправлено: 09:11 10-05-2011
zarel

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
[q][/q]
в том то и дело, что его нету, я и думаю что либо его создать нужно в таблице , либо на основании поля "заводская цена" сформировать в запросе...
(в задании не указано создавать поле "розничная цена")
ну допустим, есть поле розничная цена, как правильно будет создать запрос ?

Всего записей: 8 | Зарегистр. 26-03-2008 | Отправлено: 09:14 10-05-2011 | Исправлено: zarel, 09:31 10-05-2011
Открыть новую тему     Написать ответ в эту тему

Страницы: 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 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68

Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » Access VBA


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

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

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru