|
Внимание, важное сообщение: Дорогие Друзья!
В ноябре далекого 2001 года мы решили создать сайт и форум, которые смогут помочь как начинающим, так и продвинутым пользователям разобраться в операционных системах. В 2004-2006г наш проект был одним из самых крупных ИТ ресурсов в рунете, на пике нас посещало более 300 000 человек в день! Наша документация по службам Windows и автоматической установке помогла огромному количеству пользователей и сисадминов. Мы с уверенностью можем сказать, что внесли большой вклад в развитие ИТ сообщества рунета. Но... время меняются, приоритеты тоже. И, к сожалению, пришло время сказать До встречи! После долгих дискуссий было принято решение закрыть наш проект. 1 августа форум переводится в режим Только чтение, а в начале сентября мы переведем рубильник в положение Выключен Огромное спасибо за эти 24 года, это было незабываемое приключение. Сказать спасибо и поделиться своей историей можно в данной теме. С уважением, ваш призрачный админ, BigMac... |
|
| Компьютерный форум OSzone.net » Сфера Microsoft » Microsoft Office (Word, Excel, Outlook и т.д.) » Разное - [решено] Excel: создать одномерный график/таблицу посещений по заданным данным |
|
|
Разное - [решено] Excel: создать одномерный график/таблицу посещений по заданным данным
|
|
Новый участник Сообщения: 6 |
Есть генерируемый текстовый файл вида
Иванов 01.09 02.09 03.09 Петров 03.09 04.09 05.09 Сидоров 02.09 03.09 06.09 Чем в Экселе из него сделать график с засечками на единой временнОй оси Или табличку: Поиск по "одномерный график" путного не дал, поиск по "создать график посещений" выдаёт как красиво оформить такую табличку вручную, а интересует именно сама процедура генерации из файла. |
|
|
Отправлено: 00:06, 13-09-2021 |
|
Динохромный Сообщения: 712
|
Профиль | Отправить PM | Цитировать
Цитата afj:
Цитата afj:
Содержимое файла можно скопировать "ручками" и просто вставить в первый столбец таблицы. чтобы каждый раз не менять месяц - номер месяца меняется в А1. Все остальное - формулами. Если необходимо получить более автоматизированное решение - приложите пример реальных файлов. |
||||||
|
------- Отправлено: 10:20, 13-09-2021 | #2 |
|||||||
|
Новый участник Сообщения: 6
|
Профиль | Отправить PM | Цитировать
Так понимаю, простого решения нет, встроенными графиками визуализировать не получится, только ручками
![]() Имена (точнее идентификаторы на их основе) на более раннем этапе используются как имя файла, так что дубликатов имён нет. А вот дубликаты дат (более одной отметки в день на человека) быть могут. Про помесячность сказано ничего не было, диапазон дат может быть любым, и лимиты единой временнОй оси хорошо бы рассчитывались динамически от входных данных. Кусок реального файла (там ещё и время, но это настраиваемо, для данной визуализации время не нужно, достаточно даты): |
||||
|
Последний раз редактировалось afj, 13-09-2021 в 13:24. Отправлено: 13:07, 13-09-2021 | #3 |
|||||
|
Динохромный Сообщения: 712
|
Профиль | Отправить PM | Цитировать
Цитата afj:
Цитата afj:
Цитата afj:
Цитата afj:
|
||||||||
|
------- Отправлено: 15:07, 13-09-2021 | #4 |
|||||||||
|
Новый участник Сообщения: 6
|
Профиль | Отправить PM | Цитировать
Если визуализировать одномерным графиком, то по моему это должно выглядеть примерно так:
Расположить всех по единой временной линии, и засечки на посещениях. ЗЫ Изначально формулировка была краткой и общей в расчёте на ответ вида "Это типовая задача, в экселе давным-давно есть начиная с версии ххх, волшебная кнопка вооот здесь, жамкай и она всё сама сделает". (Уж в построении графиков Эксель дока) А также в расчёте на то, что это _нашим_ данным придётся подстраиваться под существующую встроенную функцию. Если же пилить вручную, понятно что ТЗ необходимо уточнять. |
|||||
|
Последний раз редактировалось afj, 13-09-2021 в 16:28. Отправлено: 15:56, 13-09-2021 | #5 |
||||||
|
Динохромный Сообщения: 712
|
Профиль | Отправить PM | Цитировать
afj, посмотрите файл в псевдографике - результат такой должен быть примерно? Понятно, что в реальной таблице могут быть еще какие-то ограничения, поэтому и уточняю.
|
||||
|
------- Отправлено: 16:15, 13-09-2021 | #6 |
|||||
|
Новый участник Сообщения: 6
|
Профиль | Отправить PM | Цитировать Графический график возможно воспринимался бы иначе, но псевдографикой - много визуального шума, иксами/плюсами воспринималось лучше.
Авторасчёт лимитов шкалы времени возможен? |
|
Последний раз редактировалось afj, 13-09-2021 в 17:47. Отправлено: 17:19, 13-09-2021 | #7 |
|
fascinating rhythm Сообщения: 6705
|
Профиль | Отправить PM | Цитировать
Powershell
$folder = "D:\temp\visit"
$sourceTxt = "$folder\visit-data.txt"
$mark = "+" # метка визита в файлах
$csv = (gc "$sourceTxt") -match "\.bmp" -replace "\.bmp= ",";" -replace ",\d+:\d+:\d+" |ConvertFrom-Csv -Header name,dates -Delimiter ';'
$dates = $csv.dates -split ' ' |sort {$_ -as [datetime]} -Unique
$startDate = $dates[0] -as [datetime]
$day = $startDate
$finishDate = $dates[-1] -as [datetime]
$datesRange = do {$day; $day = $day.adddays(1)} until ($day -gt $finishDate)
$datesRangeString = "$($startDate.ToShortDateString())-$($finishDate.ToShortDateString())"
$reportCsv = "$folder\report $datesRangeString.csv"
"Name;" + ($datesRange.toshortdatestring() -join ';') > "$reportCsv"
$csv |% {
$_.name + ';' + ((diff $datesRange ($_.dates -split ' ' |sort -Unique |% {$_ -as [datetime]}) -IncludeEqual |sort Inputobject).sideindicator -replace '<=',';' -replace '==',"$mark;" -join '') >> "$reportCsv"
}
# Если установлен модуль ImportExcel (https://www.powershellgallery.com/packages/ImportExcel)
if (Get-Module ImportExcel -ListAvailable) {
$reportXlsx = $reportCsv -replace 'csv$','xlsx'
if (Test-Path "$reportXlsx") {rm "$reportXlsx"}
$condText = New-ConditionalText $mark green lightgreen
Import-Csv "$reportCsv" -Delimiter ';' |export-Excel -Path "$reportXlsx" -WorksheetName $datesRangeString -ConditionalText $condText -AutoSize -FreezeTopRow -AutoFilter -BoldTopRow
}
|
||||
|
------- Последний раз редактировалось DJ Mogarych, 22-09-2021 в 12:50. Отправлено: 12:24, 22-09-2021 | #8 |
|||||
|
|
Участник сейчас на форуме |
|
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
| Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
| VBA - Макрос создания документов Word по данным таблицы Excel | RusGor | Программирование и базы данных | 4 | 01-11-2023 11:17 | |
| 2016 - Как сгруппировать строки в Excel по данным столбцов (телефон, сайт, соц.сети), ВПР не | megagogo | Microsoft Office (Word, Excel, Outlook и т.д.) | 3 | 01-08-2021 17:52 | |
| Разное - Как в excel импортировать в одну таблицу 2 смежных xml файла? | Vandheer | Microsoft Office (Word, Excel, Outlook и т.д.) | 0 | 09-09-2016 13:53 | |
| 2003/XP/2000 - [решено] Excel: График из столбца с датами. | ven00m | Microsoft Office (Word, Excel, Outlook и т.д.) | 1 | 26-03-2012 03:07 | |
| 2010 - как построить график в эксель по формуле? | Pozia | Microsoft Office (Word, Excel, Outlook и т.д.) | 7 | 29-05-2011 14:29 | |
|