Форум программистов, компьютерный форум, киберфорум
VBA
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.58/19: Рейтинг темы: голосов - 19, средняя оценка - 4.58
0 / 0 / 0
Регистрация: 30.10.2013
Сообщений: 21

Передача данных в Access

30.10.2013, 14:17. Показов 4591. Ответов 44
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте, обращаюсь к вам за помощью и очень на нее надеюсь )). Понимаю, что такие темы уже были, но не найдя ответа, спрошу еще раз. В ecxel есть три листа с данными их нужно перенести в access, обработать, а потом обратно одной табл. что-то никак не получается. с VBA раньше работать не приходилось, задача для меня оказалась сложной. если можно код vba, с самого начала (переменные, подкл. к базе). очень спасибо )
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
30.10.2013, 14:17
Ответы с готовыми решениями:

Передача всех данных из листа Exel в Access
как все данные из листа Exel передать в Access(можно в новую)

Передача данных из таблицы Access
Есть клиент и сервер. К серверу подключена база данных Access. Связь между клиентом и сервером осуществляется с помощью сокетов. Сервер...

Передача данных из access в онлайн касс
Есть база данных в которой формируется чек по продажам. Возможно ли передача данных данного чека в ККТ с фискальным регистратором? ...

44
 Аватар для Alex77755
11525 / 3812 / 683
Регистрация: 13.02.2009
Сообщений: 11,229
05.11.2013, 20:01
Студворк — интернет-сервис помощи студентам
Сделал вызов процедур с аргументом и небольшим примером вызова.
Для сортировки у ексела есть свои функции.
Лучше пользоваться ими - они быстрей самодельных (но при желании можно и самодельные сделать).
А так: включаешь "магнитофон" - запись макроса, делаешь, что тебе нужно, выключаешь, анализируешь, часто выкидываешь много лишнего особенно при форматировании. Но в случае с сортировкой, кажется, не много. Разве что Select.
Вложения
Тип файла: rar Исходн_данные_Ф.rar (55.8 Кб, 8 просмотров)
1
0 / 0 / 0
Регистрация: 30.10.2013
Сообщений: 21
05.11.2013, 20:04  [ТС]
вот здесь выдает ошибку

Set oDP_имя = CreateObject("Scripting.Dictionary") ' Создаем словарь
0
 Аватар для Alex77755
11525 / 3812 / 683
Регистрация: 13.02.2009
Сообщений: 11,229
05.11.2013, 20:10
А на счёт подключения к базам - тоже не очень большая проблема.
Но если данные огромные. И то если они изначально хранятся в базе.
А в вашем случае гнать данные в аксесс для обработки и потом тянуть обратно! Я бы так не стал делать.
Если уж хочется поработать с запросами, то можно и в екселе работать с ними.
Вот только неудобство: VBA макрос при синтаксической ошибке указывает ошибку и место ошибки, А запросы чаще всего в случае ошибки синтаксиса просто ничего не делают и молчат как рыбы. Иногда, правда, бывает какое-нибудь сообщение, но редко

Добавлено через 1 минуту
Не объявленная переменная. В последнем вырианте ошибки не будет
0
0 / 0 / 0
Регистрация: 30.10.2013
Сообщений: 21
05.11.2013, 20:13  [ТС]
в последнем архиве все работает, ура! Спасибо!

я вот про запросы в экселе не знаю, а может посоветуете где почитать, книгу, где поудачнее описанее?
0
 Аватар для Alex77755
11525 / 3812 / 683
Регистрация: 13.02.2009
Сообщений: 11,229
05.11.2013, 20:25
Вот пример:
Visual Basic
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
Public Function ADO_R_Dmitry(ByVal StrSql$, ByVal FilePath$, ByVal OutputRange As Range, _
ByVal FieldsName As Boolean, ByVal OutputFieldsName As Boolean, Optional TypeBase As Long = 0, Optional ColumnDelimeter As String = ",")
 
'==============================================================================
'* Автор R Dmitry
'==============================================================================
Dim sCon As String, FieldName As String
Dim rs As Object, cn  As Object
Set rs = CreateObject("ADODB.Recordset")
Set cn = CreateObject("ADODB.Connection")
If FieldsName Then FieldName = "Yes" Else FieldName = "No"
 
If TypeBase > 0 Then
    sCon = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="
    If TypeBase = 1 Then sCon = sCon & FilePath & ";User Id=admin;Password=;" 'Access
   'If TypeBase = 2 Then sCon = "Driver={Microsoft dBASE Driver (*.dbf)};DriverID=277;Dbq=" & FilePath
    If TypeBase = 2 Then sCon = sCon & FilePath & ";Extended Properties=dBASE IV;User ID=Admin;Password=;" 'DBF
    'If TypeBase = 3 Then sCon = sCon & FilePath & ";Extended Properties=text;HDR=" & FieldName & ";FMT=Delimited " & ColumnDelimeter 'TXT
    If TypeBase = 3 Then sCon = "Driver={Microsoft Text Driver (*.txt; *.csv)};Dbq=" & FilePath & ";Extensions=asc,csv,tab,txt;"
Else
    Select Case Val(Application.Version)
        Case Is < 12
            sCon = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & FilePath _
              & ";Extended Properties=""Excel 8.0;HDR=" & FieldName & ";IMEX=1"";"
        Case 12, 14
            sCon = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & FilePath _
            & ";Extended Properties=""Excel 12.0;HDR=" & FieldName & ";IMEX=1"";"
    End Select
End If
cn.Open sCon
If Not cn.State = 1 Then Exit Function
Set rs = cn.Execute(StrSql)
If Not FieldsName Then OutputFieldsName = False
 If OutputFieldsName Then
    For i = 0 To rs.Fields.Count - 1
    OutputRange.Offset(0, i) = rs.Fields(i).Name
    Next
    Set OutputRange = OutputRange.Offset(1, 0)
 End If
 DoEvents
OutputRange.CopyFromRecordset rs
rs.Close:  cn.Close
Set cn = Nothing: Set rs = Nothing
End Function
Sub test()
Dim strSql2$
Dim Lr&
Lr = Cells(Rows.Count, 1).End(xlUp).Row
If Lr < 3 Then Lr = 3
Range("a3:q" & Lr).ClearContents
strSql2 = "select * from [Янв_Февр$] where [Код товара]like '%" & [a2].Value & "%'"
Call ADO_R_Dmitry(strSql2, ThisWorkbook.FullName, Sheets("Поиск").[a3], True, False)
End Sub
Sub test2()
Dim strSql2$
Dim Lr&
Lr = Cells(Rows.Count, 1).End(xlUp).Row
If Lr < 3 Then Lr = 3
Range("a3:q" & Lr).ClearContents
strSql2 = "select * from [Мар_Апр$] where [Код товара]like '%" & [a2].Value & "%'"
Call ADO_R_Dmitry(strSql2, ThisWorkbook.FullName, Sheets("Поиск").[a3], True, False)
End Sub
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
05.11.2013, 20:25

передача разнотипных данных из Exel в Access
Здравствуйте! помогите мне, пожалуйста! Имеется таблица в EXEL с разными типами данных. Данные нужно передать в три разные таблицы Access....

передача разнотипных данных из Excel в Access
Здравствуйте! помогите мне, пожалуйста! Имеется таблица в EXEL с разными типами данных. Данные нужно передать в три разные таблицы Access....

Передача данных из DBF в таблицы в Access
Помогите решить проблему! Решил отказаться от использования ISAM драйверов в своей программе. Делаю выборку данных из файлов DBF и...

Медленная передача данных из Access на SQL Server
Столкнулся с не совсем понятной ситуацией - простой INSERT, который передает данные из локальной таблицы на удаленный север работает очень...

Передача данных из Access в браузер Google Chrome
Здравствуйте! Собственно вопрос: как передать данные из Access в открытую страничку браузера Google Chrome для заполнения кучи полей в...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
45
Ответ Создать тему
Новые блоги и статьи
Запустил конкурс "тем и промптов для текстовых квестов созданных почти чисто ИИ"
Adler 06.10.2026
Всем привет! За последние три-четыре дня я создал более 16 текстовых квестовых игр используя преимущественно по одному запросу к ИИ на игру. Мне так понравилось смотреть все ветки/ сцены во всех. . .
ИИ не может найти нужный язык в списке
Supersumestria 05.10.2026
Я ему даю вот такое изображение и прошу найти и подчеркнуть немецкий язык. Возвращает он вот это: https:/ / i. **********/ vqBWLe2. png Нужную строчку в 3й колонке просто выдумал. . Это. . .
Новая последняя моя музыка в SUNO
zorxor 05.10.2026
Здравствуйте, дорогие мои друзья! С большой радостью я хотел бы представить вам свою новую последнею музыку, которую сгенерировала мне по моей просьбе нейросеть SUNO. С уважением, zorxor. Это. . .
Nekobox - outbounds[0].transport: unknown transport type: raw
damix 01.10.2026
Фикс ошибки Правым кликом по серверу -> отладочная информация -> edit Заменить "net": "raw", на "net": "tcp", Нажать кнопку reload.
Программный домашний кинотеатр
russiannick 27.09.2026
Сподобился на программный домашний кинотеатр. В качестве ЯВУ по традиции выбрал js. В помощники взял Яндекс-Алису. Было создано три зала на разные интересы. исторические и ретро сериал Хичкок. . .
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
Мобильное приложение ColorStep
pavlinmavlin 17.09.2026
Реализовал приложение Красный, Зеленый, Синий в Unity3d + c#. Название изменил на ColorStep. Приложение прошло модерацию и теперь доступно для скачивания. Делал его сам, шаг за шагом — и вот,. . .
Запрет дублирования строк в табличной части
Maks 13.09.2026
Реализация из решения ниже выполнена на нетиповом справочнике "Нормы ТО" с табличной часть "Виды ТО", разработанного в КА2, со следующими реквизитами: - ВидТО (СправочникСсылка. ВидыТО); - ВидГСМ. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru