Страницы: 1
RSS
Qwery, работа с процентами
 
Добрый день. Интересует один момент с процентами в qwery. После загрузки данных, он отсекает десятичные значения если они не отображались в источнике (по факту они имеются) если же они отображаются то он их видит. Пс. пример во вложении.
Вопрос. Как сделать так, чтобы он для всех значений отображал десятичные цифры без изменений в источнике (много файлов).
Изменено: Reflection68 - 25.12.2021 11:22:21
 
Какая жесть. В качестве примера файл Word с засунутым туда скрином превью редактора PQ! :) Хоть бы код запроса заскринили что ли :)
Изменено: surkenny - 24.12.2021 15:22:21
 
Это первый шаг после получения данных из источника. Ни каких манипуляций выполнено не было. Какой код вас интересует? По возможности предоставлю.
Изменено: Reflection68 - 24.12.2021 16:25:15
 
Цитата
Reflection68 написал:
По возможности предоставлю.
Вы лучше бы пример сделали в файле(-ах) excel.
 
Прикладываю рабочий пример. Файл с данными и подключение (путь нужно будет сменить к файлу). На формат xlsb просьба не ругаться, все файлы в нем и изменить не возможно.
Проблему можно наблюдать в столбцах помеченных желтым цветом.
Если имеется решение просьба помочь.
 
PQ с xlsb вообще не очень хорошо работает. Замечал, что при загрузке из xlsb PQ сразу назначает формат без явного указания в коде.
У меня (excel 2019) грузится корректно (во вложении).

upd: грузится корректно, только пока источник открыт. После закрытия так же, как у Вас. Полагаю, что проблема именно в формате xlsb.
Изменено: surkenny - 25.12.2021 13:26:23
 
Работаю в эксель 365. И при подключении действительно он делает автоформат ячеек ( очень жаль не отдельным шагом) , что видимо приводит к такому результату. Файлов множество поэтому держать их все открытыми тоже не представляется возможным.
Проблема к сожалению еще остается, если у кого-то есть решение просьба помоч
Изменено: Reflection68 - 25.12.2021 15:47:09
 
как вариант
Код
    Source = 
        Odbc.Query(
            "DSN=Excel Files;DBQ=C:\Users\user\Downloads\Прим.xlsb;DriverId=1046", 
            "Select * from `Sheet1$`"
        )
или, если нужно без заголовков,
Код
    Source = 
        List.Accumulate(
            {"12","14","15","16"},
            null,
            (acc,ver)=>if acc is table 
                then acc 
                else 
                    try 
                        Table.Buffer(OleDb.Query(
                            "Provider=Microsoft.ACE.OLEDB."&ver&".0;Data Source=C:\Users\user\Downloads\Прим.xlsb;Extended Properties=""Excel 12.0;HDR=NO""", 
                            "Select * from `Sheet1$`"
                        )) 
                    otherwise null
        )
 
Цитата
Reflection68 написал:
Файлов множество поэтому держать их все открытыми тоже не представляется возможным
Открыть циклом все файлы в папке и сохранить как **.xlsx не вариант?
На форуме уже были такие макросы
Изменено: Михаил Л - 26.12.2021 14:29:15
 
Цитата
написал:
Открыть циклом все файлы в папке и сохранить как **.xlsx не вариант?
Спасибо, помогло.

Цитата
написал:
как вариант
Андрей, похоже у меня не установлены дополнительные драйвера, выдает ошибки подключений к драйверам. Во время редактирования приводит к необходимому формату, но при выгрузке данных на лист - ошибка.
Страницы: 1
Наверх