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

Страницы: 1
Power Query запрос из папки
 
Добрый день. Подскажите как можно обойти ошибку, суть в следующем:
в файле несколько запросов на две папки , далее эти запросы объединяются в один.
Если в папке лежат файлы то все ок, но когда хоть в одной папке пусто (нет файлов) выдает ошибку :
В запросе "Холодный" произошла ошибка. Expression.Error: Столбец "DC" таблицы не найден.

Причину ошибки понимаю, но как ее обойти, чтобы качалось информация с непустой папке?
Список сводных таблиц
 
Добрый день. НЕ смог своими силами доставить часть кода, поэтому прошу у вас помощи форумчане.
Есть код, который делает список сводных таблиц в файле (все отлично работает)
Код
Sub ListPivotsInfor()'Update 20141112
    Dim St As Worksheet
    Dim NewSt As Worksheet
    Dim pt As PivotTable
    Dim I, K As Long
    Application.ScreenUpdating = False
    Set NewSt = Worksheets.Add
    I = 1: K = 2
    With NewSt
        .Cells(I, 1) = "Name"
        .Cells(I, 2) = "Source"
        .Cells(I, 3) = "Refreshed by"
        .Cells(I, 4) = "Refreshed"
        .Cells(I, 5) = "Sheet"
        .Cells(I, 6) = "Location"
        For Each St In ActiveWorkbook.Worksheets
            For Each pt In St.PivotTables
                I = I + 1
                .Cells(I, 1).Value = pt.Name
                .Cells(I, 2).Value = pt.SourceData
                .Cells(I, 3).Value = pt.RefreshName
                .Cells(I, 4).Value = pt.RefreshDate
                .Cells(I, 5).Value = St.Name
                .Cells(I, 6).Value = pt.TableRange1.Address
            Next
        Next
        .Activate
    End With
    Application.ScreenUpdating = True
End Sub

И к этому коды есть дополнительный код, чтобы ссылки на сводные были в виде гипер ссылок

Можно включить этот фрагмент, чтобы сделать имя сводной таблицы гиперссылкой. .Cells(I, 1).Parent.Hyperlinks.Add Anchor:=.Cells(I, 1) _ , Address:="" _ , SubAddress:="'" + St.Name + "'!" + Split(pt.TableRange1.Address, ":")(0) _ , TextToDisplay:=pt.Name With .Cells(I, 7).Font .ColorIndex = xlAutomatic .Underline = xlUnderlineStyleNone End with With .Cells(I, 7). 1).Characters(Start:=4165632, Length:=Len(pt.Name)).Font.Underline = xlUnderlineStyleSingle.Color = -XNUMX End With

Вот он  только ни черта не работает, я не знаю как его поправить и куда вставлять в основное код.....
Единственное что понял "_ ," это обозначение новой строки. Тогда получается
Код
.Cells(I, 1).Parent.Hyperlinks.Add Anchor:=.Cells(I, 1) 
 Address:="" 
 SubAddress:="'" + St.Name + "'!" + Split(pt.TableRange1.Address, ":")(0) 
 TextToDisplay:=pt.Name 
   With 
      .Cells(I, 7).Font .ColorIndex = xlAutomatic .Underline = xlUnderlineStyleNone 
   End with 
   With 
     .Cells(I, 7). 1).Characters(Start:=4165632, Length:=Len(pt.Name)).Font.Underline = xlUnderlineStyleSingle.Color = -XNUMX 
   End With


Подскажите, как это совместить. Спасибо!
Не получается осуществить фильтр массива
 
Добрый день.
Подскажите  как можно решить ошибку несоответствие типа(13)в данном коде:
Код
Sub test()
  Dim arrA
  Dim arrB
  
  arrA = Range("A1:A9").Value
  arrB = Filter(arrA, "январь")
  Range("B1").Resize(UBound(arrB)) = arrB
    
End Sub
Выдает что ошибка в типе переменной, предполагаю что функции  Filter не устраивает , что массив arrA не обозначен как string(хотя в окне локал он фигурирует какVatiant\String).
Но  arrA сделать типа string не могу,так как отладчик начнет ругаться на эту строку  arrA = Range("A1:A9").Value
при этом  при таком исполнении все работает
Код
Sub test()
  Dim arrA(3) As String
  Dim arrB As Variant
  arrA(1) = "a"
  arrA(2) = "b"
  arrA(3) = "c"
  arrB = Filter(arrA, "b")
End Sub
Фактически все одно и тоже за исключением что в первом варианте назначение идет через диапазон, а во втором в ручную. Спасибо
Как узнать какие диапазоны принимают переменные с типом Range?
 
Добрый день. Подскажите ученику познающему свет VBA и погружающегося в его дебри, как можно узнать какие диапазоны принимают переменные  с типом Range в окне LOcals(скрин) или где то или както по другому? Просто надоедает прописывать в режиме пошаговой отладки  Msgbox  .address(особенного когда много переменных данного типа), чтоб понять все ли идет по плану или нет.
Изменено: Юра1987 - 07.01.2021 01:30:27
Не получается изменить количество циклов когда он уже запущен, возможно ли это вообще?
 
Добрый день. Возник вопрос можно ли изменить количество циклов (For), если цикл уже работает?
Пример
Код
Sub xx()
Dim i As Long
Dim x As Long
x = 2
For i = 1 To x
Range("A" & i).Value = 1
x = 10

Next i
Прорабатывает цикл два раза, хотя переменная количества циклов меняется в процессе выполнения на 10 (скрин).
Изменено: Юра1987 - 03.01.2021 04:23:45
Создание файла экселя с помощью горячих клавиш
 
Добрый день. Подскажите есть ли горячая клавиша, чтоб создать новый файл екселя в папке?
пример(Ctrl + Shift + N. создать папку), а то постоянно приходится маус2 - создать -лист ексель .
Вариант использования макроса не совсем подходит, ведь ексель может быть закрыт.
Как в Power Query пронумеровать строки
 
Добрый день. Можно ли в Power Query пронумеровать строки в такой последовательности -первые 4 строки 1, вторые 4 строки 2 и тд? Индекс и последущее деление от остатка (на 4 ) не дает желаемого результата, транспортировкой так же не смог объединять по четыре столбца.
Есть список , где  Фио разнесено на каждую строку, нужно объединить их вместе-если использовать  макрос то там ясно.
А вот как сделать в Power Query хз...
Благодарю за помощь!
Изменено: Юра1987 - 26.06.2020 01:03:26
Power Pivot настройка языка
 
Добрый день. Помогите перевести пивот с английского на русский. В настройках экселя русский выставлен как основной, в настройках експлорера так же стоит русский,  повер квери  на русском. А вот пивот почему на английском и ни где нет информации как выставить в нем русский язык.Благодарю за помощь.
Одновременная фильтрация в power query по условия в двух столбцах
 
Добрый день. Подскажите существует ли возможность одновременной фильтрация в power query по условия в двух столбцах? Пример из файла: необходима убрать из списка все строки в которых МВЗ = 366813101 при условии что вид затрат=5040020
Если я в квери делаю = Table.SelectRows(#"Измененный тип", each ([МВЗ] <> 366813101 and [Вид затрат]<> 5040020)) то он воспринимает эти два условия фильтрации как независимо последовательны, а мне нужно чтоб эти два условия воспринимались одновременно
Понимаю что это можно сделать путем создания объедененного столбца и фильтром по 3668131015040020, но меня интересует только вариант фильтра по двум условиям одновременно. Возможно ли это?
Изменено: Юра1987 - 05.02.2020 15:57:32
Страницы: 1
Наверх