Выбрать дату в календареВыбрать дату в календаре

Страницы: 1 2 3 4 5 6 7 8 След.
Впр. отобразить если совпадает
 

Имеется:

   - таблица **Таблица35** расположенная на  **Лист1**;

   - таблица **Таблица3** расположенная на  **Лист2**.

Как сделать:

   -  если значение `**Таблица35.Значения** = **Таблица3.Значения**`,

   -  то  `**Таблица35.Сортировка** = **Таблица3.Сортировка**`

     

Примечание.

**Таблица3**

Левый верхний угол таблицы находится в ячейке `D6`

| Сортировка | Значения  |

| ---------- | --------- |

| 1          | Значение1 |

| 2          | Значение2 |

| 3          | Значение3 |

**Таблица35**

Левый верхний угол таблицы находится в ячейке `D6`

| Сортировка | Значения  |

| ---------- | --------- |

|           | Значение1 |

|           | Значение2 |

|           | Значение3 |

Изменено: excel_pl - 08.01.2025 15:44:49
Вводимое значение даты отображается числом, Вводимое значение даты отображается числом
 
Цитата
написал:
CTRL+знак ударения (`)
Цитата
написал:
АExcel > Формулы > отжать Показать формулы (клавиатурное сокращение см. выше)
А чего ширина столбцов пр нажатии меняется?
Это нормально?

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

Картинка см. прикреп. (дополнительно ссылка https://ibb.co/mHVVWsv)  
Изменено: excel_pl - 30.09.2024 19:43:14
ListObjects подключить событи SelectionChange
 
Цитата
написал:
Цель достигнута?
Достигнута.
Спасибо.
ListObjects подключить событи SelectionChange
 
А почему "Sub Table4_SelectionChange(ByVal Target As Range)" не используется?
Не практикуется?
Есть недостатки?
ListObjects подключить событи SelectionChange
 

Как в ListObjects подключить событие SelectionChange?
Цель: отобразить в ячейке выбранный текст в ListObjects.

Код
Private Sub Worksheet_Activate()
    Dim ws As Worksheet
    Set ws = ActiveSheet
    Set lo = ws.ListObjects("Table4") '
    
    ' AddHandler lo, "SelectionChange", AddressOf Table4_SelectionChange
       
End Sub

Sub Table4_SelectionChange(ByVal Target As Range)
    MsgBox "The selection in the list object has changed."
End Sub

ДатаВремя хранить в одном поле DateTime или в разных Date, Time?
 
Цитата
написал:
excel_pl , не понял вопроса. Это имена и типы полей для данных
Где их прописывать в таком виде?
Это VBA?
Или вы условно привели это?
Изменено: excel_pl - 22.03.2024 11:40:18
ДатаВремя хранить в одном поле DateTime или в разных Date, Time?
 
Цитата
написал:
По PQ не скажу, но я бы хранил так: DateUTC As Long, TimeUTC As Double, OffsetUTC As Long
А
 - DateUTC As Long;
 - TimeUTC As Double;
 - OffsetUTC As Long.
это откуда?
ДатаВремя хранить в одном поле DateTime или в разных Date, Time?
 

Цель: подключить CSV файл к Excel и проанализировать его.

Пример анализа DateTime:
1. Группировки;
2. Сортировки;
3. Фильтры;
4. Построение графиков;
5. Вычисления DateTime. (предположително)

1. ДатаВремя хранить

       - Вар-1. в одном поле: DateTime
или
- Вар-2. в разных полях: Date, Time, Миллисекунды, часовой пояс?

Или применять Вар-1 и Вар-2 в зависимости от обстоятельств и допускается оба варианта?
Чтобы можно было подключить CSV в Excel без дополнительных настроек?
Или с минимальными настройками: например изменить в Excel формат поля таблицы.
Ну или в PowerQuery что-нибудь "подкрутить" по мелочи.

Т.е. чтобы данные прошли путь CSV -> PowerQuery -> Excel.

Под максимальный DateTime я понимаю : yyyy-MM-dd HH:mm:ss.MS +zone
Пример: 2024-03-19 13:18:31.395 +03:00.

2. Для примера я сделал несколько столбцов с различными вариантами представления DateTime.

Рассмотрел несколько вариантов столбцов:
- Column1: 2024-03-21 15:24:36,897 +03:00 - ДатаВремя,Миллисекунды +зона;
- Column2: 2024-03-21 15:24:36,897 - миллисекунды отделены ",";
- Column3: 2024-03-21 15:24:36.897 - миллисекунды отделены ".";
- Column4: 2024-03-21 15:24:36 - ДатаВремя;
- Column5: 2024-03-21  - Дата;
- Column6: 15:24:36 - Время;
- Column7: 897  - милимсекунды;
- Column8: +03:00 - зона.



3. Мои опасения.
3.1 Если использовать Column1(или Column2).
PowerQuery распознал тип поля как Текст.

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

3.2
Если использовать Column3.
В Column3 не отображаются милисекунды и часовй пояс.

Тогда Column3 нужно использовать вместе с полями Column7(миллисекунды), Column8(часовой пояс).

CSV

Код
                         Coll1 |                   Coll2 |                   Coll3 |               Coll4 |      Coll5 |    Coll6 |Coll7|  Coll8 |Coll9| Coll10 
2024-03-21 15:24:36,897 +03:00 | 2024-03-21 15:24:36,897 | 2024-03-21 15:24:36.897 | 2024-03-21 15:24:36 | 2024-03-21 | 15:24:36 | 897 | +03:00 | INF | Messaeg-i - 0
2024-03-21 15:24:38,192 +03:00 | 2024-03-21 15:24:38,192 | 2024-03-21 15:24:38.192 | 2024-03-21 15:24:38 | 2024-03-21 | 15:24:38 | 192 | +03:00 | INF | Messaeg-i - 1
2024-03-21 15:24:39,490 +03:00 | 2024-03-21 15:24:39,490 | 2024-03-21 15:24:39.490 | 2024-03-21 15:24:39 | 2024-03-21 | 15:24:39 | 490 | +03:00 | INF | Messaeg-i - 2
2024-03-21 15:24:40,821 +03:00 | 2024-03-21 15:24:40,821 | 2024-03-21 15:24:40.821 | 2024-03-21 15:24:40 | 2024-03-21 | 15:24:40 | 821 | +03:00 | INF | Messaeg-i - 3
2024-03-21 15:24:40,949 +03:00 | 2024-03-21 15:24:40,949 | 2024-03-21 15:24:40.949 | 2024-03-21 15:24:40 | 2024-03-21 | 15:24:40 | 949 | +03:00 | INF | Messaeg-i - 4

PowerQuery
В редакторе изображение нормально отображается. При просмотре плохо. Поэтому прилагаю ссылку на и изображение.
ссылка на изображение https://i.ibb.co/zxTKwQr/118332915257742.png




Excel
В редакторе изображение нормально отображается. При просмотре плохо. Поэтому прилагаю ссылку на и изображение.
Ссылка на изображение https://i.ibb.co/V3CHQvC/552662915259037.png







Код
let
    Источник = Csv.Document(File.Contents("E:\Projects\39\01_pr\01\2024-03-21_15-24-36.csv"),
                    [Delimiter="|", 
                    Columns=10, 
                    Encoding=1251]),
    #"Измененный тип" = Table.TransformColumnTypes(Источник,
                    {
                        {"Column1", type text}, 
                        {"Column2", type text}, 
                        {"Column3", type datetime}, 
                        {"Column4", type datetime}, 
                        {"Column5", type date}, 
                        {"Column6", type time}, 
                        {"Column7", Int64.Type}, 
                        {"Column8", type text}, 
                        {"Column9", type text}, 
                        {"Column10", type text}
                    }
                    )
in
    #"Измененный тип"
Как сделать чтобы формат датаВремя в запросе соответствовал подключённому csv файлу?, Как сделать чтобы формат датаВремя в запросе соответствовал подключённому csv файлу?
 
Цитата
написал:
Если не нужна инфо в каком часовом поясе получено это время и дата, то убирайте. Но если данные к вам приходят из разных часовых поясов, а вы хотите анализировать события, а в CSV - время местное, то... Думайте сами. Почитайте  вот это  для старта. Особенно часть про "Как Excel на самом деле хранит и обрабатывает даты и время". Про типы данных в PQ и не говорю пока...
Ссылка не работает.
Не могли бы продублировать..

Спасибо..
Как сделать чтобы формат датаВремя в запросе соответствовал подключённому csv файлу?, Как сделать чтобы формат датаВремя в запросе соответствовал подключённому csv файлу?
 
Цитата
написал:
Формат выставляете в XLS: Ctrl-1 (или ПКМ - формат ячеек)(все форматы)в Тип копируете: ГГГГ-ММ-ДД чч:мм:сс,000Запятая перед миллисекундами - это ваш разделитель десятичной части чисел.У меня, например - точка.
Можно конечно...
Недостаток: предполагается подключать разные файлы csv и такой способ решения приведёт к  необходимости настраивать для каждого раза форматирование в таблице.

Делать кнопку для автоматической настройки?
Или можно как-то по другому?
Или всё таки лучше чтобы в запросе настраивалось форматирование?

Результат


Как сделать чтобы формат датаВремя в запросе соответствовал подключённому csv файлу?, Как сделать чтобы формат датаВремя в запросе соответствовал подключённому csv файлу?
 
Цитата
написал:
Как я понял, TZ можно вручную только вести, а вот формат ячейки задать можно (запятая - это десятичный разделитель в вашем Excel):ГГГГ-ММ-ДД чч:мм:сс,000
Если вопрос поставить по другому: какой формат даты должен быть в csv чтобы отобразить дату "2024-03-19 13:18:31.395"?

В идеале хотелось бы в Excel таблице получить "2024-03-19 13:18:31.395 +03:00".
Но не принципиально. Можно и без "+03:00", а только "2024-03-19 13:18:31.395"
Какие разделители между датой время - не принципиально...

Конечная цель: чтобы потом можно было как-то анализировать датуВремя: диаграммы какие-нибудь построить, сгруппировать по периоду...
Как сделать чтобы формат датаВремя в запросе соответствовал подключённому csv файлу?, Как сделать чтобы формат датаВремя в запросе соответствовал подключённому csv файлу?
 
Цитата
написал:
Тогда уберите последний шаг с преобразованием типов. Но тогда в Excel попадет текст. Так устроит?
В идеале хотелось бы в Excel таблице получить "2024-03-19 13:18:31.395 +03:00".
Но не принципиально. Можно и без "+03:00", а только "2024-03-19 13:18:31.395"

А в целом, честно говоря, даже не знаю как лучше...
Конечная цель: чтобы потом можно было как-то анализзировать датуВремя: диаграммы какие-нибудь построить, сгруппировать по периоду...
А с чём столкнусь в будущем не знаю...
Может у вас есть опыт...

Может лучше рассмотреть разбить на отдельные столбцы:
дата - "2024-03-19";
время - "13:18:31.395";

Или лучше хранить в одном?
Что посоветуете?
Спасибо.
Как сделать чтобы формат датаВремя в запросе соответствовал подключённому csv файлу?, Как сделать чтобы формат датаВремя в запросе соответствовал подключённому csv файлу?
 
Цитата
написал:
если расскажете что вы хотите получить на выходе. Из исходного сообщения это не ясно совсем. Новые колонки? Какие? Или преобразовать существующую с datetimezone? Во что?
Как сделать чтобы формат датаВремя в Excel таблице соответствовал подключённому csv файлу?

Сейчас.

Csv
DateTime|Level|Message
2024-03-19 13:18:31.395 +03:00 | INF | Start === === === ===

Excel
DateTime Level Message
19.03.2024 13:18 INF Start === === === ===


Мне удалось ответить на ваш вопрос?

Сейчас я получаю такое

Как сделать чтобы формат датаВремя в запросе соответствовал подключённому csv файлу?, Как сделать чтобы формат датаВремя в запросе соответствовал подключённому csv файлу?
 
Цитата
написал:
excel_pl , ваш запрос прекрасно справился с преобразованием типа в type datetimezone. Отсюда можете получить datetime (DateTime.From), только date (Date.From), только time (Time.From). Или даже все на свете в виде записи со многими полями (DateTimeZone.ToRecord). Даже если просто выгрузить таблицу на лист, то в ячейке вы получите просто дату + время.
Не могли бы вы подробнее описать как исправить запрос...
Код
= Table.TransformColumnTypes(#"Повышенные заголовки",
        {
            {"DateTime", type datetimezone}, 
            {"Level", type text}, 
            {"Message", type text}
        }
)
```

```shell
let
    Источник = Csv.Document(File.Contents("e:\Projects\fl\Log-11224-2024-03-19_1320240319.csv"),[Delimiter="|", Columns=3, Encoding=1251, QuoteStyle=QuoteStyle.None]),
    #"Повышенные заголовки" = Table.PromoteHeaders(
                            Источник, 
                            [PromoteAllScalars=true]),
    #"Измененный тип" 
                        = Table.TransformColumnTypes(
                            #"Повышенные заголовки",
                            {
                                {"DateTime", type datetimezone}, 
                                {"Level", type text}, 
                                {"Message", type text}})
in
    #"Измененный тип"

Как сделать чтобы формат датаВремя в запросе соответствовал подключённому csv файлу?, Как сделать чтобы формат датаВремя в запросе соответствовал подключённому csv файлу?
 
Цитата
написал:
В Power Query1 способ: разделить столбцы по пробелу;2. Извлечь символы перед разделителем " +".
Не понимаю...
Открыл ваш файл.. Всё по прежнему...
Или я что-то не так делаю?
Как сделать чтобы формат датаВремя в запросе соответствовал подключённому csv файлу?, Как сделать чтобы формат датаВремя в запросе соответствовал подключённому csv файлу?
 

Как сделать чтобы формат датаВремя в запросе соответствовал подключённому csv файлу?
С помощью настроек  или VBA.

Сейчас.
Csv
DateTime|Level|Message
2024-03-19 13:18:31.395 +03:00 | INF | Start === === === ===

Excel
DateTime Level Message
19.03.2024 13:18 INF Start === === === ===

Ожидание
Csv
DateTime|Level|Message
2024-03-19 13:18:31.395 +03:00 | INF | Start === === === ===

Excel
DateTime Level Message
2024-03-19 13:18:31.395 +03:00 INF Start === === === ===

--------

Предполагается к Excel подключать разные файлы "*.csv".
Не хотелось бы каждый раз настраивать дату.

Если для Excel "2024-03-19 13:18:31.395 +03:00" такой формат не совсем удобен, то какой лучше?

Пример.
1. Сделать чтобы в "*.csv" была датаВремя по отдельным столбцам - |2024-03-19 | 13:18:31.395 | +03:00
2. Отказаться от "+03:00"

Другие рекомендации.

Изменено: excel_pl - 19.03.2024 17:56:21
Вместо секунд отображается - сс, Вместо секунд отображается - сс
 
Цитата
написал:
cc - у вас не эсэс, а цэцэ, ну или сиси
🤦‍♂️ :)  
Изменено: excel_pl - 03.12.2023 22:17:21
Вместо секунд отображается - сс, Вместо секунд отображается - сс
 
Вместо секунд отображается - сс.
Формат - ДД.ММ.ГГГГ чч:мм:cc
Изменено: excel_pl - 03.12.2023 21:39:01
Как седлать SQL запрос из двух таблиц?
 
Цитата
написал:
excel_pl , "седлайте" его там, где вы сделали  кросс
Нашёл файл в котором создан запрос...
Я не помню как это сделал...

Там сделано:
 - один запрос;
 - в строке подключения нужно указывать путь к файлу;
 - sql запрос можно редактировать.

Моя цель:
  - чтобы в строке подключения не прописывать путь к файлу, а использовались таблицы текущего файла;
  - сделать несколько запросов;
  - каждый отдельный запрос отображать на нескольких вкладках.

Я не могу понять:
 - как создать запрос чтобы можно было редактировать строку подключения и запрос.
Изменено: excel_pl - 05.11.2023 15:56:11
Как седлать SQL запрос из двух таблиц?
 
Цитата
написал:
А зачем Вы вообще SQL-запрос в Excel проверяете?Получить данные для Excel из БД - ок. И при подключении к БД вы в PQ можете написать SQL-запрос.Но нафига SQL запрос для вычисления внутри Excel? Почему именно SQL-запрос, почему не код на Python/PhP/С? Ну как бы обратный вопрос - почему в работе с БД нельзя формулами Excel что-то написать?В PQ Вы можете сделать то же самое, но уже не на диалекте SQL, а кодом на M.Правда, тут огромный плюс - все, что Вам необходимо, можно сделать кнопками и PQ сам сгенерирует для Вас код.
Хочу при необходимости, по быстрому, на коленке  накидать таблицы,  данные и протестировать минимальные SQL запросы.

Не связываясь с БД, Python/PhP/С, формулами...

Как в Excel или PQ вставить запрос SQL?

Пробую через окно(см. картинку), а оно перебрасывает в PQ...
Куда в PQ вставить запрос, не понимаю...
Как седлать SQL запрос из двух таблиц?
 
Типа такого запроса
Код
SELECT C.id AS "Course.id", S.id AS "Student.id", S.Name AS "Student.Name"
FROM Course C, Student S
WHERE NOT EXISTS (
  SELECT *
  FROM CoursesStudent CS
  WHERE CS.CourseId = C.id AND CS.StudentId = S.id
)
Как седлать SQL запрос из двух таблиц?
 
Как седлать SQL запрос из двух таблиц?
Т.е. у меня есть SQL запрос.
Я хочу его проверить.
Просто вставить и чтоб он отработал.
Exel переключает в PQ.
А где он там вставляется не понятно...
 
Power Query. Слияние. Кнопка "ok" неактивна, Power Query. Слияние. Кнопка "ok" неактивна
 
Пробую повторить пример: "Поиск совпадений в двух списках".
https://www.planetaexcel.ru/techniques/14/3304/

На шаге, цитата:
"на вкладке Данные или на вкладке Power Query находим команду Получить данные - Объединить запросы - Объединить (Get Data - Merge Queries - Merge):"
и далее по тексту....
У меня не активна кнопка "ок"

Вопрос: Что я делаю не так?
Изменено: excel_pl - 16.01.2023 23:22:04
Как проанализировать срабатывание камеры?
 
Вопросы.
1. как совместить дни(часы, минуты) когда фотоловушка срабатывает с днями(часы, минуты) когда ловушка не работает?
Т.е. я получаю данные года ловушка срабатывает.
Для полного анализа срабатывания нужны дни когда фотоловушка не срабатывает.
Т.е. в резуkьтате должна получить таблица в которой будут данные: срабатывания + несрабатывания.
2. Может есть в общем готовые решения для таких задач?

Описание.
Получаю данные по срабатыванию фотоловушки в формате:
- Имя;
- Размер;
- ДатаВремя_создания.
Данные будут поступать периодически не предсказуемо: раз в неделю, раз в месяц, раз в квартал.

Минимальные ожидания.
Логика:
- в файле "ФотоЛовушкаГлав.xlsx" вставил на лист данные `Имя`, `Размер`, `ДатаВремя_создания`(Или экспортировать);
- в файле "ФотоЛовушкаГлав.xlsx" нажал кнопку Excel: данные перенеслись на лист с полным календарём;
- автоматически построились графики;


Главная цель получить полный календарь за год (или за меньшие периоды).
Где будут содержаться данные с днями когда ловушка срабатывает и когда ловушка не срабатывает.
Каждый день должен детализирован до минуты.
По возможности, чтобы можно было проанализировать сразу несколько дней.

Максимальные ожидания.
Ожидаемая логика:
- Открыл файл ФотоЛовушкаГлав.xlsx;
- В файле ФотоЛовушкаГлав.xlsx прописал путь к папке с файлами;
- в файле "ФотоЛовушкаГлав.xlsx" нажал кнопку Excel: данные перенеслись на лист с полным календарём;
- автоматически построился график;



Примечание.
Признаюсь сразу: не знаю, что хочу....
Хочу хоть как-то проанализировать принцип срабатывания фотоловушки...
Навксидку, наверное, было бы неплохо построить график:
 - количество срабатываний:
- в месяц;
- в день;
- в час;
- в минуту;

 - размер файлов генерируемых фотоловушкой:
  - в месяц;
- в день;
- в час;
- в минуту;

Буду признателен за любый полные или частичные решения, предложения, рекомендации...

Картинка-1




Картинка-2
Как удалить пустые переносы строк до и после текста?
 
Как удалить пустые переносы строк до и после текста во всём диапазоне?

Изменено: excel_pl - 17.06.2022 08:27:53
Как распределить текст по столбцам?
 
Цитата
написал:
Код
    [URL=#]?[/URL]       1  2  3  4  5  6  7  8  9      часть формул    Организация:    =ФИЛЬТР.XML(  "<j><i>"  &ПОДСТАВИТЬ([@Удалить];СИМВОЛ(10);  "</i><i>"  )&  "</i></j>"  ;  "//i[1]"  )    Город:    =ФИЛЬТР.XML(  "<j><i>"  &ПОДСТАВИТЬ(ПОДСТАВИТЬ([@Удалить];  ","  ;СИМВОЛ(10));СИМВОЛ(10);  "</i><i>"  )&  "</i></j>"  ;  "//i[2]"  )    Адрес:    =ПСТР(ФИЛЬТР.XML(  "<j><i>"  &ПОДСТАВИТЬ([@Удалить];СИМВОЛ(10);  "</i><i>"  )&  "</i></j>"  ;  "//i[2]"  );ПОИСК(  ","  ;ФИЛЬТР.XML(  "<j><i>"  &ПОДСТАВИТЬ([@Удалить];СИМВОЛ(10);  "</i><i>"  )&  "</i></j>"  ;  "//i[2]"  );1)+2;1000)    Телефон:    =ФИЛЬТР.XML(  "<j><i>"  &ПОДСТАВИТЬ([@Удалить];СИМВОЛ(10);  "</i><i>"  )&  "</i></j>"  ;  "//i[number()=.]"  )   
 

Поле "График" пустое.
С полем "График" ничего сделать нельзя?
Изменено: excel_pl - 16.06.2022 20:13:02
Как распределить текст по столбцам?
 
С помощью VBA или другими способами...


На вскидку я так понимаю, что нужно выполнить следующую логику:
1. Получить текст ячейки;
2. Результат:
ЧУП «Мобильный город»
Вороново, ул. Литовчика, 43

Пн: выходной
Вт - Пт: 9:30 - 16:30
Сб: 9:30 - 13:30
Вс: выходной
375296435132
3. Логика распределения строк текста:
  п.1 Первую строку перенести в поле "Организация";
  п.2 Вторую строку разделить по первой запятой ",";
  п.3 Вторую строку первое слово перенести в поле "Город";
  п.4 Вторую строку остальную часть перенести в поле "Адрес";
  п.5 Последню строку перенести в поле "Телефон";
  п.6 Оставшийся текст перенести в поле "График";
 
Вопрос.
 Правильно ли я понимаю логику ?
Буду признателен если кто подскажет фрагменты кода по каждому(или по отдельным) пункту или всё решение...
Изменено: excel_pl - 16.06.2022 19:28:36
Разнести текст по ячейкам по первому пробелу, Разнести текст по ячейкам по первому пробелу
 
Цитата
написал:
А если читать внимательнее?
Не понимаю...
Мне кажется я неточно изложил вопрос.
Если, что под "произвольный текст" я понимаю следующее:
0:00 Подставляет значение аргумента
0:03 "нов_текст" вместо значения
0:05 аргумента "стар_текст"
0:08 в текстовой строке.
0:10 Функция ПОДСТАВИТЬ используется,
0:20 когда нужно заменить определенный текст в текстовой строке;
и т.д.
Разнести текст по ячейкам по первому пробелу, Разнести текст по ячейкам по первому пробелу
 
Не понимаю...

У меня сейчас текст находится в столбце С Столбец С = 00:00 произвольный текст
Мне нужно (условно говоря)
Столбец E = 00:00
Столбец F = произвольный текст

Дополнение
Значение таймера:
 первым числом может иметь трёхзначное число.
 Типа так - 326:00.

Цитата
написал: Данные - > Текст по столбцам
Как? Данные - > Текст по столбцам - > Символ разделителя - > пробел?

Цитата
написал: Чтобы совсем уж надежно (вдруг длина строки 200 символов?)=ПОДСТАВИТЬ(C4;F4&" ";) (в F4 левая часть)
Не понимаю как это работает...
Страницы: 1 2 3 4 5 6 7 8 След.
Наверх