-Поиск по дневнику

Поиск сообщений в rss_sql_ru_access_programming

 -Подписка по e-mail

 

 -Постоянные читатели

 -Статистика

Статистика LiveInternet.ru: показано количество хитов и посетителей
Создан: 16.03.2006
Записей:
Комментариев:
Написано: 4

Invalid link!








Добавить любой RSS - источник (включая журнал LiveJournal) в свою ленту друзей вы можете на странице синдикации.

Исходная информация - http://www.sql.ru/forum/actualtopics.aspx?bid=4.
Данный дневник сформирован из открытого RSS-источника по адресу http://www.sql.ru/forum/actualrss.aspx?id=4, и дополняется в соответствии с дополнением данного источника. Он может не соответствовать содержимому оригинальной страницы. Трансляция создана автоматически по запросу читателей этой RSS ленты.
По всем вопросам о работе данного сервиса обращаться со страницы контактной информации.

[Обновить трансляцию]

Создание двумерного массива с конкретными данными

Понедельник, 31 Июля 2017 г. 15:31 + в цитатник
Добрый день!

Есть два массива:

Один создан вручную
srcDataCells = Array(Array("Date", ""), Array("Name", rate), Array("tType", term), Array("xType", ""))

В отладчике в поле Type указано – Variant/Variant(0 to 3)


второй создан путем считывания данных с листа Excel
allDataSheet = currentSheet.Range(currentSheet.Cells(1, 1), currentSheet.Cells(500, 15)).Value

В отладчике в поле Type указано – Variant/Variant(1 to 500, 1 to 15)



Не могу понять, почему при обращении к элементу первого массива надо писать, например,

srcDataCells(1)(0)


а при обращении к эелементу второго массива

allDataSheet(2, 1)


Как создать массив по типу второго указанного и заполнить в нем даннные вручную? (allDataSheet)

http://www.sql.ru/forum/1267573/sozdanie-dvumernogo-massiva-s-konkretnymi-dannymi


Ссылка во вложенной форме "Значение по-умолчанию" на поле родительской формы

Понедельник, 31 Июля 2017 г. 13:29 + в цитатник
Я написал

=[Формы]![Партнеры - признаки (фильтр)].[Form]![PTId]

и оно работает.

Но как-то это неправильно.

Может кто знает как "покороче" сослаться во вложенной форме для "Значение по-умолчанию" на поле родительской формы?
Ну, чтобы родительскую форму явно не писать.
Но просто
=[PTId]
не работает.

http://www.sql.ru/forum/1267551/ssylka-vo-vlozhennoy-forme-znachenie-po-umolchaniu-na-pole-roditelskoy-formy


Вопросы по chm файлам

Понедельник, 31 Июля 2017 г. 13:21 + в цитатник
Добрый день!

Для одной базы создал справочный материал в формате chm файл: множество файлов с расширением htm при компиляции с помощью программы HTML Help Workshop превратились в нужный файлик в формате chm. Есть и такой файлик в данном проекте - "НазваниеБазы.h" (вместо "НазваниеБазы" на самом деле реальное название БД у меня), где идёт нумерация топиков, которых можно использовать в свойстве "HelpContextId" формы или элементов управления. Вот только одну проблему не могу решить никак, перечитал весь интернет, но так и не нашёл ответ.
Как мне указать не просто топик, а на определенную закладку в топике?
Т.е. объясню так. В MS Word предварительно создаю файл htm, сам справочный материал довольно длинный (так надо), поэтому с помощью Word'а ставлю закладки. Скорее всего в файлике "НазваниеБазы.h" нужно каким-то Макаром указать не только название файла htm, но и название закладки, после чего присвоить уникальный код для "HelpContextId".
Попробовал вот так, но не проходит:
#define IDH_ТутНазваниеПсевдонимаHTMФайла#ТутНазваниеЗакладки 999
Разумеется псевдоним заранее создал в файле "НазваниеБазы.hhp" после ключевого слово [ALIAS]
IDH_ТутНазваниеПсевдонимаHTMФайла=ТутНазваниеHTMФайла.htm

Как же всё-таки "грамотно" ссылаться не просто на топик, а на закладку данного топика?

http://www.sql.ru/forum/1267548/voprosy-po-chm-faylam


Задание цветов в VBA

Понедельник, 31 Июля 2017 г. 11:38 + в цитатник
В старых версиях Access при выборе цвета в свойствах элемента на форме выводилось десятичное число (вроде бы). Сейчас работаю с Access 2010, коды цветов выводятся в шестнадцатиричном формате. В свойствах поля выбираю желтый цвет - выдаётся число #FFF200. Задаю это число в коде
   Me.НаимОКПО.BackColor = &HFFF200
Вместо желтого цвета выводится циановый (сине-зелёный). В чём дело?

-------------------------------------------------------------
А ты вложил уже свой кровный рубль в 50-ти миллиардное состояние Билла Гейтса?

http://www.sql.ru/forum/1267540/zadanie-cvetov-v-vba


Подключение весов к БД

Воскресенье, 30 Июля 2017 г. 15:19 + в цитатник
Здравствуйте, нужна помощь. Есть весы ДНЕПРОВЕС (работают через переходник USB-RS 232) и база данных на Access 2007. Нужно сделать так, что бы вес записывался в таблицу. Подскажите как это сделать

http://www.sql.ru/forum/1267488/podkluchenie-vesov-k-bd


Макрос на кнопку

Суббота, 29 Июля 2017 г. 19:35 + в цитатник
Как сделать макрос на кнопку "Если открыта форма ХХХ, то... иначе ..."
Вобщем макрос с проверкой открыта определённая форма или нет?
Можно и код, но если возможно, то лучше макросом.

http://www.sql.ru/forum/1267461/makros-na-knopku


Ошибка в VBA

Суббота, 29 Июля 2017 г. 18:11 + в цитатник
Добрый день!

У меня есть база и форма Анкета студента (вводим 42) и если нажать на кнопку сформировать то выдается ошибка, почему эта ошибка всплывает!

Прошу помочь!

Файл с базой

https://yadi.sk/d/b4ydZcph3LXeo7

http://www.sql.ru/forum/1267458/oshibka-v-vba


VBA Выбрать лист для импорта

Суббота, 29 Июля 2017 г. 13:05 + в цитатник
Доброго времени суток
Есть процедура импорта экс-акс:
Public Sub ImpChT()  
Dim appX As Excel.Application
Dim wB As Excel.Workbook
Dim wS As Excel.Worksheet
Dim dbs As DAO.Database
Dim rst As DAO.Recordset
Dim rsE As DAO.Recordset
Dim i As Long

Set appX = CreateObject("Excel.Application")
Set wB = appX.Workbooks.Open(Forms![f].[Поле6].Value)
Set dbs = CurrentDb
Set rst = dbs.OpenRecordset("Таблица")
Set wS = wB.Sheets(1)
   With wS
      For i = 2 To .Cells(.Rows.Count, "B").End(xlUp).Row
         If Len(wS.Cells(i, "B")) > 0 Then
            With rst
            .AddNew
            On Error GoTo ErN
            ![поле] = wS.Cells(i, "A")
            ![поле] = wS.Cells(i, "B")
            ![поле] = wS.Cells(i, "C")
            On Error GoTo 0
            .Update
            End With
         End If
      Next
   End With
rst.Close: Set rst = Nothing
dbs.Close: Set rst = Nothing
wB.Close: Set wB = Nothing
appX.Quit: Set appX = Nothing

MsgBox "Импорт Завершён"

   If DCount("[Name]", "MSysObjects", "[Name] = 'Errors_Таблица'") > 0 Then
   MsgBox "Найдены ошибки в строках(см. таблицу Errors_Таблица)"
   End If
Exit Sub
ErN:
   Select Case Err.Number
   Case 3421:
      If DCount("[Name]", "MSysObjects", "[Name]='Errors_Таблица'") = 0 Then
      CurrentDb.Execute "CREATE TABLE Errors_Таблица(RowNumbers INT)"
      End If
   Set rsE = dbs.OpenRecordset("Errors_Таблица")
      With wS
         With rsE
         .AddNew
         ![RowNumbers] = wS.Cells(i, "A")
         .Update
         End With
      End With
   rsE.Close: Set rsE = Nothing
   Resume Next
   Case Else
   End Select
End Sub

Нужно сделать возможным выбрать с какого листа импорировать данные. При этом номер листа прписывается в поле (желателен именно текст бокс, не комбобокс).
Я пробовал
...
Dim sn As String
...
sn = CInt(Forms![Форма].[Поле].Value)
...
Set wS = wB.Sheets(sn)
...

Возникала ошибка 9 - subscript out of range в Set wS...
Ведь не нужен же массив для того, чтобы просто указать номер листа?

http://www.sql.ru/forum/1267451/vba-vybrat-list-dlya-importa


Гибкий запрос с разными фильтрами

Пятница, 28 Июля 2017 г. 23:18 + в цитатник
Добрый день!
Создаю запрос, основной целью которого является возможность фильтрации по параметрам, понимаю, что задача классическая, но найти ничего подобного не смог.
Т.е. запрос вида
select * from table where id_1=param1 and id_2=param2 and id_3=param3 and ...


Теперь вопрос - как сделать так, чтобы исключить фильтрацию по одному или нескольким элементам?
Не хочется на каждый случай писать свою строку запроса:
select * from table where id_2=param2 and id_3=param3 and ...

select * from table where id_1=param1 and id_3=param3 and ...

и т.д.

Как написать универсальную строку запроса?

Опытным путем определил, что в самом MS Access пропадает фильтрация по элементу, если будет запрос вида:
select * from table where id_2=true and id_3=true ...


Но из приложения (C#) делаю следующее:
1. присваиваю параметру (переменная типа OleDBType.Integer) значение true (всё ок)
2. передаю этот параметр в запрос и... ничего не происходит.

http://www.sql.ru/forum/1267430/gibkiy-zapros-s-raznymi-filtrami


контроль версии БД

Пятница, 28 Июля 2017 г. 11:44 + в цитатник
Добрый день!
Хотелось бы в БД добавить контроль ее версии))
Как проверить значение из контрольной таблицы относительно сегодняшней даты?
Пример приложил.

http://www.sql.ru/forum/1267363/kontrol-versii-bd


помогите обьеденить три запроса в один

Пятница, 28 Июля 2017 г. 01:26 + в цитатник
необходимо вычислить фирмы (ИНН) которые совершают закупки в нерабочее время и ни когда не совершают в рабочее время в один запрос
у меня получается только в три

1 запрос создает таблицу фирм (ИНН) которые совершали закупки в нерабочее время после 17:00:00:

SELECT Лист5.Дата, Лист5.время, Лист5.ИНН INTO [нерабоч время]
FROM Лист5
WHERE (((Лист5.время)>#12/30/1899 17:0:0#));

2 запрос создает таблицу фирм (ИНН) которые совершали закупки в рабочее время не позднее 17:00:00:

SELECT Лист5.Дата, Лист5.время, Лист5.ИНН INTO [рабоч время]
FROM Лист5
WHERE (((Лист5.время)<=#12/30/1899 17:0:0#));

3 запрос показывает какие фирмы (ИНН) совершают закупки
автор
в нерабочее время и ни когда не совершали в рабочее время:

SELECT [нерабоч время].ИНН, Count([нерабоч время].Дата) AS [Count-Дата]
FROM [нерабоч время] LEFT JOIN [рабоч время] ON [нерабоч время].ИНН = [рабоч время].ИНН
WHERE ((([рабоч время].ИНН) Is Null))
GROUP BY [нерабоч время].ИНН;

http://www.sql.ru/forum/1267338/pomogite-obedenit-tri-zaprosa-v-odin


Запрос на совпадение с одним из нескольких значений поля

Четверг, 27 Июля 2017 г. 17:27 + в цитатник
Как сделать запрос, который выводит записи одной таблицы, определенное поле которого содержит значение, соответствующее любому из значений поля с несколькими значениями другой таблицы? Есть база данных квартир и заявок по ним. Таблица"Квартиры" имеет поле "район" с уникальным значением (квартира находится в одном районе). А таблица "Заявки" имеет поле "район" с несколькими значениями (клиент ищет квартиру в разных районах). Нужно сделать запрос который вы выдает все квартиры, которые подходят для заявки. То есть если клиент ищет квартиры районах: Ленинский, Октябрьский и Кировский, то запрос выдавал бы все квартиры которые находятся в этих районах.

http://www.sql.ru/forum/1267319/zapros-na-sovpadenie-s-odnim-iz-neskolkih-znacheniy-polya


Как отправить письмо через Outlook с картинками

Четверг, 27 Июля 2017 г. 13:01 + в цитатник
Добрый день.

Появилась необходимость отправлять из Access 2010 письмо через Outlook в формате HTML с картинками, так, чтобы картинка отображалась в теле письма. Как отправлять письмо с простым текстом и вложениями я знаю, а тут вышел затык.
Подскажите, как это делается?
Заранее премного благодарен.

http://www.sql.ru/forum/1267285/kak-otpravit-pismo-cherez-outlook-s-kartinkami


Не работает экспорт с CopyFromRecordset

Четверг, 27 Июля 2017 г. 11:34 + в цитатник
Всем привет!
Пытаюсь освоить экспорт с использованием CopyFromRecordset (нужно экспортировать в конкретное место файла эксель).
В сети нашел код:
Public Function exportListPrescripts()
  Dim objExcel As Excel.Workbook
  Set objExcel = workbooks.Add
  Dim objSheet As Excel.Worksheet
  Set objSheet = objExcel.Worksheets.Add()
  
  Dim rec As Recordset
  Set rec = CurrentDb.OpenRecordset("select * from qExportListPrescripts")
  
  objSheet.Range("A2").copyfromrecordset rec
  
  Dim sPath As String
  sPath = CurrentDb.Path
  
  Dim sFilename_full As String
  sFilename_full = sPath & "\Отчет"
  'On Error Resume Next
  objExcel.Close saveChanges:=True, FileName:=sFilename_full
  
  Set objExcel = Nothing
  Shell "excel.exe " & sFilename_full & ".xlsx"
  
End Function

Ругается на первую строчку: User-defined type not defined.
Подозреваю, что из-за отсутствия в библиотеке Microsoft Excel 15.0 Object Library.
Подскажите, пожалуйста не грамотному, что делать? ...учитывая дальнейшее использование БД не только мной, но другими лицами на других компьютерах

http://www.sql.ru/forum/1267272/ne-rabotaet-eksport-s-copyfromrecordset


Запуск процедуры

Четверг, 27 Июля 2017 г. 10:26 + в цитатник
Добрый день.

Есть задачка. Есть файл accdb формата 2007-2013, и в нем модуль с процедурой. Необходимо сделать bat-файл, и чтобы при запуске этого bat-файла инициировался запуск этого файла Access, и автоматически инициировать запуск одной из процедур из модуля файла Access.

Как запустить файл access из батника примерно понятно, подскажите как сделать, чтобы при запуске файла accdb автоматически запускалась заданная процедура.

Заранее спасибо.

http://www.sql.ru/forum/1267258/zapusk-procedury


Переключатель в группе залипает

Среда, 26 Июля 2017 г. 21:39 + в цитатник
Всем привет!
В форме нарисовал группу из трех переключателей.
Целевое назначение - отфильтровывать записи по значению логического поля.
1 - показать все;
2 - без галочки;
3 - с галочкой.
Под 2 и 3 встроенными макросами на событие "Кнопка вниз" задал команду "применить фильтр"
Под 1 - показать все записи.
Вроде работает, но почему-то переключатель всегда в первом положении остается.
Подскажите, плизз, что не так делаю?
Пример приложил.

http://www.sql.ru/forum/1267220/perekluchatel-v-gruppe-zalipaet


Как добавить новый столбец в запрос, но не из таблицы

Среда, 26 Июля 2017 г. 14:07 + в цитатник
Добрый день!
Есть запрос вида:

SELECT [Страна эмитента], COUNT([ARN]) as [Количество], SUM([Сумма]) as [Cумма], [Тип мошенничества]
FROM [Основная база (Уведомления о мошенничестве в ТСП)]
GROUP BY [Страна эмитента], [Тип мошенничества], [Квартал и год]
HAVING [Квартал и год] = '3 кв. 2017'

Хочу в конце строки добавить строчку что то типа "Итого", чтобы считалась общее количество и сумма всего выходящего, делаю

SELECT [Страна эмитента], COUNT([ARN]) as [Количество], SUM([Сумма]) as [Cумма], [Тип мошенничества]
FROM [Основная база (Уведомления о мошенничестве в ТСП)]
GROUP BY [Страна эмитента], [Тип мошенничества], [Квартал и год]
HAVING [Квартал и год] = '3 кв. 2017'
union all
SELECT [Всего], COUNT([ARN]) as [Количество], SUM([Сумма]) as [Cумма], [Всего1]
FROM [Основная база (Уведомления о мошенничестве в ТСП)]
GROUP BY [Квартал и год], [Всего]
HAVING [Квартал и год] = '3 кв. 2017'

Так вот проблема в чем - столбца [Всего] и [Всего1] в базе нет, если их убрать - ругается, что не совпадает количество столбцов с объединенное таблицей, а если оставляю [Всего] и [Всего1] - то при запросе просит ввести значение. Можно конечно ничего не вводить, но не комильфо 2 рааа нажимать Ентер, чтоб запрос выгрузился)
Подскажите плз, как правильно добавить несуществующие в таблице столбцы в запрос, чтобы они были пустыми, ну и чтоб не просили ввести для них значения после запуска запроса?

http://www.sql.ru/forum/1267166/kak-dobavit-novyy-stolbec-v-zapros-no-ne-iz-tablicy


Currentdb.Execute не отрабатывает

Вторник, 25 Июля 2017 г. 19:50 + в цитатник
В коде формируется строка sql. Пробую выполнить Currentdb.Execute strsql или Currentproject.Connection.Execute strsql. Не вставляет. Та же самая строка, но выполняемая docmd.Runsql прекрасно работает, запрос в конструкторе с этой же строкой на ура. А Execute нет? Кто-нибудь встречался с таким?
Какие-нибудь индексные препятствия отсутствуют. Тем более, что запрос на вставку выполняется и runsql тоже. Значит никаких запретов нет. Но не работает...
Запуск с dbFailOnError тоже ничего не дал. Загадка...

На всякий приведу текст sql
insert into Измерения(idReestr, idPoint, idPribor, idBlock) 
select 3, idPoint, iif(idTipPoint=1,2,3), iif(idTipPoint=1,Null,5) 
from ТочкиИзмерений 
where idBuild=1

http://www.sql.ru/forum/1267086/currentdb-execute-ne-otrabatyvaet


SELECT с INTO и без выдает разный результат

Понедельник, 24 Июля 2017 г. 20:01 + в цитатник
Уже голову сломал - SELECT с INTO и без выдает разный результат.
SELECT джонит 2 таблицы, без записи в таблицу и просто выводом - все корректно, отрабатывает без ошибок.
При записи результат в таблицу того же запроса - часть полей не подтягивается из правой таблицы, теряется порядка 75% кейсов.
Закономерность в потерянных кейсах выявить не удалось.

Может кто сталкивался, поделитесь опытом.
Заранее спасибо.

Тимур

http://www.sql.ru/forum/1266969/select-s-into-i-bez-vydaet-raznyy-rezultat


Можно ли сгруппировать данные под одним именем?

Понедельник, 24 Июля 2017 г. 14:30 + в цитатник
Всем привет!
Собственно, вопрос к спецам
Есть БД с клиентами, где есть ФИО и страна гражданства, можно ли всех неГраждан РФ в запросе переименовать к примеру как Нерезиденты и посчитать их количество и % от всех клиентов?
К примеру
Андрей Иванов - RUS
Василий Петров - RUS
Джон Смит - USA
Сергей Петренко - UKR

SELECT [ФИО], COUNT[Гражданство], COUNT[Гражданство]/(SELECT COUNT(Гражданство) FROM Клиенты)
FROM Клиенты
GROUP BY Гражданство

В этом случае получается 50% RUS, 25% USA, 25% URK
А нужно 50% RUS 50% Нерезиденты

Или нужно добавлять в базу дополнительный столбец и уже по нему делать запросы?

http://www.sql.ru/forum/1266925/mozhno-li-sgruppirovat-dannye-pod-odnim-imenem



Поиск сообщений в rss_sql_ru_access_programming
Страницы: 353 ... 268 267 [266] 265 264 ..
.. 1 Календарь