Уважаемые, создаю в Access 2007 отчет в режиме конструктора, помещаю на нем два текстовых поля для ввода даты. Перехожу в режим "Представления отчета", ставлю курсор в первое поле, ввожу дату. Ставлю курсор во второе поле - в первом всё пропадает. Возвращаюсь к первому полю - ничего нет! Что за глюк???
» Access VBA
Как можно составить отчет, чтобы он печатался только с определенной ячейки и с определенного места на листе? Пример во вложении.
А то приходится распечатывать 2-ой лист отчета на вирт. принтер в pdf, редактирую в Photoshop и только потом отправляю на печать нужную мне область. Например, на данном 2-ом листе распечатались ячейки с позицией 10 по 18. Т.к. мне нужно распечатать только с позиции 15 по 18, часть ненужных удалил в Photoshop. Так нужно было, т.к. с 10 по 15 уже напечатаны, по мере заполнения таблицы появились с 15 по 18, поэтому ставлю в принтер, тот старый уже напечатанный лист и печатаю новые данные. Вот как-то так, наверно понятно изъяснился.
http://ifolder.ru/31234466
А то приходится распечатывать 2-ой лист отчета на вирт. принтер в pdf, редактирую в Photoshop и только потом отправляю на печать нужную мне область. Например, на данном 2-ом листе распечатались ячейки с позицией 10 по 18. Т.к. мне нужно распечатать только с позиции 15 по 18, часть ненужных удалил в Photoshop. Так нужно было, т.к. с 10 по 15 уже напечатаны, по мере заполнения таблицы появились с 15 по 18, поэтому ставлю в принтер, тот старый уже напечатанный лист и печатаю новые данные. Вот как-то так, наверно понятно изъяснился.
http://ifolder.ru/31234466
Не ту базу данных выложил, здесь нужная.
http://ifolder.ru/31245235
http://ifolder.ru/31245235
petrosyanserg
Берешь и скрываешь не нужные поля, как-то так:
Код:
Private Sub ОбластьДанных_Format(Cancel As Integer, FormatCount As Integer)
If Me![Поле11].Value < 15 Then
Me.Поле11.Visible = False
Else
Me.Поле11.Visible = True
End If
Me.Поле15.Visible = Me.Поле11.Visible
Me.Линия14.Visible = Me.Поле11.Visible
End Sub
Берешь и скрываешь не нужные поля, как-то так:
Код:
Private Sub ОбластьДанных_Format(Cancel As Integer, FormatCount As Integer)
If Me![Поле11].Value < 15 Then
Me.Поле11.Visible = False
Else
Me.Поле11.Visible = True
End If
Me.Поле15.Visible = Me.Поле11.Visible
Me.Линия14.Visible = Me.Поле11.Visible
End Sub
Czechoslovak
Как раз с твоим кодом, немного доработал и получилось почти то, что надо. Правда пришлось ввести "Поле24" и "Поле26", по другому не смог ввести параметр в отчет. Может как-то по-другому можно?
http://ifolder.ru/31262909
Как раз с твоим кодом, немного доработал и получилось почти то, что надо. Правда пришлось ввести "Поле24" и "Поле26", по другому не смог ввести параметр в отчет. Может как-то по-другому можно?
http://ifolder.ru/31262909
Подскажите, пожалуйста, можно ли каким-то образом в Access вывести в форме данные так, чтобы можно было распахивать/схлапывать строки. Т.е. наприммер:
Итого п.1. (сумма подпунктов)
п.1.1
п.1.2
Итого п.2. (сумма подпунктов)
п.2.1
п.2.2
п.2.3
Итого п.3. (сумма подпунктов)
п.3.1
Чтобы при щелчке на строке "Итого п..." скрывались подпункты или наоборот появлялись.
Буду очень признателен!
Итого п.1. (сумма подпунктов)
п.1.1
п.1.2
Итого п.2. (сумма подпунктов)
п.2.1
п.2.2
п.2.3
Итого п.3. (сумма подпунктов)
п.3.1
Чтобы при щелчке на строке "Итого п..." скрывались подпункты или наоборот появлялись.
Буду очень признателен!
dmention
Может это подойдет?
Может это подойдет?
Цитата:
dmention
Может это подойдет?
Что?
Видимо открытая ссылка не катит
Можно ли в Access'e в форме вывести результаты запроса слева направа, а не сверху вниз?
Т.е.:
Поле 1 Значение1 Значение 2 ... Значение N
Поле 2 Значение1 Значение 2 ... Значение N
...
Поле M Значение1 Значение 2 ... Значение N
Т.е.:
Поле 1 Значение1 Значение 2 ... Значение N
Поле 2 Значение1 Значение 2 ... Значение N
...
Поле M Значение1 Значение 2 ... Значение N
dmention
ну так при создании через мастер форм... выбрать же можно вид.
ну так при создании через мастер форм... выбрать же можно вид.
Цитата:
ну так при создании через мастер форм... выбрать же можно вид.
Что-то не вижу. Где?
Подскажите как можно такое реализовать:
Нужно, чтобы 10 человек вносили данные в таблицу, но после внесения - их нельзя было редактировать
Есть возможность сделать вход под пользователем (точнее создать условие, что при вводе Вася Иванов 11111 форма разрешала вводить данные и вносила об этом информацию)? (чтобы автоматом вносилось кто делал запись)
Желательно сделать так, чтобы другие пользователи не видели всей таблицы, а только те записи, которые сами вносят
И есть возможность сделать вывод всей таблицы с возможностью редактирования при вводе пароля?
Нужно, чтобы 10 человек вносили данные в таблицу, но после внесения - их нельзя было редактировать
Есть возможность сделать вход под пользователем (точнее создать условие, что при вводе Вася Иванов 11111 форма разрешала вводить данные и вносила об этом информацию)? (чтобы автоматом вносилось кто делал запись)
Желательно сделать так, чтобы другие пользователи не видели всей таблицы, а только те записи, которые сами вносят
И есть возможность сделать вывод всей таблицы с возможностью редактирования при вводе пароля?
Цитата:
Нужно, чтобы 10 человек вносили данные в таблицу
Мысли непрофессионала: если база в виде обычного mdb/mde файлика - всегда будут сохраняться изменения последнего, поэтому все бесполезно.
Если базу открывать в монопольном режиме - можно городить форму с фильтром по полю, в которое пишется пользователь машины.
Есть, по-моему, еще какие-то приблуды внутри аксеса, связанные с правами то-ли на базу, то-ли на записи, но я их никогда не исследовал...
novo_again
дык, а можно сделать так?
еще таблица
сотрудник:число
И далее в форме, после ввода данных - вводить число, которое соотвествует сотруднику и в базе появляется, что эту строчку внес Вася Пупкин.
И совсем нельзя сделать, чтобы предыдущие записи нельзя было редактировать?
дык, а можно сделать так?
еще таблица
сотрудник:число
И далее в форме, после ввода данных - вводить число, которое соотвествует сотруднику и в базе появляется, что эту строчку внес Вася Пупкин.
И совсем нельзя сделать, чтобы предыдущие записи нельзя было редактировать?
Цитата:
И совсем нельзя сделать, чтобы предыдущие записи нельзя было редактировать?
Это пожалуйста)) Просто сделайте в свойстве поля формы запрет на редактирование.
Разместил на форме MS Access 2003 MSHFlexGrid.
Необходимо подключиь его к запросу.
Обыскал все. Везде приводится такое описание подключения данного контрола:
' Create a ConnectionString.
Dim strCn As String
strCn = "Provider=MSDataShape.1;Data Source=Nwind;" & _
"Connect Timeout=15;Data Provider=MSDASQL"
' Create a Shape command.
Dim strSh As String
strSh = "SHAPE {SELECT * FROM `Customers`} AS Customers " & _
"APPEND ({SELECT * FROM `Orders`} AS Orders RELATE " & _
"CustomerID TO CustomerID) AS Orders"
' Assign the ConnectionString to an ADO Data Control's
' ConnectionString property, and the Shape command to the
' control's RecordSource property.
With Adodc1
.ConnectionString = strCn
.RecordSource = strSh
End With
' Set the HflexGrid control's DataSource property to the
' ADO Data control.
Set HFlexGrid1.DataSource = Adodc1
Можно ли в Access'е подключить его к запросу как-то проще?
К тому же свойства .DataSource у моего MSHFlexGrid вооще нет.
Необходимо подключиь его к запросу.
Обыскал все. Везде приводится такое описание подключения данного контрола:
' Create a ConnectionString.
Dim strCn As String
strCn = "Provider=MSDataShape.1;Data Source=Nwind;" & _
"Connect Timeout=15;Data Provider=MSDASQL"
' Create a Shape command.
Dim strSh As String
strSh = "SHAPE {SELECT * FROM `Customers`} AS Customers " & _
"APPEND ({SELECT * FROM `Orders`} AS Orders RELATE " & _
"CustomerID TO CustomerID) AS Orders"
' Assign the ConnectionString to an ADO Data Control's
' ConnectionString property, and the Shape command to the
' control's RecordSource property.
With Adodc1
.ConnectionString = strCn
.RecordSource = strSh
End With
' Set the HflexGrid control's DataSource property to the
' ADO Data control.
Set HFlexGrid1.DataSource = Adodc1
Можно ли в Access'е подключить его к запросу как-то проще?
К тому же свойства .DataSource у моего MSHFlexGrid вооще нет.
dmention
Это отсюда Microsoft Hierarchical FlexGrid матерал?
Цитата:
У моего тоже нет. У меня не Hierarchical, а простой MSFlexGrid.
Через коннекшн оно может и эффективнее... Но, только нафига эти буераки? Поэлементно заполни и все. Наглядно будет в коде. А с коннекшн потом разберись, когда все заработает. Да и скорость сравнишь попутно, расскажешь потом :)
Это отсюда Microsoft Hierarchical FlexGrid матерал?
Цитата:
К тому же свойства .DataSource у моего MSHFlexGrid вооще нет.
У моего тоже нет. У меня не Hierarchical, а простой MSFlexGrid.
Через коннекшн оно может и эффективнее... Но, только нафига эти буераки? Поэлементно заполни и все. Наглядно будет в коде. А с коннекшн потом разберись, когда все заработает. Да и скорость сравнишь попутно, расскажешь потом :)
Цитата:
Это отсюда Microsoft Hierarchical FlexGrid матерал?
Да. Но и на других ресурсах тоже самое.
Цитата:
Поэлементно заполни и все.
Имеется в виду MSHFlexGrid1.TextMatrix(n, m) = ... ?
Цитата:
Цитата:К тому же свойства .DataSource у моего MSHFlexGrid вооще нет.
У моего тоже нет. У меня не Hierarchical, а простой MSFlexGrid.
При этом, при присвоении:
Set MSHFlexGrid.DataSource = sRecordsetName возникает ошибка несоответствия типа Type mismatch, а не то, что у грида нет такого свойства...
dmention
Цитата:
Да. Или TextArray(cellindex). Какой удобнее.
Вот еще по иерархическому - ну очень уж подробно и на русском:
http://www.vbnet.ru/articles/showarticle.aspx?id=56
И вот:
http://need4elp.tripod.com/#19
Цитата:
Имеется в виду MSHFlexGrid1.TextMatrix(n, m) = ... ?
Да. Или TextArray(cellindex). Какой удобнее.
Вот еще по иерархическому - ну очень уж подробно и на русском:
http://www.vbnet.ru/articles/showarticle.aspx?id=56
И вот:
http://need4elp.tripod.com/#19
Приветствую!
Подскажите, пожалуйста, как заполнить отчёт из VBA.
Я не могу разобраться как заполнить область данных, с помощью VBA.
Подскажите, пожалуйста, как заполнить отчёт из VBA.
Я не могу разобраться как заполнить область данных, с помощью VBA.
Есть отдельные функции по добавлению полей.
Буду очень признателен, если покажите какой-нибудь примерчик. Или покажите где можно почитать об этих функциях...
Мне кажется, сначала нужно определиться с концепцией того, что Вам нужно, с задачей.
Mont1
Подробнее опишите... данные вообще откуда браться будут? в VBA самом будет то что вам в отчеты надо или оно откуда-то в вба прилетать будет?
Подробнее опишите... данные вообще откуда браться будут? в VBA самом будет то что вам в отчеты надо или оно откуда-то в вба прилетать будет?
Есть база данных access. Которая состоит из довольно большого количества таблиц. Большая часть этих таблиц имеет одинаковую структуру.
Нужно осуществить поиск по таблицам с определённой структурой. Количество таблиц, в дальнейшем, будет расти, поэтому их явно указать не получится. Надо будет провести проверку структуры таблицы (имеются ли в ней определённые поля).
Искать нужно сразу по всем этим таблицам.
Результат вывести в отчёт.
Если перейти к более конкретному примеру (пример упрощённый).
Допустим, у нас есть куча таблиц.
Нужно осуществить поиск, только по тем таблицам, которые имеют такие поля:
ФИО | Должность | Адрес
Надо получить отчёт, в который войдёт такая информация
Название таблицы | ФИО | Должность
Выборка будет проходить по полям ФИО или Должность.
То есть, пользователь задаёт ФИО. В отчёт выходит информация из всех таблиц, в которых есть нужный ФИО (Один и тот же товарищ может присутствовать сразу в нескольких таблицах). Если пользователь задаёт Должность, то соответсвенно в отчёт выходят все люди занимающие эту должность из всех таблиц. Также в отчёте должно быть название таблицы, в которой найден товарищ с требуемым ФИО или должностью.
С помощью VBA, я могу получить всю интересующую меня информацию. А вот с выводом этой информации в отчёт возникли проблемы...
Нужно осуществить поиск по таблицам с определённой структурой. Количество таблиц, в дальнейшем, будет расти, поэтому их явно указать не получится. Надо будет провести проверку структуры таблицы (имеются ли в ней определённые поля).
Искать нужно сразу по всем этим таблицам.
Результат вывести в отчёт.
Если перейти к более конкретному примеру (пример упрощённый).
Допустим, у нас есть куча таблиц.
Нужно осуществить поиск, только по тем таблицам, которые имеют такие поля:
ФИО | Должность | Адрес
Надо получить отчёт, в который войдёт такая информация
Название таблицы | ФИО | Должность
Выборка будет проходить по полям ФИО или Должность.
То есть, пользователь задаёт ФИО. В отчёт выходит информация из всех таблиц, в которых есть нужный ФИО (Один и тот же товарищ может присутствовать сразу в нескольких таблицах). Если пользователь задаёт Должность, то соответсвенно в отчёт выходят все люди занимающие эту должность из всех таблиц. Также в отчёте должно быть название таблицы, в которой найден товарищ с требуемым ФИО или должностью.
С помощью VBA, я могу получить всю интересующую меня информацию. А вот с выводом этой информации в отчёт возникли проблемы...
По-моему, так Вам VBA нужен для манипуляций не с отчетом, а со складированием найденного в отдельную временную таблицу.
Спасибо!
Про временные таблицы я как-то не подумал...
Про временные таблицы я как-то не подумал...
1. Подскажите, пожалуйста, можно ли у ленточной формы сделать высоту строк разной для разных записей в зависимости от содержимого полей?
Т.е. чтобы в текстовые поля входили все данные и переносились по словам в поле. Если ставлю сжатие/расширение, то это срабатывает только на предварительном просмотре при печати. (по сути это срабатывает только в отчете).
2. Есть ли в access встроенный грид?
С некоторым трудом установил на комп MSHFlexGrid. Вещь хорошая. Но, получается, что БД на компе без специально установленного таким же путем MSHFlexGrid эта БД работать не будет.
Т.е. чтобы в текстовые поля входили все данные и переносились по словам в поле. Если ставлю сжатие/расширение, то это срабатывает только на предварительном просмотре при печати. (по сути это срабатывает только в отчете).
2. Есть ли в access встроенный грид?
С некоторым трудом установил на комп MSHFlexGrid. Вещь хорошая. Но, получается, что БД на компе без специально установленного таким же путем MSHFlexGrid эта БД работать не будет.
dmention
нет такой возможности
нет такой возможности
Страницы: 123456789101112131415161718192021222324252627282930313233343536373839404142434445
Предыдущая тема: BDE - траблы, помогите пожалуйста срочно...
Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.