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

Страницы: 1 2 След.
Найти среднее на пересечении ближайших совпадений в таблице
 
Здравствуйте! Прошу помощи с формулой.
Есть табличка процентных ставок. На каждую сумму и срок - своя процентная ставка.
В таблице указаны минимальные сроки и суммы.

В результате ВПР нужно посчитать ближайший процент, удовлетворяющий данному сроку и сумме.
Думаю, лучше найти среднее значение на пересечении. Немного зависаю с формулой, прошу подсказать.
Курс валюты с nbrb.by
 
Здравствуйте!

Есть такой макрос
Код
 Public Function GetBR(ByVal CurrencyName As String, Optional ByVal d As Date) As Double
     Dim sURL As String
     If d = 0 Then d = Now()
     sURL = "https://www.nbrb.by/services/xmlexrates.aspx?ondate=" & Format(d, "mm/dd/yyyy")
     Dim oXMLHTTP
     On Error Resume Next
     Set oXMLHTTP = CreateObject("MSXML2.XMLHTTP")
     With oXMLHTTP
        .Open "GET", sURL, False
        .send
        k = Split(Split(.responseText, CurrencyName & "</Name>")(1), "</Rate>")(0)
        GetBR = Val(Right(k, Len(k) - InStr(1, k, ">")))
     End With
     Set oXMLHTTP = Nothing
End Function
Можно получить курс валюты по ее названию, например @GetBR("Доллар США")
Если поменять </Name> на </CharCode> чтобы тянуть по коду (например @GetBR("USD")) - не получается. Можете помочь с вопросом?
Спасибо.

Или, возможно есть рабочий макрос у кого-л., если не против поделиться. По коду валюты.
Изменено: Remphan - 19.10.2022 11:20:32
Отключить обновление и пересчет данных при изменении Power Pivot
 
Здравствуйте!

Через Power Pivot обновляю данные таблицы SQL-запросом. После малейшего изменения эксель начинает чтение данные и рефреш, что занимает много времени

1. Этот плагин поставить не могу, прав нет.
2. Сводных таблиц в книге около полусотни.

Как отключить макросом или в настройках чтение данные при изменении в модели данных?
Задача - обновить в модели данных несколько табличек и только после этого перечитать данные. После каждой - очень долго.
 
Как отредактировать SQL-запрос в свойствах таблицы?, В Power Pivot. Запрос более допустимого ограничения
 
Добрый день.

Запускаю Power Pivot. Перехожу на вкладку "Конструктор" -> "Свойства таблицы".
Открывается окно "Изменение свойств таблицы".

Нужно отредактировать "Инструкция SQL" - запрос, содержащий порядка 1 млн. символов.

Проблема. Данное окно позволяет ввести не более 32 000 символов. Т.е. в окне не отредактировать. При копировании во внешний редактор и обратно обрезается до 32 000 символов.

Поэтому, не понимаю, как можно вообще отредактировать данный запрос?

Через подключения не дает. Т.к. пишет, что подключение было изменено через Power Pivot.
odp.net и excel, как?
 
Коллеги, привет.

У меня MS Office 2021. Что нужно поставить, чтобы соединиться с базой Oracle по сабжу?
Т.е. я в свойствах подключения выбираю Oracle Data Provider for .Net и получаю ответ Unable to get provider information. Reason:Не удалось найти запрошенного поставщика данных .Net Framework. Возможно он не установлен.

Таблица большая, иных вариантов нет (но буду признателен если вы подскажете). Все испробовал.

Прошу ответить тех, кто на практике проходил вопрос. Т.к. Net Framework не является решением вопроса.
Изменено: Remphan - 12.04.2022 21:14:12
Суммирование по условиям
 
Здравствуйте. Прошу подсказать, как добавить в условие суммирования третье условие.
Нужно найти все суммы на пересечении условия:
  • Дата в столбце B <= 12.01.2021
  • Дата в столбце C или пуста или >= 11.08.2021
Не могу вспомнить, как добавить условие "или пуста". Не получается просуммировать одной формулой
Отображение начальной и конечной даты на диаграмме Ганта
 
Вопрос дурацкий.
Слева на диаграмме отображаются даты начала работы. Справа от длительности нужно (аналогично, симметрично) добавить дату окончания работы.
При добавлении нового ряда "Окончание работы" начинается треш. Так просто новый ряд не добавить.
Давно не работал в эксель, не могу сообразить. Использую для себя в проекте.
Многострочкая шапка сводной таблицыю Заголовки переместить в строки
 
Добрый день. Есть табличка, похожая по структуре на вложенный пример.
В примере три столбца в сводной, в реальном файле - более 70. Когда заголовок столбца находится не слева в строке напротив данных, то неудобно читать и фильтровать.
Возможно ли это сделать? Нужна именно такая "многостолбцовая шапка" и поменять ее возможности нет. Какие возможные способы решения есть? Если не менять структуру.
Изменено: Remphan - 07.04.2021 11:52:14
ПРЕДСКАЗ.ETS. Как заменить на понятную в старых версиях эксель
 
Подскажите пожалуйста, чем можно заменить эту формулу? В старых версиях эксель расчет не отображается.
ТЕНДЕНЦИЯ не подходит.
Что "под капотом" у этой формулы? Можно ли ее расписать пусть и в большой длинный, но понятный всем версиям эксель расчет?
Изменено: Remphan - 09.03.2021 12:55:52
Облачный эксель?
 
Здравствуйте!

Мне требуется Excel и Power BI для работы, в "максимальной комплектации" :) Что скажете про Office 365? Ни разу не пользовался, понятия не имею что это. Возможно ли там работать так же комфортно, как в обычном локальном экселе, на полную мощь?

Дома миникомпьютер на линукс. Рассматриваю варианты или облачной виндоуз с пакетом MS по приемлемой цене или Office 365. Может кто что либо посоветует? Обработка больших массивов данных. От 0,5 Гб вес файла и выше.

Слышал, что MS запустит Cloud OS на Win 10, но когда это будет и сколько ценник установят... А про 365 Office вообще не в теме, замена ли обычному эксель? И как быстро он обрабатывает информацию (лимит по вычислительным операциям и памяти)
Изменено: Remphan - 06.02.2021 18:27:15
Суммирование по нескольким условиям
 
Добрый день.
Не получается провести суммирование по нескольким условиям, приложил пример. Начал формулу и понимаю что запутался, не до конца понимаю как прописать необходимое условие, завис.
По сути хотелось бы просуммировать по таблице так, как сейчас в ней фильтр установлен.
Все заказы 2020 года по определенному заказчику и менеджеру. И при этом сложить все суммы по выбранным годам (по заголовкам просмотреть).
Изменено: Remphan - 27.10.2020 15:18:36
Лист с показателями по проектам (собираемый вручную), нужна идея как оформить
 
Всем привет!

Прошу навести на идею или подсказать,как лучше оформить лист дашборда в эксель, в котором:
Есть проекты, по годам. Могу повторяться а могут и не повторяться.
По проектам есть некие расчитанные показатели. Или цифра, или процент.

Нужен лист дашборда, на котором можно быстро отследить влияние проектов от года к году. Показать взаимовлияние проектов на показатели.

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

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

По сути - каждый месяц прибывают новые клиенты. Они нам платят. Но мир неидеален, и начиная с первого месяца и далее - клиент может отказаться от услуг. Как правильно посчитать выручку накопительным итогом с учетом этого факта? Вручную это нереально, если много месяцев и лет. Пример во вложении. Строка 5, не получается ее автоматизировать.
Удаление неиспользуемых первых строк и столбцов до используемого диапазона
 
У меня есть табличка-выгрузка. До шапки есть несколько пустых строк и слева пустые столбики. Сделал удаление пустого пространства сверху и слева, чтобы осталась только табличка.

Все хорошо, просто нужен совет, два цикла подряд - как-то нехорошо?
Код
Sub DeleteEmptySpace()
    LastRow = ActiveSheet.UsedRange.Row - 1 + ActiveSheet.UsedRange.Rows.Count
    LastClm = ActiveSheet.UsedRange.Column - 1 + ActiveSheet.UsedRange.Columns.Count
    Application.ScreenUpdating = False
    For R = LastRow To 1 Step -1
        If Application.CountA(Rows(R)) = 0 Then Rows(R).Delete
    Next R
    For N = LastClm To 1 Step -1
        If Application.CountA(Columns(N)) = 0 Then Columns(N).Delete
    Next N
End Sub

или так

Sub DeleteEmptyRows()
Dim i&, LastRow&, LastCol&
With ActiveSheet.UsedRange
    LastRow = .Row - 1 + .Rows.Count
    LastCol = .Column - 1 + .Columns.Count
End With
Application.ScreenUpdating = False
For R = LastRow To 1 Step -1
    If Application.CountA(Rows(R)) = 0 Then Rows(R).Delete
Next R
For N = LastCol To 1 Step -1
    If Application.CountA(Columns(N)) = 0 Then Columns(N).Delete
Next N
End Sub
 
Изменено: Remphan - 05.07.2016 22:23:50
Дата и время в отдельную ячейку в зависимости от значений диапазона
 
Макрос работает так - при изменении в столбцах G и H - пишет дату и время изменения в столбец P

Не хватает пары моментов:
1. добавить к отслеживанию изменений столбец J. То есть, если либо в G, либо в H, либо в J произошли изменения - то дату и время в столбец P
2. второе для меня еще сложнее. Если одновременно будут пусты G, H и J - то очистить соответствующую ячейку в P (убрать дату и время).

Код
Private Sub Worksheet_Change(ByVal Target As Range)
Dim rInt As Range, rCel As Range
Set rInt = Intersect(Target, Range("g10:h" & Rows.Count))
    For Each cell In Target   'проходим по всем измененным ячейкам
       If Not rInt Is Nothing Then
            If IsEmpty(rInt) Then
                 Range("p" & cell.Row).Value = Empty
            Else
                With Range("p" & cell.Row)
                    .Value = Now
                    .NumberFormat = "dd.mm.yyyy hh:mm:ss"
                    .EntireColumn.AutoFit
                End With
            End If
       End If
    Next cell
End Sub
Скрыть все строки после последней заполненной ячейки
 
Сам вопрос в заголовке. Найти последнюю заполненную ячейку, как понимаю - можно как ниже?. Допустим, любые данные в столбце А, с ячейки А5 по, допустим, А10
Получаем, что нашлась ячейка А10, как последняя заполненная.

А как скрыть все строки от последней заполненной ячейки и в самый низ до конца?

Код
Sub Get_Last_Cell()
r = Range("A5:A" & Rows.Count).End(3).Row
End Sub
Совместная работа в одной базе, нужен совет
 
Подскажите, пожалуйста, видение решения.

Есть большая база в эксель. 250-500-700 тысяч строк на 60+ столбцов.
Работать с базой хотелось одновременно большому количеству человек, причем локально. С локальным файлом, именно Excel.

Долго думал - пришел к выводу, что общая книга здесь не вариант (если ошибаюсь - поправьте).

Если это будет Access, подключение через ADO - то обязательно нужно ведение лога изменений БД/разрешение конфликтов и прочее. И разграничение прав на редактирование (логин/пароль/права). Вести лог здесь нерационально.

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

Какие есть варианты быстрой работы в локальных копиях эксель с одной базой (или в одной базе). Чтобы велся лог изменений. Вести лог просто, если не акцесс... А просто общая книга с живой базой на такое количество - не уверен, что это будет нормально.

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

Отдается на заполнение двум менеджерам, каждый должен внести данные по себе напротив своих клиентов. Каждому свой локальный файл в сети.
Первый внес данные, второй внес данные. Наконец, 10-й менеджер внес данные. Упростим до двух менеджеров.

В идеале каждый вносит данные только по себе. Но, если вдруг менеджер 2 ошибся и внес данные напротив тех клиентов, напротив которых уже внес данные 1 менеджер. Таблицы две - легко проверить. А если 10 менеджеров и довольно большие файлы?

Если использовать PowerQuery, но как быть, когда данные могут конфликтовать и по довольно большому количеству строк?
Как объединить таблицу 2 и таблицу 3, чтобы неконфликтные данные:

1. в таблице 2 есть, в таблице 3 пусто (или наоборот);
2. в таблице 2 и в таблице 3 одинаковы.

были объединены в одну единую таблицу в соответствующие столбцы. А конфликтные данные - были бы как-то отмечены, чтобы удобно выяснить, кто и почему не согласовал действия? (10 менеджеров, 10 локальных файлов - каждый с одним листом и 1 табличкой).

Может быть, подскажете пример запроса "Данные-из файла-из папки" для двух файлов на примере таблицы 2 и таблицы3? Слияние неконфликтных данных из двух отдельных файлов одной папки и какое-то удобное представление в этой же сводной табличке для конфликтных (чтобы было понятно, кто сделал не так и отдать для исправления, а после исправления обновить запрос...)? Варианты конфликтов подсветил.

Кросс
Подключение БД Access к Excel, с контролем доступа
 
Уважаемые форумчане, такой вопрос:

Есть таблица в Access. Вопрос в том, чтобы иметь возможность подключить ее к Excel. Разрешить одновременную работу с базой нескольким пользователям. Каждый чтобы мог загружать локальной экселевский файлик и далее в нем ковырять и записывать в базу.
Т.е. загрузить в Excel базу Aceess в таком же виде табличном, как она в Access и представлена.
Но при этом логгировать действия пользователей (по-возможности) и сделать запрет на изменение определенных диапазонов (либо столбцов).

Как это вообще делается? Со связкой Access + Excel ранее не сталкивался, только с Excel.

Нашел тут пример, но как решить вопрос с ведением лога, общим доступом к базе из локального файла и запретом на изменение некоторых столбов?
Изменено: w00t - 26.02.2016 11:47:30
Универсальный ВПР макросом
 
Помогите, пожалуйста. Часто нужно сравнить две любые таблицы по общему столбцу (которые обычно находятся в разных файлах и столбец общий не всегда имеет одинаковый номер по счету). Т.е. таблицы могут быть разного вида, и сравнивать нужно по разным столбцам. Например, в одной это может быть столбец B а в другой столбец для сравнения это AA.

Упрощенный и идеальный пример (если это не разные книги, а соседние листы) - это файл index.xlsb
Вариант тот же макросом - index2.xlsb

Формулу можно протянуть и как угодно под себя поменять. Просьба помочь с макросом. Не могу сделать правильно следующее:
1. Таблицы могут быть в разных книгах и могут иметь разные столбцы для сравнения (а не только первый). То есть было бы хорошо, чтобы макрос выдал, что с чем сравнить и что откуда и как подтянуть (rng = Application.InputBox("Select cell(s)",type:=8);
2. Таблицы для сравнения могут иметь фильтры по столбцам. Поэтому хотелось бы сравнить только видимый диапазон и извлечь и подтянуть только видимые значения. Если формулу тянуть -то запариться при большом количестве строк.

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

Почему подумал, что нужен макрос - строк может быть много. Формула не справляется с объемом.
Изменено: w00t - 18.01.2016 21:37:32
Сравнить по двум условиям и отобрать по третьему
 
Формула долго отрабатывает при большом массиве данных. И второй момент
Дело в том, что по сути условия, на примере:

для файла "Копия 6635558-2.xlsx":
С2=С8. Так же C2=C9. K9 напротив найденного C9 больше K8, поэтому диапазон E9:J9 нужно скопировать в E2:J2
В данном случае не вполне правильно отрабатывает..
Заранее спасибо. Кросс
Поиск во всех файлах и папках, подправить макрос, error 91
 
Добрый день!
Интересует тема http://www.planetaexcel.ru/forum/index.php?PAGE_NAME=read&FID=8&TID=14124&PAGEN_1=3

1. Макрос выбивает на строке Loop While iFoundRng.Address <> firstAddress (ищется допустим текст "111" в пятидесяти разным образом заполненных файлах, в которых листов от 1 до 15, в которых значение "111" может повторяться раз 100). Ошибка 91;
2. С листа список некорректно ищет.

Просьба помочь.
Есть кросс
Но оригинал отсюда, поэтому и решил здесь спросить.
Спасибо.
Актуальная версия CompareFilesFind от Hugo
 
Подскажите, пожалуйста. Где можно скачать эту замечательную утилиту на vba. Последнюю версию.
По старой ссылке на nxt ничего не открывается.
поиск во всех файлах и папках
 
Добрый день.

Хочу поднять архивную тему с хорошим макросом

Суть в том, что макрос не работает, если поиск осуществляется по файлам с объединенными ячейками. (в книгах фильтры и много объединенных ячеек). Возвращает первое найденное значение и завершает работу.

И второй момент: если в списке указать одно значение - возвращает ошибку.

Т.к. я могу править небольшие макросы, но данный затрудняюсь, - может автор посмотрит.. или кто-л. кому будет интересен именно поиск средствами vba в excel..
Помогите поправить макрос форматирования ячеек
 
B2:CV нужно форматировать набором иконок IconSets(xl3Symbols2)
Первый столбец жирным
Все остальные жирным и по центру
Т.к. первая строка имеет заголовки не могу сообразить
Корректная проверка на скрытые листы
 
Подскажите, пожалуйста, по части кода. Если листы есть Hidden - обрабатывается корректно. Если есть листы VeryHidden -некорректно. Суть в том, что при вызове формы в комбобокс подставляется текущий лист), как правильно видоизменить (см. ниже)?

Код:

Код
Function addListsToComboBox(myCombobox As ComboBox) As Integer
Dim wb As Workbook
Dim sh As Worksheet
Dim shActName As String
Set wb = ActiveWorkbook

shActName = ActiveSheet.name

f = wb.name
returnValue = 0
VisibleListCount = 0

For j = 1 To wb.Sheets.Count
Set sh = wb.Sheets(j)
If sh.Visible = True Then
VisibleListCount = VisibleListCount + 1
End If
Next

For j = 1 To VisibleListCount
Set sh = wb.Sheets(j)
If sh.Visible = True Then
myCombobox.AddItem (sh.name)
If sh.name = shActName Then
returnValue = j - 1
End If
End If
Next

addListsToComboBox = returnValue
End Function
Прогнозирование продаж и кол-ва покупателей товара
 
Здравствуйте!

Читал все темы по прогнозированию, но, у меня есть неполные данные за предыдущие 6 мес. Как будет правильно спрогнозировать кол-во покупателей и доход на их основе? Фактор сезонности в данном случае, думаю, можно в расчет не брать.
Событие на переименование листа
 
Такой вопрос: в книге много листов. На добавление нового листа происходит выполнение макросов. но, требуется чтобы на переименование он не срабатывал, ибо считает переименованный лист за новый.

Т.е. предупреждение реакции любых иных макросов на событие переименования.
Подскажите, в каком направлении лучше подумать для реализации.
Изменено: w00t - 24.02.2013 03:30:30
Формулы на русский язык
 
Здравствуйте, есть формула для английской версии excel, считает разницу между датами.

=TRIM(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(YEAR(A2)-YEAR(A1)-(TEXT(A2,"mmdd")< TEXT(A1,"mmdd"))&" Years "&MOD(MONTH(A2)-MONTH(A1)-(DAY(A2)< DAY(A1)),12)&" Months "&A2-MIN(DATE(YEAR(A2),MONTH(A2)-(DAY(A2)< DAY(A1))+{1,0},DAY(A1)*{0,1}))&" Days","0 Years",""),"0 Months",""),"0 Days",""))

Нужна именно она, и никакая другая, но: пытаюсь перевести на русский формулы по соответствию  - всеравно выдает ошибку в формуле...
Страницы: 1 2 След.
Наверх