![]() |
Word | Excel Работа с базой данных рабочих. Связи
Всем привет!Есть такая проблема: как и каким приложением сделать
программу которая будет делать следующее -вводишь например табельный номер рабочего,она делает выборку с остальными его данными такими как фамилия имя отчество,участок где он работает и т.д. -затем эти данные вставляет в вордовский документ в ОПРЕДЕЛЕННЫЕ места.Как бы есть шаблон вордовского документа для вывода одного рабочего вместо другого на период болезни оного, и надо что бы она автоматически подставляла данные обоих в нужные места документа для последующего вывода на печать Может кто то имел такой опыт,может знает рациональное решение проблемы с рутинной работой.Буду очень благодарен за совет какой программой это сделать.И в общих чертах как это сделать.Детали и мелочи постараюсь найти в интренете самостоятельно.Мне приходит в голову только форма в Аксесс и создание формы,но там же она не вставит в текстовый файл потом :( Самой базы данных пока нету она в виде таблицы в excell но сделать не проблема.хоть в аксессе хоть еще . |
Цитата:
|
F1L-1, Если не изменяет память, документы Word и Excel можно связать друг с другом, в экселе может быть база на каждого человека и по нужному номеру в документ ворд делается подстановка тех данных, которые в экселе по указаному номеру. Делал нечно подобное года три назад. Была база клиентов их номера расчётных счетов, а форма квитанции одна, связывал документы друг с другом.
|
Накидал самый простой вариант, в архиве чисто для ознакомления возможностей.
1. В экселе база в нужном формате. 2. В ворде форма, в нужные места, выделеные жирным шрифтом подставляются выбранные данные из эксель. Этап заполнения. 1. Открывается эксель, выбирается нужный сотрудник. 2. Открываем ворд - он попросит обновить связи - ок - соглашаемся. 3. Поля заполненные выбраными данными. |
все работает.и этот ваш самый простой вариант полностью удовлетворяет всем условиям которые программа должна делать.Вы не могли бы пояснить как вы это сделали в ворде?где там выбриаешь что и куда вставлять из екселя?и что озаначает "=ВПР(G1;Base;2;ИСТИНА)"и каким способом Вы за программировали ячейку G1.где ее "свойства" найти.Или дальше уже за деньги?:)
|
Цитата:
Цитата:
Цитата:
|
Цитата:
Цитата:
Цитата:
1. Создаёте табличку с данными. 2. Выделяете ячейку которая будет с выбором\раскрывающимся списком. 3. Дальше так(ссылка выше) Цитата:
А дальше в принципе функция ВПР и вывод всех столбцов выбраной строки. Не стейсняйтесь спрашивайте, всё что смогу - отвечу. |
Вложений: 1
Спасибо! почти все получилось,только одно не выходит.Когда при открытии текстовог офайла жму обновить,Ваши данные обновляет а мои нет)если тыкнуть в текстовом документе на связь и нажать обновить тогда значение меняется на актуальное,то бишь приходится вручную каждую связь обновлять :(Я приложу свои таблицу и файл,взгялните пожалуйста
|
F1L-1, Привет.
Посмотрел, но не понял немного что где не обновляется. Это ваше. Эксель открытый как есть эксель
Это документ ворд при открытии ворд при открытии
Это документ ворд после нажатия кнопки ДА обновить связи Да обновить связи
У меня при открытии всё обновилось, на скринах показал. |
а у меня оказывается вообще ничего не обновляется хотя жму ДА.странно.только вручную.Офис врядли кривой.Только что 10 раз проверил.Только руками через правую кнопку мыши и пункт Обновить свзяь
|
Я на стареньком делал 2003-м. Попробуйте с нуля сделать?
Попробую тоже ваш переделать с нуля, раскидаю базу на второй лист, итоговый вывод на первый. Завтра утречком скину архив, что получилось. |
F1L-1, у Вас задаётся подобный вопрос:
Скрытый текст
при открытии документа? Покажите эту настройку: Скрытый текст
Покажите, что находится у Вас здесь: Скрытый текст
(скорее всего то же самое). Ну, и в любом случае будет полезно вот это: Скрытый текст
— обновлять поля и связи при предварительном просмотре/печати (т.е., достаточно будет сделать предварительный просмотр документа, чтобы обновить поля и связи). Update: посмотрел на документ и рабочую книгу — у меня тоже не обновляет :). |
Вложений: 1
Немного переделал как и обещал. Прикрепляю архив.
P.S. Давайте перемещу тему в нужный раздел, всё-таки это не программирование... |
Теперь у Вас все работает.только не могу понять что вы изменили ))))
|
F1L-1, Попробуйте создать самостоятельно с нуля. Может так получится понять что не выходило? К сожалению, я не могу сказать отчего у вас не работало, скрины вашего варианта я показывал выше, у меня всё открылось нормально...
Подозреваю что возможно связано с не правильным назначением диапазонов Мой вариант, Base диапазон от А2:E5 Код:
=ВПР(G1;Base;3;ИСТИНА)Код:
=ВПР(G1;A1:E7;4) |
хм))автоматически обновлять галочка есть,Авто галочки тоже стоят,а вот при печати обновлять не было,поставил-теперь действительно все обновляется после предварительного просмотра :)как то прозевал я сообщение Iska)
Drongo,а как сделать область с определенным именем?например Base P.S исключил поля А1-А7 но ничего не изменилось P.P.S. попробую с нуля сделать,я и то ваше сообщение прозевал)))во я дал)думал мы все еще на первой странице темы и все сообщения старые))) |
Все переделал с нуля и теперь вообще все отлично стало!даже переоткрывать документ не надо!молчаком обновляет данные!!!Что бы я без Вас делал двоих :)
А можно все таки узнать как вы сделали область Base?И еще интересно зачем там в ВПР в конце слово ИСТИНА, и как при создании функции ВПР когда указываешь диапазон таблицы(второй параметр) указать ему другой лист? я жму ЛКМ на другой лист а он не дает :(И еще интересно как запрограммировать ячейку что бы там была не текущая дата(СЕГОДНЯ) а "указанная дата +42 дня" например.Вот :) |
Цитата:
Цитата:
Цитата:
Цитата:
Код:
=ДАТА(2015; 10; 03 + 42) |
Цитата:
Код:
=СЕГОДНЯ()+42 |
Цитата:
Код:
01.10.2015 + 42Цитата:
|
Со списком получилось.Просто вышло так что все на одном листе,и лист превратился в хаос)таблицы по всему листу раскиданы,отдельной кучкой сбились списки(данные проверка),дурдом короче, :)По поводу даты:имел ввиду вообще есть ли такая функция в екселе как прибавление дней...и если есть то что писать.Прочитал ваши сообщения понял и запомнил,как с ними работать.А можно как то сделать что бы при клике на ячейку календарик выскакивал как родной виндовский?Выбрал там дату и она в ячейку записалась.
|
F1L-1, у Вас 1С есть?
|
Цитата:
|
|
Цитата:
![]() Цитата:
|
у меня 2003 как раз.так как на работе 2003)вообще у меня опен офис стоял....мне подошло то что вы скинули .все корректно вставляет,и пользоваться удобно.Вот :) я Вас еще не замучил?:)а то у меня прям грандиозные планы уже ))))Кстати все хотел написать пару вещей:
1.Автообнволение.Если делаешь в готовый документ то не всегда обновляет.если с нуля печатаешь в ворде файл и подставляешь спец вставки по мере набора документа,то всегда автоматически обновляет.Нашел выход:кусок текста(небольшой) заново перевводишь и все нормально становится с обновлением связей. 2.Есть "глюченые" ячейки.Вводишь функцию =ВПР,все делаешь верно а на выходе в ячейке результат "=ВПР(2;......)".то бишь как будто в ВПР допустим Р это английская P.хотя по факту все верно.вводишь ту же функцию в соседнюю ячейку и все работает выдает искомый результат.почему фиг знает.я прям копировал с шлюченой ячейки в новую 1 в 1.в свойствах глюченой ячейки все нормально.только что бы это понять я с глюченой 2 часа бился перевводя поо разному функцию ВПР,меняя там диапазоны и т.д.потом думаю дай в соседней сделаю.и оно заработало. |
Цитата:
Цитата:
Цитата:
P.S. И пожалуйста, ставьте отступы после знаков препинания, не хочется читать слитный текст, буду благодарен... |
У меня складывается ощущение, что в случае плоской базы данных автору вполне подойдёт банальное «Слияние» — документ Word в качестве «болванки» и файл Excel в качестве плоской базы данных.
|
| Время: 21:47. |
Время: 21:47.
© OSzone.net 2001-