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

Страницы: 1 2 3 4 5 След.
Группировка по полю с вычислением суммы и применением к ней формулы
 
Доброго времени суток.
Ребят, подскажите пожалуйста, нужно сделать сгруппированный отчет с вычислением. Если кратко: есть поля, номер накладной, количество, объем, и добавляем поле количество * на объем. По номеру накладной нужно получить сумму объема, для этого идеально подходит сводная таблица, но вопрос заключается в том, что к сводному объему еужно применить формулу поиска тарифа и дополнительное поле тариф * на суммарный объем. Попробовал сделать через вычисляемое поле. но туда не вставляется формула поиска тарифа. (для тарифов есть отдельный лист) и вычисление через ДВССЫЛ работает как я понял некоректно, сам написал ее, уже сейчас заметил что данные неправильно в тариф ставит(
Вывод данных на новый лист.
Посмотрите пожалуйста.
Поиск ключевых слов в тексте с подстановкой определенных значений
 
Ребята приветствую.
Прошу помощи в реализации такого вопроса.
Есть столбцы с множеством сортированных данных (столбцов может быть много)
нужно при соответствии слова из конкретного столбца в тексте подставить номер этого столбца.
слова в поисковом тексте могут стоять как угодно. Самое важное что нужно находить только стлова из списка целиком, т.е. слово "корм" и слово "корма" это 2 разных слова.

пример приложил, для наглядности выделил цветами.
попробовал использовать данные из примера, именно формулы (Поиск ключевых слов в тексте) но получается вывести 1 слово и кучу нулей.
Возможно тут совсем подход нужен другой? подскажите пожалуйста.
Изменено: Антон - 22.09.2021 12:45:20
Сводная данных относительно диапазона дат и доп. ячейки
 
Ребята, всем привет.
Преследуют опять нестандартные задачи. Прошу снова вашей помощи!
Прислали нам отчет. (файл прикрепил)
Есть листы с названиями от 1 до 52 (в примере только 2 листа с именами 9 и 10), это недели.

Раз в неделю сотрудник создает лист шаблон https://prntscr.com/10q4ywl в котором прописывается № недели и через ВПР сопоставляются даты.
сотрудник заполняет определенные поля https://prnt.sc/10q52os

Начальство захотело сделать отчет по всем неделям (листы от 1 до 52) прописывая диапазон дат и № заказа, на листе "Счет" (зеленый блок)
https://prnt.sc/10q4pdz и получить выборку согласно этих вводных (красный блок)

Понимаю, что скорее всего есть более рациональное выполнение данный задачи, но доказать пока не смог.
Поискал варианты, получения диапазона данных отнисительно дат, но воспроизвести не получилось.

Подскажите оптимальный вариант в данном случае.

P.s. Правильно ли я понимаю, что нужно создать отдельный лист "типа база данных". И к ней пробовать применять фильтра по дате и т.д???
Как тогда выводить эти данные на отдельный лист?
Возможно можно применить умные таблицы или сводную?
Спасибо заранее.  
Создание групп для файла импорта на сайт тиу.ру, .
 
Ребята приветствую!
Попался в работу шаблон ипморта на сайт тиу ру, состоит из 2-х вкладок (вкладка групп и товаров). Суть вопроса была, как поместить товары в определенную группу (по факту это категории/ крошки пользователя)
День прошел в изучениях документации, ответ найден не был. Эксперементальным путем было установлено, что для того чтоб создать такую структуру нужно чтоб в файле выполнялось 2 условия.
1) на вкладке Export Groups Sheet Обязательно должно быть прописаны крошки в виде списков с айдишниками и они перелинковывались с id родителя
2) на вкладке Export Products Sheet для конкретного товара, должно быть прописано название последней группы к которой он относится и взят соответсвующий id
Например имея для товара строку ( она на вкладке Export Products Sheet) Группа1/Группа2/Группа3/Группа4 Нам в итоге нужно рассписать структуру которая ниже и взяв номер и имя последней группы (выделено красным) прописать эти значения на вкладку с самим товаром
Вкладка Export Groups Sheet выглядит в итоге так:

Вкладка Export Products Sheet (урезанный вариант выглядит так)

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

Очередная проба пера и непонимание как правильно. Прошу помощи с решением.
На входе файл вот такого формата

А на выходе видоизмененные данные

Пните как правильно это реализовать? Колонку откуда это начинается мы указываем в макросе ( в данном случае колонка D)
Изменено: Антон - 26.03.2020 14:37:35
Разбор группировки данных через vba
 
Приветствую!
Ребята, подскажите пожалуйста
имеем прайс который слева имеет группировку (рис1)


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

И возможно ли в данном случае обращаться к самим элементам (выделено желтым на первом скрине)
Спасибо заранее
сохранение массива vba в несколько файлов по условию
 
Приветствую,
Подскажите пожалуйста как реализовать макросом подобное
Имеем табличку (рисунок 1)
В VBA формируем массив в память
a = [A1:F12]
как по ключевому полю Index сохранить данные в разные файлы csv
В итоге получить 3 файла
(название файла формируется из столбца А)
файл овощи.csv с товарами Index = 1
файл фрукты.csv  с товарами Index = 2
файл грибы.csv с товарами Index = 3
Пример файла овощи.csv
(рисунок 2)
Изменено: Антон - 21.01.2020 12:37:21
Записать csv из массива vba по условиям
 
Ребята приветствую!
Начал писать обработку для прайс листов, и столкнулся с вопросами
Как сохранить данные в csv файлы из массива вот такого формата

Категория 0 =>Категория1=>Товар 1=>Арт1
Категория 0 =>Категория1=>Товар 2=>Арт2
Категория 0 =>Категория2=>Товар 3=>Арт3
Категория 0 =>Категория2=>Товар 4=>Арт4

Категория 1 =>Категория1=>Товар 1=>Арт1
Категория 1 =>Категория1=>Товар 2=>Арт2
Категория 1 =>Категория2=>Товар 3=>Арт3
Категория 1 =>Категория2=>Товар 4=>Арт4

При этом получив
C:/Price/Категория 0/Категория1.csv
Товар 1=>Арт1
Товар 2=>Арт2
C:/Price/Категория 0/Категория2.csv
Товар 3=>Арт3
Товар 4=>Арт4
и так далее

В теории понимаю что нужно
1) сначала создать/открыть файл для записи
2) потом собрать массив данных и записать в файл
3) Закрыть файл
4) Повторить

Подскажите пожалуйста как реализовать данное
Изменено: Антон - 20.01.2020 18:10:20
При выборе ячейки выделить строку цветом (условное форматирование)
 
Приветствую
Возникла необходимость, создать правило для условного форматирования.
Когда мы переходим на любую ячейку листа, подсвечивать всю строку каки-то цветом.
Поискал, нашел на другом форуме вот такую формулу =СТРОКА(B2)=АктивнаяСтрока но она работает только если ячейка выделения = B2 как я понял.
Вопрос, как ее отредактировать для любой ячейки?
Зачем это нужно? Имеем монитор 34" и еще 2 по бокам, иногда теряешься где выделение стоит.
Может условным такое и не сделать?
Сопоставление данных относительно 2-х столбцов
 
Приветствую!
Ребята прощу помочь решить такую задачу.
Есть наш прайс и прайс поставщика
Нужно сопоставить артикулы из колонки B (таблица наша 1) в колонку G соответственно (таблица поставщика 2)
Цветами разукрасил для наглядности
2-я строка как раз показывает почему не получается все под одну гребенку делать. Бывает текст слева и справа
Сравнение идет по 2-м параметрам, по названию и артикулу.
Посидел попробовал глазами это делать, можно конечно, но там тысячи позиций, не вариант.

Буду признателен за любую инфу
Сумма ячеек в определенных местах отностительно данных.
 
Приветствую.
Ребят помогите пожалуйста.
Имеем табличку с цифрами которая разделяется пустой строкой (таких строк до миллиона и сумирующие диапазоны имеют разную длину)
1сумма (1+2+3)
2
3
4 сумма (4+5)
5
не могу придумать как получить сумму в соответсвующих столбцах.
Данные одного столбца разнести по 4-м столбцам
 
Приветствую.
Подскажите как перевернуть такую таблицу не прибегая к vba
Как поменять анкор отображаемой гиперссылки?
 
Ребят, вопрос. В екселе есть готовые гиперссылки
в этих ссылках есть id
в ячейке хочется увидеть именно это id подскажите как это сделать
Само собой прописать 3 ячейки я могу, но их тысячи.
Изменено: Антон - 02.08.2018 15:21:16
Удалить лишние пробелы в словах
 
Приветствую
Столкнулся с проблемой о которой и не думал. Есть пдф файл который конвертируется в ексель, и кому-то видимо что-то не понравилось в шрифтах или пдф генератор дал сбой, в итоге слова получились с пробелами.
Б рянс к
Буз улук
В еликие Луки
В еликий Нов г ород
В ладив ос т ок
Владикав каз
В ладимир
Каменс к- Ураль с кий
Каменс к-Шахт инс кий
Комс омоль с к-на-Амуре

Возник вопрос, как убрать эти пробелы
Б рянс к => Брянск
Буз улук => Бузулук
при этом если в слове есть 2 большие буквы, то пробел перед второй надо оставить
В еликий Нов г ород => Великий Новгород
В еликие Луки => Великие Луки
а если стоит - перед большой буквой тогда нет
Каменс к- Ураль с кий => Каменск-Уральский
Комс омоль с к-на-Амуре => Комсомольск-на-Амуре
Формула для умной таблицы дает ЗНАЧ
 
Приветствую
Пытаюсь сделать сводную таблицу по примеру из приемов https://www.planetaexcel.ru/techniques/8/1640/ (способ2 Вспомогательная сводная)
Но почему-то при попытке обработки формулы =ЕСЛИ(B5>0;ИНДЕКС(User[[meta_value]:[meta_value]];B5;"")) я получаю #ЗНАЧ
Подскажите пожалуйста, что я делаю не так?
Вытащить линки картинок из гиперссылок
 
Приветствую.
Прошу помощи.
Столкнулся с прайсом в котором картинки вставлены в ячейки как гиперссылки
Задача вытащить из картинок сами линки и вставить вместо картинок (удалить картинки)
попробовал стандартным способом, но он почему-то выдает ошибку.
Код
Sub ExtractHL()
Dim HL As Hyperlink
For Each HL In ActiveSheet.Hyperlinks
HL.Range.Offset(0, 6).Value = HL.Address
Next
End Sub
Разделить файл на файлы и добавить шапку к каждому
 
Ребят, подскажите пожалуйста, как при использовании данного макроса в каждый новый файл добавлять шапку, которая прописана в 1 строке исходного файла?
Код
Sub DivFile()
    Dim i As Long, s As String, ws As Worksheet
    Application.ScreenUpdating = False: Set ws = ActiveSheet
    For i = 1 To ws.UsedRange.Row + ws.UsedRange.Rows.Count - 1 Step 20000
        Workbooks.Add xlWBATWorksheet: ws.Rows(i & ":" & i + 19999).Copy [A1]
        s = Replace(ThisWorkbook.FullName, ".xlsm", "-" & (Fix(i / 20000) + 1) & ".xls")
        ActiveWorkbook.SaveAs s: ActiveWorkbook.Close
    Next
    MsgBox ("The end")
End Sub
Как преобразовать в число текстовую ячейку.
 
Приветствую
Использую макрос для преобразования текста в число
Код
Sub Convert_Text_to_Numbers()
    Selection.NumberFormat = "General"
    Selection.Value = Selection.Value
End Sub
И вот есть данные, на которые он не действует.

Подскажите как правильно быть в таком случае.
По сути мы выделяем диапазон данных и потом что-то с ним делаем.
Транспонирование данных большого диапазона
 
Приветствую
Когда-то давно был написан простенький макрос перестановки значений при определенных условиях
Код
Sub Обработка()
Application.ScreenUpdating = False
On Error Resume Next
Dim LastRow As Long
LastRow = Cells(Rows.Count, 1).End(xlUp).Row
' начальная колонка для перемещения
'по умолчанию это 2(колонка B)
copy_col = 2
For i = 2 To LastRow
'Cells(i, 1).Select
aa = Cells(i, 1).Value
If aa = Empty Then
GoTo asd
End If
'Cells(i + 1, 1).Select
bb = Cells(i + 1, 1).Value
lLastCol = Cells(i, Columns.Count).End(xlToLeft).Column
Z = lLastCol + 1

If (aa = bb) Then
    Cells(i, Z).Value = Cells(i + 1, copy_col).Value
    Rows(i + 1).Delete
    i = i - 1
End If
LastRow = Cells(Rows.Count, 1).End(xlUp).Row
Next i
asd:
Application.ScreenUpdating = True
MsgBox ("The End")
End Sub


Он меня и сейчас в целом устраивает, однако появилась проблема, нужно обрабатывать до 1 млн строк И этот макрос просто умирает и даже если он и обработает такое количество, то это занимает много часов.
Не могли бы вы подсказать как оптимизировать такую обработку. Желательно без применения сводной таблицы.
Спасибо
Вписать картинку в объединенные ячейку
 
Приветствую.
Ребят подскажите пожалуйста.
У нас есть картинка которая вписана(вернее вставлена)  в А1 ячейку. Картинка квадратная.  Мы берем 10 ячеек, например: с А1 по А10 и объединяем их.
Вопрос, как вписать в получившуюся ячейку нашу картинку, которая в А1.
Изменено: Антон - 10.09.2017 13:17:08
Удалить дубли картинок, вписанные в ячейки
 
Приветствую.
Ребят подскажите пожалуйста, имеем в файле выгрузку из мой склад, там для каждой позиции он выгружает картинку и название.
Как удалить дубли картинок? Пробовал через http://excelvba.ru/code/ShapesInRange но чет оно не срабатывает.
В файле лист 1 это выгрузка, лист 2 это как хочется видеть.
Спасибо заранее.
Удалить мусор из прайса
 
Приветствую
Ребята, помогите пожалуйста.
Есть огромный прайс (кусочек прикрепил) который конвертируется из pdf в excel
Как правильно получить с него чистую таблицу, без повторяющихся шапок и промежутков между таблицами
+ отменить объединение и заполнить соотвествующими значениями и преобразовать данные в число.

Может можно как-то по выделенной границе искать?
Или как вообще быть в таких ситуациях?
Можно конечно фиксированно задать строки, которые нужно удалять. Но файл динамически создается и тут так не пойдет
регулярка для телефонных номеров
 
Приветствую
Ребята помогите пожалуйста с регуляркой.
Написал вот так (ниже) но при попытке обработать вот это значение 97316196201 получаю 973201, хотя должен получить все цифры.
Что имеем на входе. множесто номеров телефонов, которые записаны как угодно, т.е. могут быть префиксы и другие разные вещи, типа + * и т.д. и т.п.
Нужно при нахождении номера с определенными кодами, забирать сам номер без префиксов.
префикс может быть от 0 до 5 чисел, потом идет Обязательно 3-х значный либо 4-х значный код и пото сам телефон.
Например
01296610231235
01429662145662
00966124552445
+966000454557
966000456552

Выделил то что нужно забирать (оно и забирается, но для некоторых нет)
В файле выделил желтым цветом, что неправильно забирается.
Подскажите что не так с регуляркой.
Код
Public Function onlyPhone(stroka) 'Выделяем телефон
    Static objRegExp As Object
    If objRegExp Is Nothing Then
        Set objRegExp = CreateObject("VBScript.RegExp")
        objRegExp.Global = True
        objRegExp.pattern = "(\d{0,5})(966|964|965|968|971|359|972|20)(\d+)"        
    End If
    onlyPhone = objRegExp.Replace(stroka, "$2$3")
    
End Function
Изменено: Антон - 21.07.2017 13:43:29
подставить в формулу значение из другой ячейки
 
Приветствую
Подскажите пожалуйста, как в формулу подставить значение из другой ячейки?
Имеем табличку
A B
1 22  =Если($B$22>0;1;0)
2 50  =Если($B$50>0;1;0)
как написаь формулу, чтоб можно было подставить в формулу ЕСЛИ соотвествующее число из ячейки A1, A2
Уникальные значения при множестве доп условий
 
Приветствую
Господа, прошу помощи в решении вопроса.
Попробую сформулировать: из диапазона, нужно получить КОЛИЧЕСТВО уникальных значений, при этом есть ряд дополнительных условий, как день, месяц и т.д.
Файл приложил
Спасибо заранее.
удалить дубли ячеек уходящие вправо
 
Приветствую!
Ребята прошу помощи.
На входе имеем таблицу в 500к строк в 2 столбца, которую предварительно почистил от дублей с помощью внутреннего "Данные -> Удаление дубликатов".
В итоге получилась вроде бы, чистая таблица.
Но когда я применил макрос копирования данных вправо, для 1 и той же позиции.
у меня справа продублировалось много одинаковых значений.
Подозреваю, что мой макрос где-то неправильный, Но суть в том, чтоб сейчас удалить дубли ячеек в 1 строке.
Подскажите куда смотреть

Пример во вложении.
Буду признателен за конструктивные предложения.
Включить/отключить автофильтр
 
Приветствую.
Ребята подскажите пожалуйста.
Как программно снять или установить автофильтр.
т.е. я хочу зайдя на любую страницу книги
понять включен ли фильтр или нет, и если нет включить, (ну и если да, то выключить)

Пробовал так, не фурычит.
Код
Rows("1:1").Select
    If (AutoFilterMode = True) Then
        AutoFilterMode = False
    End If

Смотрел по этой теме http://www.planetaexcel.ru/forum/?PAGE_NAME=read&FID=8&TID=11292, но там этого нет. Есть определить активность, но вот как с ней работать, непонятно.
Спасибо заранее.
Удаление дублей по условию
 
Приветствую.
Ребята подскажите как правильно реализовать такой момент:
У нас есть 2 листа, на одном массив данных(Имя;email), на другом (email, количество)
У нас есть массив данных, например Имя, Email
Нам нужно удалить дубликаты по email на листе с данными, но при этом, нам нужно не удалять те email и в таком количестве штук как это указано на втором листе.

Пример в файле
Заполнение пустых ячеек (по типу ctrl+g)
 
Приветствую
Ребята подскажите пожалуйста, можно ли сделать заполнение ( по типу Ctrl+g) чтоб заполнить пустоту вот в такой ситуации (рис). Спасибо заранее.
Удаление строк через метод .Find
 
Приветствую!
Прошу помощи в решении:
Необходимо удалить строки на всей книге ексель при совпадении искомого, при этом не удалить на листе самого поиска.
Записал макрос и немного подпилил
Код
    Sheets("name").Select
    Cells.Find(What:= _
        "12345678" _
        , After:=ActiveCell, LookIn:=xlValues, LookAt:=xlPart, SearchOrder:= _
        xlByRows, SearchDirection:=xlNext, MatchCase:=False, SearchFormat:=False) _
        .Activate

    a = ActiveCell.Row
    Rows(a).Delete
Но возникли вопросы:
1) как удалить все совпадения, код выше удалит только первое?
2) как понимать, что совпадений совсем нету?
3) как оставить искомое на определенном листе или листах?

количество листов может варьироватся.
Страницы: 1 2 3 4 5 След.
Наверх