Перейти к содержимому

Фотография

Excelпомощь, консультации...


  • Авторизуйтесь для ответа в теме
Сообщений в теме: 914

#841
sinsemilia

sinsemilia
  • В доску свой
  • 3 095 сообщений

Приветствую всех!  :hi: Давно я не заходила в эту тему ))) 

Назрели два глобальных вопроса с которыми я просто не в состоянии справиться. Может быть вы что-нибудь дельное посоветуете? 

1 Вопрос 

Есть два столбца с текстовыми данными. В первом одни названия компаний, во втором такие же компании (возможно другие) но с другими названиями. Задача - выявить совпадения из столбца по как можно более большему количеству слов. Например в столбце А новая база данных, в которой есть и текущие и новые поставщики, в столбце С только текущие. Вот как понять каких нужно добавлять,а какие уже есть. Общего признака в виде кода, БИН и т.д. нет, только название. Я нашла один макрос, который показывает примерно что нужно, но он не работает с большим объемом (100 000 строк) и не совсем что-нужно. 

Вот такой макрос   

Прикрепленный файл  Tips_Macro_ComparePart.rar   67,4К   Количество загрузок: 138

 

Вот пример что и как:

Прикрепленный файл  Пример с поставщиками.rar   7,33К   Количество загрузок: 134

 

Слов в названии может быть очень много, от 1 до 20, конечно я причесываю списки и стараюсь упростить, но как сделать это сравнение пока не понимаю. 


Сообщение отредактировал sinsemilia: 07.08.2018, 22:51:05

  • 0

#842
sinsemilia

sinsemilia
  • В доску свой
  • 3 095 сообщений

2. Вопрос 

Номера телефонов. В столбце А они указаны как попало. В столбце В они должны выглядеть так. Список огромный, где-то нет префиксов, где-то кодов. Заменить какие-то общие знаки типа "-" "пробел" "скобки" во всех строчках я не могу, так как все сольется в одну единую массу. Делать все вручную - на это уходит огромное количество времени. Может вы подскажете какие-нибудь хотя бы общие формулы для достижения единого вида? 

Прикрепленный файл  Пример с телефонами.rar   6,2К   Количество загрузок: 97


  • 0

#843
asr

asr
  • Модератор
  • 24 325 сообщений

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

После того как сольется в единую массу, выравнять длину т.е. если впереди не 7 или 8 добить символом 7 или 8
После чего проставить пробелы (или скобки или еще что-то) в тех местах где нужно.

Имеем 8(702)132-131.321
1 Этап выкидываем лишние символы, получаем 8702132131321
2 Этап приводим к стандарту (+7), заменяем первую 8 на +7 получаем +7702132131321 (или наоброт 7 меняем на 8)
3 Добавляем нужные пробелы или символы +7 702 132 131321

Сообщение отредактировал asr: 09.08.2018, 12:56:05

  • 0

#844
Daulet.tech

Daulet.tech
  • Завсегдатай
  • 239 сообщений

Приветствую всех!  :hi: Давно я не заходила в эту тему ))) 

Назрели два глобальных вопроса с которыми я просто не в состоянии справиться. Может быть вы что-нибудь дельное посоветуете? 

1 Вопрос 

Есть два столбца с текстовыми данными. В первом одни названия компаний, во втором такие же компании (возможно другие) но с другими названиями. Задача - выявить совпадения из столбца по как можно более большему количеству слов. Например в столбце А новая база данных, в которой есть и текущие и новые поставщики, в столбце С только текущие. Вот как понять каких нужно добавлять,а какие уже есть. Общего признака в виде кода, БИН и т.д. нет, только название. Я нашла один макрос, который показывает примерно что нужно, но он не работает с большим объемом (100 000 строк) и не совсем что-нужно. 

Вот такой макрос   

attachicon.gifTips_Macro_ComparePart.rar

 

Вот пример что и как:

attachicon.gifПример с поставщиками.rar

 

Слов в названии может быть очень много, от 1 до 20, конечно я причесываю списки и стараюсь упростить, но как сделать это сравнение пока не понимаю. 

Sub Test1()
    Dim i&, yes, arr1, arr2, c
    Dim tm!: tm = Timer
    
    arr1 = Range("A2:A" & Cells(Rows.Count, 1).End(xlUp).Row).Value
    arr2 = Range("C2:C" & Cells(Rows.Count, 3).End(xlUp).Row).Value
    ReDim c(1 To UBound(arr1), 1 To 1)
    
    With CreateObject("Scripting.Dictionary")
        For i = LBound(arr1) To UBound(arr1)
            For Each yes In Split(arr1(i, 1), " ")
                .Item(yes) = i
            Next
        Next
        
        For i = LBound(arr2) To UBound(arr2)
            For Each yes In Split(arr2(i, 1), " ")
                If .Exists(yes) Then
                    c(i, 1) = c(i, 1) & " " & yes
                End If
            Next
        c(i, 1) = Mid(c(i, 1), 2)
        Next
        
        [f2].Resize(i - 1, 1).Value = c
    End With
    MsgBox Timer - tm & " сек."
End Sub

Попробуйте


  • 1

#845
sinsemilia

sinsemilia
  • В доску свой
  • 3 095 сообщений

Попробуйте

Здорово! Получилось! Даулет, спасибо Вам огромное!  :bow:   :kiss:

Прилагаю готовый файл с макросом, вдруг кому понадобится  :)

Прикрепленный файл  Макрос для поставщиков.rar   17,13К   Количество загрузок: 91


  • 0

#846
sinsemilia

sinsemilia
  • В доску свой
  • 3 095 сообщений

Добрый день, уважаемые любители экселя

Подскажите, пожалуйста, как правильно написать формулу ВПР и ДВССЫЛ 

Она должна ВПР-ить данные с нескольких листов по определенным параметрам. В ячейке Е5 она работает как надо, а вот как ее протянуть в ячейку Е6 я не знаю. 

Помогите, пожалуйста 

Прикрепленный файл  Пример ДВССЫЛ и ВПР.rar   17,97К   Количество загрузок: 113


  • 0

#847
Daulet.tech

Daulet.tech
  • Завсегдатай
  • 239 сообщений

Суть не понял, если формула что то надо, то лучше макросом

с ДВССЫЛ(), массивная формула, долго отрабатывает

=ИНДЕКС(ДВССЫЛ($B5&"!E:T");ПОИСКПОЗ($B$2&"|"&$C5;ДВССЫЛ($B5&"!B:B")&"|"&ДВССЫЛ($B5&"!c:c");0);СТОЛБЕЦ()-4)

без ДВССЫЛ(), массивная формула

=ВЫБОР(ПОИСКПОЗ($B5;{"КРУПНЫЕ";"МЕЛКИЕ"};0);ИНДЕКС(КРУПНЫЕ!$E:$T;ПОИСКПОЗ($B$2&"|"&$C5;КРУПНЫЕ!$B:$B&"|"&КРУПНЫЕ!$C:$C;0);СТОЛБЕЦ()-4);ИНДЕКС(МЕЛКИЕ!$E:$T;ПОИСКПОЗ($B$2&"|"&$C5;МЕЛКИЕ!$B:$B&"|"&МЕЛКИЕ!$C:$C;0);СТОЛБЕЦ()-4))

Сообщение отредактировал Daulet.tech: 21.09.2018, 12:03:12

  • 1

#848
sinsemilia

sinsemilia
  • В доску свой
  • 3 095 сообщений

Суть не понял, если формула что то надо, то лучше макросом с ДВССЫЛ(), массивная формула, долго отрабатывает

Даулет, спасибо огромное! То, что нужно! Там не много листов, поэтому идеально подойдет. Спасибо  :kiss:

 

На счет макросов вы правы, у меня давно назрел один вопрос. А есть, интересно, какие-нибудь универсальные макросы (например в виде формул), которые суммировали и вставляли данные в нужный диапазон из Oracle или SAP портянки по заданным критериям? Такой аналог функций "СУММЕСЛИМН", "ИНДЕКС И ПОИСКПОЗ", "БИЗВЛЕЧЬ"    и т.п.?

Сейчас как происходит - я вытаскиваю эту портянку, в ней может быть более 100 тыс. строк, причесываю ее, затем делаю сводную, и из сводной вытаскиваю данные в итоговый отчет, в котором листов может быть 20-40-60. В целом все автоматически, но время на эту работу тоже уходит. Как можно сократить этот путь?   


  • 0

#849
Daulet.tech

Daulet.tech
  • Завсегдатай
  • 239 сообщений

С Оракл не сталкивался, а с mysql можно, вроде доп компонент надо устанавливать


Сообщение отредактировал Daulet.tech: 26.09.2018, 16:49:06

  • 1

#850
Daulet.tech

Daulet.tech
  • Завсегдатай
  • 239 сообщений
Сейчас как происходит - я вытаскиваю эту портянку, в ней может быть более 100 тыс. строк, причесываю ее, затем делаю сводную, и из сводной вытаскиваю данные в итоговый отчет, в котором листов может быть 20-40-60. В целом все автоматически, но время на эту работу тоже уходит

 

Если с 100 тыс. строк на итоговую сделать?


Сообщение отредактировал Daulet.tech: 26.09.2018, 16:47:28

  • 1

#851
Friday

Friday
  • Свой человек
  • 765 сообщений

 

Суть не понял, если формула что то надо, то лучше макросом с ДВССЫЛ(), массивная формула, долго отрабатывает

Даулет, спасибо огромное! То, что нужно! Там не много листов, поэтому идеально подойдет. Спасибо  :kiss:

 

На счет макросов вы правы, у меня давно назрел один вопрос. А есть, интересно, какие-нибудь универсальные макросы (например в виде формул), которые суммировали и вставляли данные в нужный диапазон из Oracle или SAP портянки по заданным критериям? Такой аналог функций "СУММЕСЛИМН", "ИНДЕКС И ПОИСКПОЗ", "БИЗВЛЕЧЬ"    и т.п.?

Сейчас как происходит - я вытаскиваю эту портянку, в ней может быть более 100 тыс. строк, причесываю ее, затем делаю сводную, и из сводной вытаскиваю данные в итоговый отчет, в котором листов может быть 20-40-60. В целом все автоматически, но время на эту работу тоже уходит. Как можно сократить этот путь?   

 

 

А в SAPе его родными средствами нельзя разве? Если современный отчет и выводит в ALV (нормальная таблица, в которых можно сортировать, суммировать итд) то там есть разные инструменты, типа промежуточных сумм итд. Если  древний отчет (нарисованная таблица) то с этим могут быть сложности. В любом случае обратитесь к консультантам SAP.


  • 1

#852
sinsemilia

sinsemilia
  • В доску свой
  • 3 095 сообщений

С Оракл не сталкивался, а с mysql можно, вроде доп компонент надо устанавливать

Что-за доп-компонент и как он работает? ))

В 10-м экселе есть надстройки - pivot point и power query, сейчас ими пользуюсь и параллельно изучаю - они классные, очень удобные в работе с большими объемами данных. 

 

  Если с 100 тыс. строк на итоговую сделать?

Да! Плюс чтобы еще считало все верно, красиво было, удобно для восприятия, эстетично  :rolleyes:   

Чуть позже сформирую пример и покажу.


Сообщение отредактировал sinsemilia: 27.09.2018, 01:30:12

  • 0

#853
sinsemilia

sinsemilia
  • В доску свой
  • 3 095 сообщений

А в SAPе его родными средствами нельзя разве? Если современный отчет и выводит в ALV (нормальная таблица, в которых можно сортировать, суммировать итд) то там есть разные инструменты, типа промежуточных сумм итд. Если  древний отчет (нарисованная таблица) то с этим могут быть сложности. В любом случае обратитесь к консультантам SAP.

Да, там древний отчет, нарисованная таблица. Слева критерии, справа данные. Я ковырялась в ее параметрах, инструментах и настройках, кардинально она не меняется  :D Но в целом SAP прикольный =)

Самое печальное, нет с кем проконсультироваться, самостоятельно собираю в нете любую информацию...буквально по крупицам. И та, в основном, на английском.  


Сообщение отредактировал sinsemilia: 27.09.2018, 01:31:42

  • 0

#854
Friday

Friday
  • Свой человек
  • 765 сообщений

 

А в SAPе его родными средствами нельзя разве? Если современный отчет и выводит в ALV (нормальная таблица, в которых можно сортировать, суммировать итд) то там есть разные инструменты, типа промежуточных сумм итд. Если  древний отчет (нарисованная таблица) то с этим могут быть сложности. В любом случае обратитесь к консультантам SAP.

Да, там древний отчет, нарисованная таблица. Слева критерии, справа данные. Я ковырялась в ее параметрах, инструментах и настройках, кардинально она не меняется  :D Но в целом SAP прикольный =)

Самое печальное, нет с кем проконсультироваться, самостоятельно собираю в нете любую информацию...буквально по крупицам. И та, в основном, на английском.  

 

 

Стандарт или Z-овская? Если стандарт - напишите название.

В любом случае - спрашивайте


  • 0

#855
sinsemilia

sinsemilia
  • В доску свой
  • 3 095 сообщений

Привествую всех! 

Есть спецы по power qwerty и dax формулам? 


  • 0

#856
Daulet.tech

Daulet.tech
  • Завсегдатай
  • 239 сообщений
Http://www.facebook.com/groups/powerBiForever/
  • 0

#857
sinsemilia

sinsemilia
  • В доску свой
  • 3 095 сообщений

Круто, благодарю вас, Даулет! 

А вы сами не перешли еще на power bi и power qwerty? 

Сейчас кайфую как могу, кроме daх формул, в которых просто надо разобраться и понять, остальное классно выглядит и работает. Какой-то рай для аналитика. =)  


  • 0

#858
sinsemilia

sinsemilia
  • В доску свой
  • 3 095 сообщений

Подскажите, пожалуйста, как в экселе сделать выпадающий список, например справа (строки) фрукты, столбцы (даты), в значениях 1. Я задаю конкретную дату и должны появляться только те фрукты, в значениях которых стоит 1 

Вот пример

Прикрепленный файл  Пример.rar   6,66К   Количество загрузок: 72


Сообщение отредактировал sinsemilia: 12.04.2019, 17:31:05

  • 0

#859
Daulet.tech

Daulet.tech
  • Завсегдатай
  • 239 сообщений

С доп столбиками, если вопрос актуален

В отпуске

Прикрепленные файлы


Сообщение отредактировал Daulet.tech: 22.04.2019, 13:37:54

  • 1

#860
sinsemilia

sinsemilia
  • В доску свой
  • 3 095 сообщений

С доп столбиками, если вопрос актуален

В отпуске

Конечно актуален! Спасибо вам огромное! То, что нужно  :hi:

Даулет, а можно еще один, последний вопрос по excel: есть файл по расчету заказов, куда необходимо подгружать актуальные ежедневные данные по остаткам. Руками это делать не охота. Может быть вы подскажете способы автоматизации этого процесса? 

В экселе можно сделать связь с источником, может быть как-то через эту связь? Ну или какие-нибудь другие варианты. Актуальные данные находятся в 1с.   


  • 0


Количество пользователей, читающих эту тему: 0

пользователей: 0, неизвестных прохожих: 0, скрытых пользователей: 0

Размещение рекламы на сайте     Предложения о сотрудничестве     Служба поддержки пользователей

© 2011-2022 vse.kz. При любом использовании материалов Форума ссылка на vse.kz обязательна.