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

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в 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
Vitus_Bering



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

Цитата:
значение - дробь, например 4,75.

округлить при помощи встроенной функции CLng()

Всего записей: 936 | Зарегистр. 30-09-2005 | Отправлено: 21:06 03-04-2013
PETRISCHEV

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Добрый день!
 
Вопрос по отладке кода.
Использую окно watches для просмотра состояния переменных.
Состояние переменных нормальным образом отображается при пошаговом выполнении кода программы до тех пор, пока в коде не запускается процесс Excel. (Я программно работаю с файлами xls, загружая в них информацию из базы данных). После запуска процесса Excel при выполнении каждой очередной команды, переменные в окне watches "пропадают". Они на самом деле там есть, но их не видно! Чтобы посмотреть каждую из них, нужно в каждую ткнуть мышкой (при этом нужно угадать в каком месте окна эта переменная).
Это похоже на какой-то "глюк". Началось после замены компьютера.
Раньше у меня был Win XP и Access 2007 - не было такой проблемы. Сейчас Win 7 64. Office тот же самый, что и раньше и, соответственно, 32-битный Access 2007.

Всего записей: 1 | Зарегистр. 30-09-2013 | Отправлено: 11:32 30-09-2013
sergeym1

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Нужна помощь. Пишу базу для обработки заказов на изготовление продукции (стеклопакетов). Большинство заказчиков выгружает их из более-менее распостранненной программы-конструктора окон. Формат файла xls.  
 
Пример файла здесь   Ссылка
 
Есть необходимость экспортировать данные в Access 2003(!), при этом наименование столбцов постоянно, меняются только количество строк и сами данные. Как заставить пробежаться по экселевскому листу и вытащить нужные колонки и строки? Нужное выделил бледно-желтым цветом.  
 
P.S. Не работал с VBA в Access, но думаю рзберусь. Дайте мысль..

Всего записей: 40 | Зарегистр. 17-11-2006 | Отправлено: 16:05 24-10-2013 | Исправлено: sergeym1, 16:06 24-10-2013
AndVGri

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Попробуйте, только библиотеку Microsoft Excel через Tools/References подключите

Код:
 
Public Sub ScanAndFill()
    Dim xls As New Excel.Application
    Dim pArea As Excel.Range
    Dim pBook As Excel.Workbook
    Dim pSheet As Excel.Worksheet
    Dim iRow As Long, iCol As Long
    Dim vData As Variant
     
    Set pBook = xls.Workbooks.Open("d:\path\filename.xls")
    Set pSheet = pBook.Worksheets(1)
     
    For Each pArea In pSheet.UsedRange.SpecialCells(xlCellTypeConstants).Areas
        If (pArea.Cells(1, 2).Value = "Заказ №") And (pArea.Cells(1, 4).Value = "Позиция №") Then
            vData = pArea.Value
            'на строку ниже заголовка и пропуская итого
            For iRow = 2 To UBound(vData) - 1
                'допустим через Recordset
                'Recordset.AddNew
                'заливаем текстовые данные vData(iRow,2)
                'Recordset("FildName1").Value = vData(iRow,2)
                'и так далее
                'vData(iRow,4),vData(iRow,5)
                'числовые (или текстовые?) CSng(vData(iRow,8)),CSng(vData(iRow,9))
                'CSng(vData(iRow,10))
            Next
        End If
    Next
    pBook.Close False: xls.Quit
End Sub
 

Всего записей: 750 | Зарегистр. 14-12-2005 | Отправлено: 09:32 25-10-2013 | Исправлено: AndVGri, 09:34 25-10-2013
sergeym1

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

Цитата:
Попробуйте, только библиотеку Microsoft Excel через Tools/References подключите

Прошу прощения где ее подключать в русской версии?

Всего записей: 40 | Зарегистр. 17-11-2006 | Отправлено: 11:01 25-10-2013 | Исправлено: sergeym1, 11:01 25-10-2013
aidomars



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
sergeym1
Alt+F11 - Tools/References - Microsoft Excel...

Всего записей: 982 | Зарегистр. 23-04-2007 | Отправлено: 12:14 25-10-2013
sergeym1

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

Цитата:
Alt+F11 - Tools/References - Microsoft Excel...

Спасибо! Буду пробовать.

Всего записей: 40 | Зарегистр. 17-11-2006 | Отправлено: 18:17 25-10-2013
vicrus

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Тупой вопрос, из головы вылетело.
 
через vba из одной формы заполняю поле в другой форме.
Как в vba принудительно в другой форме сохранить запись. Забыл ((

Всего записей: 6 | Зарегистр. 01-09-2003 | Отправлено: 06:05 14-11-2013
aidomars



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
vicrus
Форма2.Контрол = Me.Контрол

Всего записей: 982 | Зарегистр. 23-04-2007 | Отправлено: 08:09 14-11-2013
vicrus

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

Всего записей: 6 | Зарегистр. 01-09-2003 | Отправлено: 09:10 14-11-2013
aidomars



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

Код:
Set rst = CurrentDb.OpenRecordset("TableName", dbOpenDynaset)
With rst
    .AddNew
    .Поле = Me.Контрол
    .Update
End With

 

Код:
Sql = "INSERT INTO TableName (Field1, Field2)" & _
        " VALUES ('" & Me.Контрол & "','Текст')"
CurrentDb.Execute Sql

Всего записей: 982 | Зарегистр. 23-04-2007 | Отправлено: 10:28 14-11-2013
vicrus

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
совершенно верно.
В моем случае сделал так:
 
Forms![Форма1]![Поле1] = Me![Поле2]
Forms![Форма1].SetFocus
DoCmd.RunCommand acCmdSaveRecord
Forms![Форма2].SetFocus  
 
Хотя как-то не красиво.

Всего записей: 6 | Зарегистр. 01-09-2003 | Отправлено: 12:31 14-11-2013
UltraAcid

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Привет всем.
 
Столкнулся с таким заданием...
 
Надо как то сделать что бы в простом ComboBox функция AutoExpand находила слова по похожим буквам например:
 
если я ввожу "ел" выдавала бы и "ель" и "ёлка" из списка...
 
Возможно ли это?
 
Спасибо

Всего записей: 179 | Зарегистр. 03-10-2005 | Отправлено: 13:12 06-03-2014
Vitus_Bering



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
UltraAcid
 
Примерно так
 
Private Sub ПолеСоСписком_AfterUpdate()
  Dim Val As String
  Val = Me("ПолеСоСписком")
   Forms("frm1").List.RowSource = "SELECT * FROM Table WHERE Name LIKE '*" & Val & "*' ORDER BY Name;"
End Sub


Всего записей: 936 | Зарегистр. 30-09-2005 | Отправлено: 15:20 06-03-2014 | Исправлено: Vitus_Bering, 15:25 06-03-2014
saidumar

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Access не различает Е и Ё?

Всего записей: 92 | Зарегистр. 10-04-2011 | Отправлено: 15:40 06-03-2014
Vitus_Bering



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

Всего записей: 936 | Зарегистр. 30-09-2005 | Отправлено: 15:54 06-03-2014 | Исправлено: Vitus_Bering, 15:57 06-03-2014
Kiriki727

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Добрый день. Слезно прошу помощи!
Access 2007. VBA.
Есть 2 формы:
На первой поле со списком, ссылающееся на поле имен людей в таблице, и кнопка.
На второй форме данные о каждом человеке из таблицы.
 
Нужно сделать так, чтобы можно было на первой форме выбрать имя в поле со списком, нажать кнопку и перейти на вторую форму с информацией именно об этом человеке.
 
Пожалуйста, помогите. Если не знаете как это реализовать, то хотя бы подскажите где можно найти нечто похожее или совет какой дайте...

Всего записей: 1 | Зарегистр. 16-03-2014 | Отправлено: 16:42 16-03-2014
saidumar

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

Цитата:
различает

Ну тогда  

Цитата:
если я ввожу "ел"

вернется только "ель"...

Всего записей: 92 | Зарегистр. 10-04-2011 | Отправлено: 15:55 17-03-2014
Vitus_Bering



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

Цитата:
вернется только "ель"...

Именно так

Всего записей: 936 | Зарегистр. 30-09-2005 | Отправлено: 21:44 17-03-2014
PrWork1

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Kiriki727
Легко.
По выбору в списке на 1й форме открываете вторую форму, передавая ей в OpenArgs фио или код. Во второй форме в событии приОткрытии пишете Если OpenArgs<>"" тогда подставляем данные человека

Всего записей: 582 | Зарегистр. 15-12-2005 | Отправлено: 22:13 25-04-2014
Открыть новую тему     Написать ответ в эту тему

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