Страницы: 1
RSS
Обработка выгрузки из 1С, отметить нужные ячейки и те, которые подлежат удалению
 
Доброе утро! Помогите, пжлста, с обработкой выгрузки из 1С. Обработать не могу, т.к. нет логической структуры. Как можно обозначить или выделить  ячейки с целью последующей обработки и другие для удаления.
Заранее благодарна!
 
Цитата
kristina S написал:
нет логической структуры
так. а нам (помощникам), как понять, что нужно удалять, а что нет?
В жизни нет ничего невозможного! Есть только недостаток знаний и умений.
 
Хотя бы отметить цифрой, буквой, в колонке Субконто Дт после названия материала  2 пустых строки.  Три колонки = название материала + 2 пустых, обозначить, я их удалю.
 
в М8 и протянуть вниз
Код
=ЕСЛИ(ИНДЕКС(K8:$K$36;ПОИСКПОЗ("количество";D8:$D$36;0));"оставить";"удалить")
Лень двигатель прогресса, доказано!!!
 
Спасибо,Сергей! Мне это очень поможет в работе.
 
Код
Sub мяу()
    Dim i&
    Application.ScreenUpdating = False
    For i = Cells.Find("*", , , , xlByRows, xlPrevious).Row To 7 Step -1
        With Cells(i, "B")
            If .MergeCells Then
                i = i - .MergeArea.Rows.Count + 1
                If .Offset(, 9) = "" Then
                    .MergeArea.EntireRow.Delete
                End If
            End If
        End With
    Next
    Application.ScreenUpdating = True
End Sub
 
в Power Query попробовал сделать
 
Спасибо, RAN! Не могу определиться чем пользоваться и формула отличная и макрос хорош!!!☺
 
Цитата
artyrH написал:
попробовал сделать
ИМХО так проще. Как-то сильно наворочено у вас.
Код
let
    Источник = Excel.CurrentWorkbook(){[Name="Таблица1"]}[Content],
    #"Вставлено: объединенный столбец" = Table.AddColumn(Источник, "Сведено", each [Документ] & Text.From([Субконто Дт], "ru-RU"), type text),
    #"Заполнение вниз" = Table.FillDown(#"Вставлено: объединенный столбец",{"Сведено"}),
    #"Сгруппированные строки" = Table.Group(#"Заполнение вниз", {"Сведено"}, {{"Таб", each _, type table}, {"Признак", each List.Last(_[Субконто Дт]) = null, type logical}}),
    #"Строки с примененным фильтром" = Table.SelectRows(#"Сгруппированные строки", each ([Признак] = false)),
    #"Развернутый элемент Таб" = Table.ExpandTableColumn(#"Строки с примененным фильтром", "Таб", {"Столбец1", "Дата", "Документ", "Содержание", "Дт", "Столбец2", "Кт", "Столбец3", "Сумма", "Субконто Дт", "Субконто Кт"}, {"Столбец1", "Дата", "Документ", "Содержание", "Дт", "Столбец2", "Кт", "Столбец3", "Сумма", "Субконто Дт", "Субконто Кт"}),
    #"Удаленные столбцы" = Table.RemoveColumns(#"Развернутый элемент Таб",{"Сведено", "Признак", "Столбец1"})
in
    #"Удаленные столбцы"

Цитата
kristina S написал:
Не могу определиться чем пользоваться
Ой! Все такое вкусное!  :D
Пользуйтесь всем.
Изменено: PooHkrd - 09.04.2019 11:37:28
Вот горшок пустой, он предмет простой...
 
PooHkrd, круто
как учить этот язык, когда описание List.Last о таких возможней не обозначают :)  
В жизни нет ничего невозможного! Есть только недостаток знаний и умений.
 
Александр, как это не обозначают? Вон в описании русским языком написано:
Цитата
Возвращает последний элемент в списке
Так и учу: читаю - применяю. Я этой функцией и гляжу на последний элемент в списке, сравниваю его с null, и на выходе получаю признак.
Вот горшок пустой, он предмет простой...
 
Цитата
PooHkrd написал:
так проще
у меня после формул excel к Power Query подход не верный. наверное, так и не перестроюсь
 
Цитата
PooHkrd написал:
на последний элемент в списке
по условию на два же последних элемента. как то с List.LastN..
 
artyrH, это только первые полгода-год.
Главное - принципиально забить на формулы и любые задачи решать только через PQ, даже если нужно написать = А1 + В1. Практика решает.
Вот горшок пустой, он предмет простой...
 
PooHkrd, верно, я в начале прочитал код не правильно.  прочитал как
Код
List.Last(_[Субконто Дт] = null) 
В жизни нет ничего невозможного! Есть только недостаток знаний и умений.
 
Про PQ забыла. Буду обрабатывать в PQ. Спасибо PooHkrd, Вы мне очень помогли в организации работы. Сами освоили и нас подтянули.
Страницы: 1
Наверх