Руководства, Инструкции, Бланки

на бланках дату листа ставлять img-1

на бланках дату листа ставлять

Категория: Бланки/Образцы

Описание

Вставка рабочего листа Excel в форму или отчет

Вставка рабочего листа Excel в форму или отчет

С помощью таких элементов управления, как Свободная рамка объекта и Присоединенная рамки объекта, в формах и отчетах Access можно отображать не только различные графические объекты, но и листы Microsoft Excel.

Так же как и рисунок, лист Microsoft Excel можно внедрить в форму или отчет или связать его с ними. При этом вставленный лист автоматически сохраняется в файле базы данных и всегда является доступным. Если обновить такой объект в форме или отчете, он будет изменен только в базе данных. Если лист Microsoft Excel связан, его можно просматривать и вносить изменения в форме или отчете. При этом изменения cохраняются в исходном файле объекта, а не в файле базы данных. Файл объекта можно обновлять независимо от базы данных. Последние изменения будут выведены на экран при следующем открытии формы или отчета. Связывание объектов удобно при работе с очень большими файлами, которые нежелательно включать в файл базы данных, а также с файлами, используемыми в нескольких формах и отчетах. Если связанный файл объекта перемешен, необходимо повторно установить с ним связь.

Рассмотрим возможность вставки листа Microsoft Excel в форму и отчет Microsoft Access с помощью свободной рамки объекта. Чтобы вставить новый лист Microsoft Excel в форму Microsoft Access, необходимо:

  1. Открыть форму или отчет в режиме Конструктора.
  2. Добавить в нее элемент управления Свободная рамка объекта (Unbound Object Frame). При этом в окне Microsoft Access выбрать переключатель Создать новый (Create New), а в списке Тип объекта (Object Type) выбрать Лист Microsoft Excel (Microsoft Excel Worksheet) (рис. 15.10). Если файл XLS уже создан, выберите переключатель Создать из файла (Create From File) и введите путь и имя нужного файла.

Рис. 15.10. Окно Microsoft Access при вставке нового листа Microsoft Excel в форму Microsoft Access с помощью свободной рамки объекта

  1. Когда в форме появится элемент управления, в котором отображается пустая таблица Excel, введите в нее данные (это можно сделать прямо в режиме Конструктора) (рис. 15.11). Если вы вставляли готовый файл, то сразу будет отображена таблица Excel (рис. 15.12).

Рис. 15.11. Ввод данных на лист Microsoft Excel в режиме Конструктора форм Microsoft Access

Рис. 15.12. Использование свободной рамки объекта для вставки существующего листа Microsoft Excel в форму Microsoft Access

  1. Чтобы сделать доступным изменение данных на листе в режиме Формы, установите значение свойства Доступ (Enabled) для вставленного элемента управления равным Да (Yes), а свойство Блокировка (Locked) — Нет (No).

Увидеть данные, расположенные на листе Microsoft Excel, можно, открыв форму в режиме Формы. Чтобы иметь возможность изменять или добавлять данные на лист, нужно дважды щелкнуть кнопкой мыши на листе Microsoft Excel в форме (рис. 15.13).

Рис. 15.13. Ввод данных на лист Microsoft Excel в режиме Формы

При работе с отчетами Microsoft Access следует выполнять аналогичную пошаговую процедуру. Увидеть данные, расположенные на листе Microsoft Excel, можно, открыв отчет в режиме просмотра.

Рис. 15.14. Использование присоединенной рамки объекта для вставки листа Microsoft Excel в форму Microsoft Access

Рассмотрим теперь возможность вставки листов Microsoft Excel с помощью присоединенной рамки объекта. В этом случае листы Excel будут храниться в записях таблицы Access (более разумным представляется хранить не сами таблицы, а ссылки на них, т. е. не внедрять листы Excel, а связывать их с таблицей Access). Сначала в таблице должно быть создано поле типа Объект OLE (OLE Object), которое будет содержать листы Excel. Затем в форме, отображающей записи этой таблицы, должен быть создан элемент Присоединенная рамка объекта (Bound Object Frame), связанный с этим полем. Вставка листа Microsoft Excel в поле таблицы или формы может быть выполнена с помощью команды меню Вставка, Объект (Insert, Object), как это уже описывалось ранее. На рис. 15.14 и 15.15 представлены примеры вставки листа Microsoft Excel в форму и отчет Access.

Рис. 15.15. Использование присоединенной рамки объекта для вставки листов Microsoft Excel в отчет Microsoft Access

Другие статьи

Мир MS Excel

200?'200px':''+(this.scrollHeight+5)+'px');"> Календарик работает в какой-то книге - вот в неё и надо сохранять настройки .


Можно и на листе сохранять, но
если календарь работает как надстройка, тогда и сохранять надо в надстройке.
добавил лист "mySetting"
и код изменил соответственно:

200?'200px':''+(this.scrollHeight+5)+'px');">
' В Public Function NewShow меняем:

If IsEmpty(ThisWorkbook.Sheets("mySetting").Range("A1")) = True Then
Me.Left = 350
Me.Top = 250
Else
Me.Left = ThisWorkbook.Sheets("mySetting").Range("A1").Value
Me.Top = ThisWorkbook.Sheets("mySetting").Range("A2").Value
End If
'========================================

'перед закрытием формы сохраняем координаты на листе "mySetting"
Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)
ThisWorkbook.Sheets("mySetting").Range("A1").Value = Me.Left
ThisWorkbook.Sheets("mySetting").Range("A2").Value = Me.Top
End Sub

200?'200px':''+(this.scrollHeight+5)+'px');"> А засорять реестр не стоит

[offtop][p.s.] а реестр, - не "святая икона" для этого и существует, собственно.[/offtop]

Сообщение отредактировал al-Ex - Воскресенье, 06.03.2016, 16:08

Всем привет. Решил добавить сюда и свой вариант календаря. Когда-то делал для одного задания.
Предельно простой, без лишних наворотов и код на порядок меньше .

Кнопки создаются динамически, поэтому - легко масштабируемый.
Для этого достаточно поменять размер рамки - все кнопки будут создаваться под новый размер .

На форуме заметил интересное предложение по улучшению одного из календарей:

200?'200px':''+(this.scrollHeight+5)+'px');"> Предлагаю функциональность улучшить.
Кнопочки соответствующие числам не попадающим в данный месяц у вас неактивны.
Имеем просто "призраки" на форме,
Вот предлагаю Вам сделать их тоже активными, пусть только шрифтом выделяются бледным
плюс при клике по ним пусть месяц меняется на соответствующий,
так-же как и при смене месяца в выпадающем списке.
Эта улучшенная функциональность так-же и внешний вид улучшит,
т.к неактивные кнопочки выглядят угрюмо и громоздко.


Решил попробовать свои силы.
В результате получились следующие дополнения и изменения:
1. Добавлен выбор режима вставки дат на лист:
– вставить только одну дату и время (форма работает в модальном режиме и закрывается после вставки даты на лист)
– вставить несколько дат
2. Добавлен выбор способа вставки даты на лист: одиночным или двойным щелчком по числу на календаре.
3. Добавлена возможность выбора дат не текущего месяца.
4. Добавлены всплывающие подсказки с названием месяца над датами не текущего месяца. Если не текущими месяцами являются декабрь или январь, во всплывающие подсказки добавляется соответствующий год.
5. Добавлена опция выделения цветом субботы в качестве выходного дня.
6. Добавлена опция выделения цветом праздничных дней.
Праздничные дни, которые не переносятся, выделяются цветом только после 1990 года.
Конечно, и в этот период праздничные даты менялись. Это можно отразить в календаре. Однако такая работа требует много времени и не является задачей моего проекта.
7. Добавлена кнопка «Установить календарь на сегодня».
8. Добавлена возможность ручного ввода значений часов, минут и секунд (с фильтрацией введённых значений).
9. Добавлена возможность настройки внешнего вида основных элементов календаря без изменения кода макроса.

10. Перенесены макросы запуска календаря и вставки даты на лист.
11. Изменено направление прокрутки месяцев.
12. Исправлены ошибки, возникающие при не корректном ручном вводе значения года.
13. Исправлена ошибка `-2147467259 (80004005)`, возникающая при движении указателя мыши по числам месяца, если курсор остался в поле ввода значения года.
14. При смене года или месяца время теперь устанавливается на 00:00:00. Это логично, ведь в заголовке формы пишется 1-е число месяца.
15. Для исключения ошибок в макросе допустимый диапазон годов был ограничен от 2 до 9998.
При этом следует отметить, что Excel работает только с датами после 01.01.1900.
Более ранние даты воспринимаются только как текстовые строки или как даты после 2000 года (например, следующее содержание ячейки: 1.1.1 может быть воспринято как 01.01.2001).
К тому же необходимо помнить о смене календарей в России:
- «Декрет о введении в Российской республике западноевропейского календаря» от 26.01.1918 г.:
после 31.01.1918 наступило 14.02.1918
- Смена календаря Петром I с 01.01.1700 г.
- С 1492 года новый год начали отмечать с 01 или 21 сентября.
- Раньше новый год отмечали 01 или 21 марта.
Таким образом, я не могу гарантировать точное соответствие дней недели и чисел месяцев до 1918 года.
Прошу историков не судить строго данный календарь.
При необходимости можно будет внести поправки.

16. В файл с календарём добавлена инструкция.

al-Ex предлагал, чтобы при клике по числам не текущего месяца месяц менялся на соответствующий так же, как и при смене месяца в выпадающем списке.
Это не сложно сделать.
Однако не совсем понятно, зачем ?
Для перехода на другой месяц есть 2 элемента: выпадающий список и кнопки прокрутки.
А щелчком по числу месяца пользователь вставляет дату на лист.
Наверное, такую смену месяца можно предложить в качестве опции при вставке даты на лист ДВОЙНЫМ щелчком. Пишите, если кому-то это понадобится.

Я – любитель-самоучка. Поэтому сразу прошу прощения за оформление моего кода. Да, я пишу очень широко. Но иначе я сам потом не могу прочитать даже свои макросы.

Проводить полное тестирование календаря у меня нет сейчас возможности.
Приму любые замечания и пожелания.
В меру своих знаний готов помочь в работе над таким нужным проектом.
Рекламные ссылки удалены

[p.s.]
Размер файла с календарём получился больше 100 Kb, поэтому к сообщению он не прикрепился
Вот ссылка на Yandex.диск:
Версия календаря (ноябрь 2016 г.)

Сообщение отредактировал Pelena - Четверг, 24.11.2016, 18:42

Как вставить в книгу Excel новые листы? Как сделать копии листа в Excel? Как добавить новые листы с заданными именами?

Как вставить в книгу Excel новые листы? Как сделать копии листа в Excel? Как добавить новые листы с заданными именами?

В этой заметке рассмотрим на примере Excel 2007 рассмотрим добавление новых листов в рабочую книгу, копирование существующего листа, а также создание листов с заданнымиименами.

Как вставить новый чистый лист в книгу Excel?

Для вставки нового листа достаточно выбрать пункт меню "Вставить. ", либо нажать кнопку, следующую сразу за последним листом рабочей книги. Еще одним способом добавления нового листа в рабочую книгу является нажатие сочетания клавиш Shift+F11 на клавиатуре. Можно также настроить создание книг с произвольным количеством листов, если Вас не устраивают стандартные три листа. Сделать это можно следующим образом, нажать кнопку Office, затем в меню выбрать "Параметры Excel" и в разделе "Основные" выбрать группу "При создании книг". В графе "Число листов" задайте нужное значение.

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

Для того чтобы сделать копию листа в Excel 2007, необходимо выбрать лист, который Вы хотите скопировать и кликнуть на нем правой кнопкой мыши, выбрать пункт "Переместить/скопировать. ".

Далее в появившемся окне ставим галку в поле "создать копию" и при необходимости выбираем строку "(переместить в конец)", при этом созданная копия выбранного листа станет последним листом рабочей книги.

Как изменить имя или переименовать лист рабочей книги Excel?

Для того чтобы переименовать лист, необходимо кликнуть правой кнопкой мыши на ярлычке нужного листа и выбрать из контекстного меню пункт "Переименовать", кроме того, можно просто дважды кликнуть левой кнопкой мыши на нужном ярлычке листа и его имя станет доступным для изменения (кроме тех случаев, когда установлена защита структуры и окон).

Описанные выше действия относятся к стандартным средствам Excel и их вполне достаточно при работе с книгами, имеющими небольшое количество листов. Для массового добавления рабочих листов, вставки большого количества копий, а также для создания листов с заданными именами целесообразно использовать средства VBA.

Как многократно вставить пустые листы в книгу? Как создать множество копий листа? Как добавить в книгу листы с именами из ячеек

При работе с файлами, содержащими множество листов, либо при необходимости периодически тиражировать, делать множество копий заданного листа, например, при создании квитанций в Excel, альтернативой стандартному, ручному добавлению или копированию листов может служить макрос (надстройка) . Упомянутый макрос позволяет автоматически вставлять нужное количество новых листов, создавать заданное количество копий выбранного листа, а также дает возможность создавать новые листы и присваивать им имена на основе значений ячеек.

Для того, чтобы воспользоваться этим средством, необходимо установить надстройку на свой компьютер , вызвать диалоговое окно надстройки и задать в нём исходные данные для работы программы.

Можно выбрать одну из трех доступных опций:

1. Вставить новые листы в заданном количестве

Пользователем задается требуемое количество листов, выбирается опция вставки листов и запускается программа, результатом работы которой является рабочая книга с заданным количеством пустых листов.

2. Скопировать активный лист заданное число раз

Выбирается копируемый лист, по аналогии с предыдущим пунктом задается желаемое число копий, в результате действия программы в книге появляется заданное число копий активного листа.

3. Создать листы с именами из ячеек

Вместо того чтобы создавать новые листы со стандартными именами "Лист1", "Лист2", "Лист3" и так далее, а затем переименовывать их, тратя на эту операцию много времени, можно предварительно сформировать список имен в ячейках листа рабочей книги, а затем в диалоговом окне надстройки выделить диапазон с нужными именами и запустить программу. Перед созданием листов с именами из значений ячеек производится проверка этих значений на соответствие требованиям к именам листов, которые:

а) не должны превышать 31 знака;

б) не должны содержать знаков. \ /. * [ или ];

в) не должны оставаться пустыми.

После прохождения проверки добавляемым листам присваиваются имена в соответствии со значениями ячеек выделенного диапазона.

Создание квитанций в Excel

На основе представленной выше надстройки можно, например, автоматизировать процесс формирования квитанций либо любых других бланков документов, имеющих одинаковый вид, в формате Excel. Для этого создается лист с формой квитанции и с помощью макроса тиражируется в таком количестве, в каком это необходимо.

Другие материалы по теме:

Добавление на лист кнопки и назначение ей макроса

Добавление на лист кнопки и назначение ей макроса

Важно : Данная статья переведена с помощью машинного перевода, см. Отказ от ответственности. Используйте английский вариант этой статьи, который находится здесь. в качестве справочного материала.

Обычную кнопку (элемент управления формы) и кнопку команды (элемент ActiveX) можно использовать для запуска макроса, выполняющего определенные действия при нажатии пользователем кнопки.

Выберите одну из возможностей, перечисленных ниже. Сведения об обычных кнопках и кнопках команды

Как обычная кнопка (элемент управления формы), так и кнопка команды (элемент ActiveX) выполняют функции кнопки. Обычные кнопки и кнопки команды используются для автоматизации печати листа, фильтрации данных, а также для вычислений. В общем, кнопка (элемент управления формы) и кнопка команды (элемент ActiveX) выглядят похоже и выполняют аналогичные функции. Тем не менее, между ними есть ряд различий, о которых рассказывается в следующих разделах.

Кнопка (элемент управления формы)

Кнопка команды (элемент ActiveX)

Добавление кнопки (элемент управления формы)

Если вкладка Разработчик недоступна, отобразите ее.

Отображение вкладки Разработчик

На вкладке Файл выберите команду Параметры. а затем — категорию Настройка ленты .

В списке Основные вкладки установите флажок Разработчик и нажмите кнопку ОК .

На вкладке Разработчик в группе Элементы управления нажмите кнопку Вставить. а затем в разделе Элементы управления формы выберите элемент Кнопка .

Щелкните на листе место, где должен быть расположен левый верхний угол кнопки.
Откроется диалоговое окно Назначить макрос .

Назначьте кнопке макрос и нажмите кнопку ОК .

Чтобы указать свойства кнопки, щелкните ее правой кнопкой мыши и выберите пункт Формат элемента управления .

Добавление кнопки команды (элемент ActiveX)

Если вкладка Разработчик недоступна, отобразите ее.

Отображение вкладки Разработчик

На вкладке Файл выберите команду Параметры. а затем — категорию Настройка ленты .

В списке Основные вкладки установите флажок Разработчик и нажмите кнопку ОК .

На вкладке Разработчик в группе Элементы управления нажмите кнопку Вставить. а затем в разделе Элементы ActiveX выберите элемент Кнопка .

Щелкните на листе место, где должен быть расположен левый верхний угол кнопки.

В группе Элементы управления нажмите кнопку Просмотр кода .
Откроется редактор Visual Basic. Убедитесь в том, что в раскрывающемся списке справа выбран пункт Click. Подпрограмма CommandButton1_Click, как показано на рисунке ниже, запускает по нажатию кнопки два макроса: SelectC15 и HelloMessage.

Выполните в подпрограмме для кнопки одно из указанных ниже действий.

Введите имя имеющегося в книге макроса. Для поиска макросов нажмите в группе Код кнопку Макросы. Чтобы по нажатию кнопки запускалось несколько макросов, введите имя каждого макроса в отдельной строке подпрограммы.

Напишите собственный код на языке VBA.

Закройте редактор Visual Basic и выйдите из режима конструктора, нажав кнопку Режим конструктора .

Чтобы запустить связанный с кнопкой код на VBA, нажмите созданную кнопку ActiveX.

Чтобы изменить элемент ActiveX, убедитесь, что выбран режим конструктора. На вкладке Разработчик в группе Элементы управления нажмите кнопку Режим конструктора .

Чтобы задать свойства кнопки, нажмите на вкладке Разработчик в группе Элементы управления кнопку Свойства . Также можно щелкнуть кнопку правой кнопкой мыши и выбрать пункт Свойства .

Примечание Перед тем как нажать кнопку Свойства. выделите объект, свойства которого требуется просмотреть или изменить.

Откроется диалоговое окно Свойства. Для получения дополнительных сведений о каждом свойстве выберите свойство и нажмите клавишу F1, чтобы отобразить соответствующий раздел справка по Visual Basic. Можно также ввести имя свойства в поле Поиск справки Visual Basic. Доступные свойства перечислены в таблице ниже.

Объект, который требуется настроить

Изменить колонтитулы

Изменить колонтитулы

Изменяет и создает колонтитулы сразу на нескольких листах книги: всех или только выбранных, а так же поможет скопировать в указанные листы колонтитулы с выбранного листа.
Все, что требуется это выбрать листы, на которых необходимо изменить колонтитулы и указать какие именно колонитулы изменить.

Копировать колонтитулы с листа:
Выбирается лист текущей книги, с которого будут скопированы все колонтитулы в выбранные листы.

Примечание: из-за некоторых особенностей хранения картинок в колонитулах, они не всегда могут быть корректно перенесены. Поэтому всегда проверяйте скопировались ли картинки с указанного листа или нет. Для других типов данных этой проблемы нет.

Задать произвольно:
Это небольшой конструктор колонтитулов. Для каждого колонтитула можно создать любые комбинации, включая произвольный текст. Лучше всего использовать вставку предустановленных данных:

  • Рисунок - вставляет в колонтитул рисунок. При этом мини-изображение рисунка отображается справа от списка данных. Если в последствии нажать на мини-изображение, то можно изменить рисунок. Важно: нельзя устанавливать два рисунка для одного колонтитула.
  • Номер страницы - вставляется номер страницы. Номер страниц определяются перед печатью.
  • Всего страниц - вставляется количество печатных страниц.
  • Дата - вставляется текущая дата.
  • Время - вставляется текущее время.
  • Имя листа - вставляется имя листа, который отправлен на печать.
  • Путь к файлу - вставляется полный путь к файлу, отправленному на печать.
  • Имя файла - вставляется только имя файла, отправленного на печать.
  • Ячейка - вставляет в колонтитул данные указанной ячейки. После выбора этого пункта на форме отобразится поле для указания ячейки:

    необходимо указать ячейку, значение которой необходимо вставить в колонтитул.
  • Автор - вставляется имя автора файла. Его можно посмотреть, нажав на файле правой кнопкой мыши-Свойства-Подробно-Авторы .

Созданы и вставлены в свойства листа будут только колонтитулы, отмеченные галочками. Для редактирования колонтитула необходимо сначала установить напротив него галочку.

Расскажи друзьям, если статья оказалась полезной:

Поделитесь своим мнением

Комментарии, не имеющие отношения к комментируемой статье, могут быть удалены без уведомления и объяснения причин. Если есть вопрос по личной проблеме - добро пожаловать на Форум