|
Компьютерный форум OSzone.net » Сфера Microsoft » Microsoft Office (Word, Excel, Outlook и т.д.) » 2003/XP/2000 - [архив] Microsoft Excel |
|
Новый участник Сообщения: 16
|
Профиль | Отправить PM | Цитировать Заходишь в меню Сервис -> Параметры
На вкладке Общие убрать флаг "Стиль ссылок R1C1" |
------- Отправлено: 22:14, 16-09-2004 | #181 |
Guest |
Спасибо!
|
Отправлено: 02:57, 17-09-2004 | #182 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
bollingbroke
Сообщения: n/a |
Всем привет! Пытаюся накропать что-нибудь для осмечивания строительных работ.
Вопрос следующий: В "Поле с выпадающим списком" юзер выбирает вид работ; в соответствии с выбором в бланк сметы вставляется несколько строк с данными из таблицы (трудозатраты там, ценники и пр.). Юзер работает с вставленными данными. Затем операция повторяется - выбор работы ... и т.д. Каждый раз количество строк разное - например, для ручных земляных работ таких строк - 5, а для механизированных - уже 8. Так вот: а) как сделать так, чтобы в бланк сметы добавлялось именно НУЖНОЕ количество строк с данными; б) как СОХРАНИТЬ в форме уже внесенные строки при добавлении новых видов работ из того же "Поля..." Если Эксель такого не может - буду учить Васик (коды, примеры ... приветствуются). Сметные программы не предлагать, хочу заточить под себя (да и в будущем, может, понадобится). Заранее спасибо, с уважением, broke |
Отправлено: 21:20, 18-09-2004 | #183 |
Человек Сообщения: 3313
|
Профиль | Отправить PM | Цитировать bollingbroke
Цитата:
* * И не совсем понял, что имелось в виду в пункте "б"... Если честно, то совсем не понял... |
|
------- Отправлено: 00:20, 19-09-2004 | #184 |
bollingbroke
Сообщения: n/a |
Про п. б)
Когда выбран один вид работы, проявилось необходимое количество строк с данными (с помощью VBA и только, кстати?), внесены необходимые изменения в бланке сметы (ну, например, изменена часовая ставка, объем работ и пр.), юзер вибирает из ТОГО ЖЕ "Поля..." другой вид работ. Соответственно, надо, чтобы первый вид работ остался на бланке сметы, а второй добавился ПОСЛЕ первого. Вот это, кстати, важнее. С уважением, broke |
Отправлено: 00:35, 19-09-2004 | #185 |
Oaky
Сообщения: n/a |
А почему бы не сделать свое ПОЛЕ для каждого вида выполненных работ? Тогда с помощью INDEX через Cell link автоматом выпадают соответствующие значения из таблицы (и столько, сколько необходимо). Так можно обойтись без VBA.
|
Отправлено: 20:07, 20-09-2004 | #186 |
(*.*) Сообщения: 36544
|
Профиль | Сайт | Отправить PM | Цитировать Доброго времени суток!
Возникла необходимость подсчитывать производительность труда работников еженедельно, а также суммировать еженедельные данные в течении года. Прежде чем приступить к работе, хотелось бы посоветоваться с общественностью Поскольку из доступных средств, на мой взгляд, самым удобным является Excel, то от него и буду отталкиваться. Ссылка - архив, с двумя файлами о которых речь пойдет чуть ниже. Исходные данные Исходные данные представляют собой отчет, созданный в проприетарной программе, которая умеет, однако, экспортировать данные в XLS. Менеджер должен снимать отчет еженедельно, т.к. база данных затирается в течении нескольких недель (т.е. снять отчет за два месяца или за год просто невозможно). В архиве файл Productivity_Raw.xls, который и представляет собой экспорт из базы данных, с произовдительностью за неделю. Назначение цифр по большому счету не существенно и частично проясняется из второго файла (Productivity_Macro.xls). Отмечу, что в первом столбце в оригинальном исходном файле не цифры, а фамилии работников. Просто менеджер заменила имена цифрами из соображений конфиденциальности. Промежуточные данные (еженедельные) В принципе, привести данные в божеский вид несложно. Я записал макрос, который это делает (именно записал, т.к. VB для меня темный лес). Он встроен во второй файл Productivity_Macro.xls (CTRL+SHIFT+P). В таком виде данные уже можно вывесить на всеобщее обозрение, ИМХО. Кстати, вместо фамилий в первом столбце так и останутся цифры, разве что их отсортируют по возрастанию, чтобы было не вычислить кто под каким номером скрывается. Также, столбец G (Hours) я скрыл, т.к. он не нужен на всеобщем обозрении, но может понадобится для будущих вычислений. Кумулятивная годовая таблица Вот на основе таких еженедельных отчетов и нужно создать кумулятивную годовую таблицу. Нужно чтобы она автоматически обновлялась по мере добавления новой информации (т.е. еженедельно). Она должна содержать точно такие же столбцы как таблица в файле Productivity_Macro.xls, просто данные в ней будут накопительные за год. Какие у меня есть идеи Честно говоря, ничего изящного я пока не придумал. Конечно, можно создать 52 одинаковых листа (по одному на каждую неделю), вносить в них еженедельно данные, а в 53ем листе сделать кумулятивную таблицу. Создать 52 листа несложно, но я не очень хорошо представляю, как сделать формулу, которая просуммирует все данные. Т.е. я знаю как ее создать вручную для одной ячейки и как скопировать в остальные, но кликать по 52 листам мне не очень хочется Возможно, у кого-нибудь найдется более изящное решение. Дополнительная информация Таблица должна работать с минимальным вмешательством пользователя, т.к. менеджер весьма слабо представляет возможности Excel. Пример: она не знала о возможности экспорта из проприетарной программы в Excel и на протяжении нескольких лет (!) вбивала данные в Excel руками, а затем вывешивала на всеобщее обозрение. Предполагаю также, что она суммировала годовые значения на калькуляторе. Предположение основано на том, что данные она вбивала по четыре числа в столбик, разделяя числа пробелами. Я-то думал, что это экспорт в таком виде происходит В общем, автоматизация сохранит ей несколько рабочих дней в году, если не целый месяц В течение года возможны увольнения или добавления сотрудников. В принципе, я планирую сделать таблицу с небольшим запасом, что впрочем видно по кол-ву строчек. Чтобы не отображалась ошибка деления на ноль используется =IF(D5=0, "",C5/D5) Остальные детали изложу по требованию. Буду признателен за любые советы. Спасибо за внимание. |
------- Отправлено: 06:35, 27-09-2004 | #187 |
Бывший модер Сообщения: 1979
|
Профиль | Отправить PM | Цитировать Цитата:
Цитата:
Набросаю схему. В принципе, такие вещи на Excel делаются (делал сам нечто подобное годочков 6 назад, только не по неделям, а по месяцам). 1) Надо будет еще создать нечто вроде ryba.xls - "недельного" файла, только пустого. Затем сделать его 52 копии, потом простым копированием и автозаменой 52 листа, данные в которых будут ссылаться через связи на файлы data00.xls-data52.xls. После этого, если сделать все аккуратно, останется только вовремя заменять соответствующий dataXX на результаты нужной недели, и открывать итоговый файл - через связи данные в нем будут обновляться и суммироваться автоматом. Проблему я вижу пока что только одну - что делать, если меняеся список сотрудников? |
||
------- Отправлено: 09:49, 27-09-2004 | #188 |
(*.*) Сообщения: 36544
|
Профиль | Сайт | Отправить PM | Цитировать ShaRP
Цитата:
Цитата:
Цитата:
|
|||
------- Отправлено: 12:35, 27-09-2004 | #189 |
Человек Сообщения: 3313
|
Профиль | Отправить PM | Цитировать Vadikan
Как это вижу я: 1) Все экспортированные еженедельные данные лежат каждый в своем файле. 2) Кумулятивная таблица лежит в отдельном файле, где на первом листе сама таблица, а на втором - т.н. "защита от дурака" на случай, чтоб кто-нить не проссумировал одну и туже неделю несколько раз (об этом ниже, но можно и совсем без этого, просто опыт показывает, что будь ты хоть кем, но рано или поздно ошибки случаются). 3) Наш макрос делает следующее: 3.1)Открывает окно "открыть файл". Там пользователь выбирает файл с неделбным отчетом, который надо приплюсовать к годовой таблице. 3.2)Макрос находит первую строку с самими данными (если форма отчетов будет постоянной, то достаточно один раз ее определить и жестко забить в сам макрос, напр. в твоем примере это - 3). 3.3) Макрос берет из первой строчки индекс человека и ищет его куммулятивной таблице. 3.4а) В случае нахождения индекса он обновляет содержимое соответствующих ячеек прибавляя к ним данные из недельного отчета. 3.4б) Если индекс не находиться (в качестве флага конца таблици можно использовать достижение пустой ячейки в столбще индексов), то данные из недельного отчета записываются следующей строкой после последней на данный момент в кумулятивной таблице * * Все. В данном виде должно работать как и при первом заполнении таблици так и при еженедельном суммировании, в том числе и при изменениях в составе персонала. * * Теперь про защиту от дурака. Думаю будет не очень весело, если где-нить в конце года случайно вместо новой недели приплюсуешь старую. На этот случай можно вести в отдельно листе список файлов, уже внесенных в таблицу. Тогда при попытке добавить очередной отчет макром еще должен проверять наличие имени файла в данном списке с выдачей предупреждения в случае нахождения соответствия. Если же все-же надо повторно приплюсовать некий файл (например после ручных правок или дополнительного макроса, делающего откат на для конкретного недельного отчета) достаточно просто удалить его имя из списка. * * * Это довольно подробный алгоритм. Непосредственно с кодом не могу щас помочь - зашиваюсь, но любой кто хоть немного знаком с VBA и/или умеет пользоваться хелпом по нему может накидать его тебе... |
------- Отправлено: 16:59, 27-09-2004 | #190 |
Участник сейчас на форуме | Участник вне форума | Автор темы | Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
2003/XP/2000 - [архив] Microsoft Excel 2003 и более ранние версии | bobm | Microsoft Office (Word, Excel, Outlook и т.д.) | 541 | 25-01-2010 10:45 | |
2007 - [архив] Microsoft Excel 2007 | graverman | Microsoft Office (Word, Excel, Outlook и т.д.) | 100 | 12-12-2009 10:18 | |
2007 - Microsoft Excel - общие вопросы | shaint | Microsoft Office (Word, Excel, Outlook и т.д.) | 27 | 07-09-2009 16:17 | |
Разное - [архив] Microsoft Office | Microsoft Office (Word, Excel, Outlook и т.д.) | 327 | 08-11-2007 23:21 | ||
Разное - [архив] Microsoft Outlook | Bugs | Microsoft Office (Word, Excel, Outlook и т.д.) | 294 | 19-07-2007 21:50 |
|