Поиск  Пользователи  Правила 
Закрыть
Логин:
Пароль:
Забыли свой пароль?
Регистрация
Войти
 
Выбрать дату в календареВыбрать дату в календаре

Страницы: 1 2 3 4 5 6 7 8 9 10 11 ... 14 След.
С чего начать изучение макросов (VBA)
 
@exmacros - очень хороший канал в телеgе , для начинающих самое то.  
Как вы монетизируете свои знания excel + vba?
 
Расскажу о еще одном способе монетизации.
когда - то занимался машинным обучением. Отправили меня в Москву знакомиться с главным специалистом аналитического отдела. Он очень ценился благодаря своей супер формуле расчета кой-какого значения. Мне повезло - мне дали код этой формулы. Оказывается там куча фиктивных переменных, извлечение корня и возведение в степень выражений=1. В итоге рассчииывалась обычное скользящее среднее. Его зп в три раза превышала мою. Вот так монетизация.  
Как вы монетизируете свои знания excel + vba?
 
Удаленка невозможна, большая и очень инертная кампания. Куча источников и совсем отсутствует слой данных. Приходится руками собирать. О всех трудностях глубокой аналитики без прав локального админа и с ограниченными интернетом я уже писал когда-то. Конечно помимо макросов требуется экономическое образование и аналитический склад ума, но не в этом суть. Люди идут из других контор, бьют пяткой в грудь что могут все. А по факту цикл по ячейкам написать не могут.  Зп реально выше рынка, но в отсутствии предложения будем искать студента на грейд ниже.  
из excel пока можно работать со Скриптами  R/python/c++/ fortran.  остается лучшим пользовательских интерфейсом для ввода хотелось. Дальше вешать кнопку и запускать все что угодно.  
Как вы монетизируете свои знания excel + vba?
 
День добрый, смотрел в сторону freelance на международном рынке - везде перебивают индусы. Они готовы писать макросы за копейки. Причем у многих есть хорошие отзывы. Мне на работе за час больше платят.
на работе монетизировать-у нас в Самаре кадровый голод знающих vba. Два месяца ищу себе помощника 50-60к на руки - никого нет, кто бы знал как for... To.. Next  написать.  
Изменено: egonomist - 10 фев 2020 10:20:58
Функция ближайший рабочий день на VBA
 
День добрый.
Для раскрытия темы выходных дней - во вложении макрос собирающий все выходные дни из Консультанского производственного календаря.
Каждый год скачиваю календарь в doc формате, дергаю даты, потом уже использую всевозможные формулы.

Сейчас появился еще один вариант, используя веб-запрос,  дажеR пакет сделали с его использованием.
Но пока непонятно как быстро и как долго будут обновлять данные о выходных днях.
Нечёткий поиск / Fuzzy Lookup: как повторить или подключиться через VBA
 
День добрый.

Всегда пользуюсь fuzzyvlookup функцией от Уважаемого Pharmaprofi.
В надстройке все модули открыты. Просто переношу модуль в свою книгу и использую как udf или в vba.

Еще раз огромное спасибо Pharmaprofi за труд.
Возможности разработки взаимодействия с БД (выбор инструментов), Javascript ИЛИ VBScript
 
День добрый.
Возможно это уже оффтоп, кратко по вопросу:
Не разрешено политикой безопасности.
Аналитика - это бизнесовая часть, не входит в иерархию ИТ-трудно лоббировать свои хотелки.
До вируса Петя можно было все,после ничего.
Служебками можно выбить установку по на свой комп,
Но результат твоей работы должен быть воспроизводим на пк других пользователей.

Маленькое дополнение к предыдущему посту:
Для каких задач используется:
1) Excel + R + sqlite - любые задачи обработки, хранения, визуализации данных. Пакеты data.table, dbplyr, tidyverse для обработки, ggplot2, shiny - графики, веб отчёты. Выполняемых код, находится на листе, его можно менять формулами, результаты работы сразу в Excel.
2) knime - парсинг json от рест запросов к веб сервиса,
ETL для бд, прогнозирование нагрузки контакт центра.
3) talend - обработка больших данных (более 10 млн. Строк), качественные тесты данных, join big data, Etl.

Для прочего BI ещё есть metabase.  
Изменено: egonomist - 15 ноя 2019 06:08:38
Возможности разработки взаимодействия с БД (выбор инструментов), Javascript ИЛИ VBScript
 
Добрый день. Давно просматриваю данную ветку - очень знакомая боль. Хочу поделиться своим опытом.

На всех предыдущих местах работы - ритейл, банковский сектор, нефтянка - обычному пользователю и главному специалисту не дают прав локального администратора. Нет возможности зарегистрировать dll, сделать pip install, тем более поставить borland or c++.

Использую следующую экосистему:
1) Excel + R (portable version) + sqlite:
Не требует прав администратора, R легко конектится к бд, можно делать параллельные вычисления, куча пакетов для json.
Пакет Excel.link позволяет запускать R из Excel vba.
Пакет RSQLite позволяет лить все в локальную бд избегая переполнение памяти.

2) аналитическая платформа knime:
Легко работать с json, rest api, любые бд. Итоговый workflow компилируется в bat файл, в Excel макрос готовит входные данные, потом запуск bat.

3) Talend Di - любые бд, любые данные, итоговый workflow компилируется в jar архив. Из Excel запускается консольная команда.
Talend esb - можно запустить свой rest api и уже из Excel посылать post запросы.

Все опен сорс, все быстрое, доступное обычному пользователю. Access использовал только как adp к SQL серверу.  
Мощность Power Query
 
день добрый,
обработку большого xml можно вести в Talend Data Integration Studio (бесплатное open source ПО) - легко можно создать любой ETL workflow.
job можно скомпилировать в jar и запускать по расписанию. Результат работы можно писать в любую БД.
Для себя сейчас открыл мощную связку Excel/Access (ввод данных) -> VBA->sqlite  (data storage)- не требует развертки сервера и прав администратора.
Перевод Dictionary в таблицу, Как преобразовать словарь в таблицу на листе
 
Уважаемые коллеги, вечер добрый.
Помогите пожалуйста с преобразованием словаря в обычную таблицу на листе.
Источник данных:
Веб сервис - POST запрос - получаю JSON.
его я могу распарсить в R и ручками привести к таблице (муторно и лень),
распарсил в KNIME, перевел в XML, далее через XPATH (не совсем удобно для конечного пользователя - нужно делать веб морду)
Хочу в excel.

Сам источник представляет собой 18 столбцов-списков, по одному документу/записи  могут быть 5 значений в списке номер 3 и 7 значений в списке 8 и т.д.
глубина списка динамическая величина.

Огромное спасибо EducatedFool за совет на просторах форума по считыванию ResponseBodyвместо RespinseText для борьбы с кодировкой.
Получил в excel JSON, распарсил его через CDataset.xlsm (уже обсуждался на форуме) - на выходе Dictionary с child.

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

пример JSON {Имя:Иванов; Фамилия : Петров; Любимый цвет : {цвет1:красный; цвет2:синий}
аля словарь
                     Имя: Иванов
                     Фамилия: Петров
                     Любимый цвет
                     Любимый цвет - child(1) цвет1 = красный
                     Любимый цвет - child(2) цвет2 = синий

Как хочу
Имя       Фамилия  Любимый цвет
Иванов Петров       красный
                                синий

Прошу прощения, может быть непонятно объяснил, давно к vba не подступал - забыл уж многое.
Есть ли будущее у VBA
 
Доброго дня, всем.
Просьба особо не пинать - я опять со своим R - просто как альтернатива.
Сейчас полностью ушел в data mining в ритейле - для решения задач функционала экселя просто не хватает.
Сделал следующую связку - эксель для сбора данных от пользователей (настройки, параметры расчетов), по кнопке вызывает R portable version, где применяются расчеты с техниками машинного обучения, результат выводится в виде веб-страницы (пакет Shiny). Таким образом можно работать с big data сохраняя удобный для пользователя интерфейс.
Решаемые задачи - прогноз продаж по категориям с дневной календаризацией с учетом динамической сезонности, парсинг данных с сайтов, обработка REST запросов.  
Парсинг сайтов с авторизацией, а именно сайта на Битрикс
 
to JeyCi - вставлю свои пять копеек, я опять про R. На данный момент - это лучшая среда для парсинга сайта (через него парсю авито).
google пакеты rvest (легкий парсинг по css/xpath), rSelenium (тут и тут есть туториал). В rSelenium lля динамических сайтов используется браузер phantomjs, сайт прогружается в браузере, а потом его структура конвертируется в обычный html.

p.s: в этом году microsoft выкупила платформу разработки R,  теперь R это официальный мелкософтный язык программирования. устанавливается без запроса прав администратора тыц. R интегрирован в oracle и sql server.
Неактивны вычисляеме меры OLAP-куба
 
эту надстройку пробовали?
позволяет самому задавать вычисляемое поле, но только на уровне выводимых в сводную таблицу данных.
Если нужно создать новую вычисляемую меру, которая будет агрегироваться на всех узлах куба - тогда нужно запускать выполнение mdx запроса
Код
"With MEMBER [Measures].[my_calc] as iif([Measures].[ACT REST]>0,[Measures].[ACT REST]+1,null) " & _
                              "SELECT Non Empty (...) ON COLUMNS, " & _
                              "NON EMPTY (...) ON ROWS " & _
                              "From ...
                              "WHERE (..., " & _
                              "[Measures].[my_calc] ) " & _
                              "CELL Properties Value, FORMAT_STRING, LANGUAGE, BACK_COLOR, FORE_COLOR,FONT_FLAGS"
Задание выбор периода дисконтирования в модели DCF, Оптимизация модели DCF
 
удалось выложить файл с телефона
Задание выбор периода дисконтирования в модели DCF, Оптимизация модели DCF
 
вашу задачу можно решить используя таблицы подстановки.
но реализовать функцию на vba не получится (в пользовательских функциях нельзя задавать значение ячейке ((()
в который раз не могу вставить файл в сообщение (chrom). киньте в личку почту - вышлю файл.
вместо этого лист с расчетом можно скрыть, на пользовательском листе сделать выпадающий список с периодами, по которым будет подтягиваться расчитанное значение.
Изменено: egonomist - 24 май 2016 11:30:18
Трехмерный график
 
можно использовать другие программы для построения 3d графиков (не могу прикрепить файл, могу кинуть на мейл пример)
Изменено: egonomist - 6 май 2016 14:39:49
Дизассемблирование макроса, узнать логику кода
 
первый гуглинг по этому вопросу дал эту ссыль - может подойдет.
Получить адрес на файл убрав ThisWorkbook.Path
 
Код
x=Application.GetOpenFilename
y=ThisWorkbook.Path
ссылка=right(x, len(x)-len(y))
VBA изменение группы выделенных листов
 
Wow! То что нужно, Пытливый,огромное спасибо!
Код
Range("AH4").Select
    ActiveCell.FormulaR1C1 = "=SUMIFS(R[-1]C19:R[-1]C30,R2C[-15]:R2C[-4],"">=""&DATE(YEAR(NOW()),1,1)&"""",R2C[-15]:R2C[-4],""<""&NOW()&"""")"
заработало, видимо надо было сначала макрорекодер запустить )
Всем спасибо. вопрос закрыт.
VBA изменение группы выделенных листов
 
Игорь, спасибо за ответ.
Перебором не хотелось - из-за потери времени (очень долгая выгрузка исходных данных из источников).
Кроме формул присутствует еще и форматирование. но видимо нет другого пути.
Вопрос возник так как вручную формула проставляется на группе листов, макросом нет - чую делаю что-то не так.
VBA изменение группы выделенных листов
 
Уважаемые коллеги, добрый день.
Не могу найти решение следующего вопроса - нужны знания гуру теории excel:
Макросом генерирую выгрузки одинаковых по своей структуре листов, собираю в одну книгу,  далее мне нужно вставить два столбца с формулами. Столбцы добавляются на всех выделенных листах, но формула - только на активном. (При изменении формулы макросом выделение группы не слетает)    
Код
Sheets(2).Activate
For I = ActiveWorkbook.Sheets.Count To 2 Step -1 'выделил нужные листы
    Sheets(I).Select (False)
Next
Columns("AH:AI").Select : Selection.Insert Shift:=xlToRight 'вставил столбцы
Range("AH4").FormulaR1C1 = "=SUMIFS(R[-1]C19:R[-1]C30,R2C[-15]:R2C[-4],"">=""&DATE(YEAR(NOW()),1,1)&"""",R2C[-15]:R2C[-4],""<""&NOW()&"""")" 'вставил формулу

как вариант  - перебор листов, но хотелось бы избежать этого.
Код
Sub AllWorkSheets()
Dim Arr() As String 
Dim I As Long 
ReDim Arr(Worksheets.Count) :Arr(0) = Worksheets.Count
For I = 1 To Worksheets.Count : Arr(I) = Worksheets(I).Name :Next I
For I = 1 To Arr(0) : Sheets(Arr(I)).Select  : Application.Run "personal.xls!MarkCells" :Next I 
End Sub
Подскажите пожалуйста, как можно вставить формулу макросом на группу выделенных листов без перебора (возможно ли это)
Срезы данных и функции КУБ()
 
Вряд ли смогу дать ответ, но хотя бы укажу направление -
функции куба работают с MS OLAP кубами, тут справка по кубмнож.
Альтернатива кубмнож - сводная таблица с фильтрами или макросом из сводной тянуть нужные данные.
Судя по вашей строке подключения - у вас подключение к таблице SQL Server, которая, возможно, используется каким-нибудь кубом.
имхо с sql server лучше работать из access без excel заморочек.
Можете копать в сторону использования ADO (на этом и на других форумах можете найти класс от Nerv для работы excel с базами данных).

Успехов.
Срезы данных и функции КУБ()
 
Добрый день.
Решение Вашего вопроса потребует использование макросов. Т.к. excel не поддерживает использование переменных в строке подключения к базе (версии до excel2010 точно, остальные не видел).
Предполагаемый вариант решения:
1) Создать дополнительный лист с таблицей подключенной к базе (назовем его temp)
2) на отдельном листе получать необходимые данные для формирования нового среза (" с помощью КУБМНОЖ, КУБЭЛЕМЕНТ...")
3) запускать макрос, который формирует для временной таблицы новую строку подключения с новым запросом.
Скрытый текст
сохранение *xls в *csv =строка на выходе в кавычках, можно ли обойти?, если в исходной строке есть запятая, то вся строка заключается в двойные кавычки. Как-то это можно обойти?
 
Добрый день. Наверное многое зависит от машины и ПО, у меня Ваш вариант и код Johny выдают результаты без кавычек.
попробуйте следующий вариант, может поможет:
Код
Dim r
Dim record As String
Open "C:\Users\SP\Desktop\1.csv" For Output As #1 
    For r = 13 To 23 
        record = "" & Range("B" & r & "") & ";" & Range("C" & r & "") & "" 
        Print #1, record
    Next
 Close #1
Библиотека 1CV82 COMConnector Tipe Library
 
Из собственного опыта - наличие доступа к надстройке не дает большого преимущества. Нужно еще знать как к нему подключиться и как выполнить запрос (эту информацию наудивление трудно найти). Создав соединение с базой нужно знать 1с язык запросов, чтоб вытянуть запрос + сделать обработку вывода в таблицу.
стандартные отчеты и так хорошо выгружаются, для создания специфических запросов лучше использовать конструктор запросов 1с.
во вложении модуль для базы access для подключения к 1с через коннектор (долго искал по сети как это сделать) (переименуйте расширение из xls в bas). Успехов.
Сбор информации при обновлении на сайте
 
Один раз можно. Сам занимался анализом переоценнености/недооцененности машин на avito и подобных сайтах. НО каждый месяц меняется структура сайта , т.е каждый месяц нужно будет заново переделывать весь веб запрос или код парсера. Делается это как раз с целью предотвратить подобный парсинг.  
Отображение желаемых значений на точечной диаграмме excel версии 2007
 
привет, в 2007 можно делать так - выделить ряд - правая кнопка - показывать подписи данных; выделяете подпись данных у одной точки, удаляете весь текст; щелкнуть в любом месте экрана. затем, ctr+z - опять возвращается фокус к надписи (уже пустой) - тыкаем в строку формул =адрес ячейки и нажать энтер. Готово. Теперь подпись данных будет нацелена на нужную ячейку.
Операция только в первый раз муторная. Сам для облигашек так же мучался. После оферты ил при новом выпуске, нужно будет лишь добавить формулку к новой точке.
Изменено: egonomist - 11 апр 2014 22:34:08
Excel 2013 + JavaScript = ?
 
JS+Excel - очень мощная штука получается, до сих пор продолжаю изучать сайт http://ramblings.mcpher.com/.
Куча статей как из экселя можно создавать колбеки, создавать графики используя d3.js, документировать код, получать данные от веб приложений,
а так же парсить сайты, связка с google documents, использовать no-sql бд. И все это благодаря связке vba+javaScript.
XML-файл не импортируется в Excel
 
Добрый день, во вложенном файле есть 2 ошибки:
1) первая строка должна содержать информацию о версии xml и о кодировке. так как у вас все по русски, то
первая строка должна быть

Код
<?xml version="1.0" encoding="windows-1251" ?>


2) теги категорий должны быть объединены в группу, иначе все что после 1 категории считается экстра информацией (может быть разные id могут помочь )
чтоб не мучиться с id, проще создать группу "list" и включить в нее все категории, для этого: вторая строка в файле будет :
Код
 <list>
далее содержимое вашего файла, последняя строка
Код
</list>

полученный файл легко импортируется в excel.
Изменено: egonomist - 14 мар 2014 12:20:54
вопрос по импорту данных с сайта ЦБ в Excel,
 
to Satan - возьмите код с сайтаИгоря.
в книге excel нажмите Alt+F11, в панели инструментов Insert-Module, вставьте текст макроса, сохраните, после этого в книге можете использовать функцию =GetRate("USD";"01.01.2014").

p.s:совет- учите макросы. я сам в прошлом экономист, сейчас аналитик отдела управления активами и пассивами в банке.
Страницы: 1 2 3 4 5 6 7 8 9 10 11 ... 14 След.
Наверх