Я переформулирую свой вопрос (прежде всего извините и спасибо за поддержку).
У меня есть таблица «Horas trabajadores» со столбцом даты под названием «Fecha» (я пока не могу добавлять изображения, поэтому печатаю таким образом), где у меня нет всех дней месяца, если не несколько дней:
Fecha
01/03/2024
03/03/2024
05/03/2024
10/03/2024
31/03/2024
Я хотел бы создать новую таблицу под названием «NumberFromTo» со столбцом «WholeMonth», которая из месяца в столбце «Fecha» таблицы «Horas Trabajadores» генерирует все дни месяца до «WholeMonth», поэтому:
WholeMonth
01/03/2024
02/03/2024
03/03/2024
04/03/2024
05/03/2024
06/03/2024
07/03/2024
...one by one until the last day
31/03/2024
Надеюсь, это будет легче понять.
Извините, я хотел добавить небольшое изображение таблицы, чтобы было понятно, а не кода или чего-то еще.
это даст вам представление, попробуйте что-нибудь вроде этого:
let
startDate = #date(2013, 1, 1),
endDate = #date(2017, 10, 13),
dur = #duration(1, 0, 0, 0),
numberOfDays = Duration.Days(endDate - startDate),
datesList = List.Dates(startDate, numberOfDays + 1, dur ),
#"Converted to Table" = Table.FromList(datesList, Splitter.SplitByNothing(), null, null, ExtraValues.Error),
#"Changed Type" = Table.TransformColumnTypes(#"Converted to Table",{{"Column1", type date}})
in
#"Changed Type"
Немного сложно понять, чего именно вы хотите.
Но чтобы создать список дат, включающий каждую дату месяца, включающую myDate
, вы можете использовать:
monthDays = List.Dates(
myDate,
Duration.Days(Date.EndOfMonth(myDate)- Date.StartOfMonth(myDate)) +1,
#duration(1,0,0,0))
Если myDate
выпадает на март 2024 года, будет сгенерирован список всех дат в марте (формат MDY здесь):
Их можно преобразовать в имена столбцов таблицы с помощью функции Date.ToText
.
Редактировать:
*Изучая ваше последнее изменение, где Fecha
содержит несколько дат в одном и том же месяце, вы можете легко создать таблицу со всеми датами, просто, как я написал в своем комментарии, заменив myDate
в приведенном выше коде на единственное свидание #"Horas trabajadores"[Fecha]{0}
.
Таким образом, код для создания этой таблицы может быть таким:
let
Source = Excel.CurrentWorkbook(){[Name = "baseDates"]}[Content],
#"Horas trabajadores" = Table.TransformColumnTypes(Source,{{"Fecha", type date}}),
#"Todo el mes" = Table.FromColumns (
{List.Dates(
#"Horas trabajadores"[Fecha]{0},
Duration.Days(
Date.EndOfMonth(#"Horas trabajadores"[Fecha]{0})
- Date.StartOfMonth(#"Horas trabajadores"[Fecha]{0})) +1,
#duration(1,0,0,0))},
type table[#"Todo el mes" = date])
in
#"Todo el mes"
Что создает таблицу:
Привет! В таблице «Horas trabajadores» у меня есть столбец «Fecha», в котором нет всех дней месяца. Мне нужна новая таблица, которая: 1 - содержит месяц столбца «Феча» «Horas Trabajadores». 2- Из месяца в столбце «Феча» сгенерируйте все дни месяца. monthDays = List.Dates( #"HORAS TRABAJADORES"[Fecha], Duration.Days(Date.EndOfMonth(#"HORAS TRABAJADORES"[Fecha])- Date.StartOfMonth(#"HORAS TRABAJADORES"[Fecha])) +1, #duration(1,0,0,0))
Ошибка: значение «Дата» должно содержать компонент «Дата». Подробности: [Список]
@LuisMiguel Я до сих пор не знаю, что ты пытаешься сделать, поскольку ты еще не привел подходящего примера. Однако ваша конкретная формула не работает, потому что #"HORAS TRABAJADORES"[Fecha]
возвращает List
, а функции List.Dates
, Date.EndOfMonth
и Date.StartOfMonth
ищут Date
. Вы не можете заменить одну дату списком дат.
У нас есть таблица «Horas Trabajadores» со столбцом «Fecha» с несколькими днями уникального месяца (03.01.2024, 03.05.2024..). Вот месяц «03». Я хочу создать новую таблицу «NumberFromTo», которая берет месяц «Horas Trabajadores» (в данном случае «03») и генерирует все дни месяца. Это потому, что я вызываю столбец [Fecha] и получаю ошибку. Знаешь, как я могу это сделать?
@LuisMiguel Повторение того, что вы написали ранее, не делает это более понятным. Отредактируйте свой вопрос, предоставив образец таблицы в уценке, которую можно скопировать/вставить.
@LuisMiguel Возможно, вы сможете просто назвать одну дату из этого столбца.
Я отредактировал свое сообщение, спасибо за вашу поддержку и еще раз извините!
Большое спасибо! Когда вы представляете {0} на #"Horas trabajadores"[Fecha]{0}. Имеется в виду диапазон?
@LuisMiguel #"Horas trabajadores"[Fecha]
возвращает весь столбец в виде списка. {0}
возвращает первую запись в этом списке.
ок @Рон Ронсенфельд! Большое спасибо! Ценить!
«Я пока не могу добавлять изображения...» Это хорошо. НЕ следует публиковать изображения данных/кода/сообщений об ошибках и т. д. Гораздо лучше публиковать эту информацию в виде текста, который можно скопировать/вставить.