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

Страницы: 1 2 3 4 5 6 7 8 9 10 11 ... 137 След.
Список по 4-м критериям из массива в одной книге, Список по 4-м критериям из массива в одной книге на разных листах
 
Добрый день. Можно таким макросом попробовать:
Код
Sub FillRequest()
    Dim lngI As Long, lngJ As Long, lngK As Long
    Dim arrIn, arrOut
    'пишем в массив диапазон с данными с листа Data
    arrIn = Worksheets("Data").UsedRange.Value
    With Worksheets("Заявка")
    'чистим старые данные заявки
    'Offset - отсупаем от В13 вправовниз, Resize - переопределяем размер диапазона, который чистим
    'строки считаем от размера CurrentRegion, столбцов для очистки = 2
        .Range("B13").Offset(1, 1).Resize(.Range("B13").CurrentRegion.Rows.Count - 1, 2).ClearContents
    'переопределяем размерность выходного массива, в который будем собирать данные
    'сколько строк может получиться по запросу не знаем, потому строк определяем столько же
    'сколько в исходном массиве. А столбцов нам нужно 2.
    ReDim arrOut(1 To UBound(arrIn, 1), 1 To 2)
    'запускаем 2 цикла - по строкам и по столбцам исходного массива
    For lngI = 2 To UBound(arrIn, 1)
        For lngJ = 5 To UBound(arrIn, 2)
            'если соблюдаются все равенства
            If arrIn(lngI, 1) = .Range("C8") And arrIn(lngI, 2) = .Range("C9") _
            And arrIn(lngI, 3) = .Range("C10") And arrIn(1, lngJ) = .Range("C11") Then
                'увеличиваем счетчик записей в выходном массиве
                lngK = lngK + 1
                'пишем значение в соответсвующую строку выходного массива
                arrOut(lngK, 1) = arrIn(lngI, 4): arrOut(lngK, 2) = arrIn(lngI, lngJ)
            End If
        Next lngJ
    Next lngI
    'пишем значения из массива в таблицу заявки
    'чтобы все значения влезли, переопределяем область, куда пишем через Resize
    'используя значение заполненных строк выходного массива и количество его столбцов
    .Range("C14").Resize(lngK, 2) = arrOut
    End With
End Sub
Кому решение нужно - тот пример и рисует.
Можно ли организовать в ячейке с текстом ссылку на именной диапазон и вытаскивать из неё нужный диапазон по условию
 
Добрый день. В зеленом поле так попробуйте:
Код
=ИНДЕКС(ДВССЫЛ(P2);1)
Кому решение нужно - тот пример и рисует.
Заливка ячейки разными цветами в зависимости от значения в другой ячейке
 
Здравствуйте. А что вас остановило, чтобы точно также сделать для того же самого диапазона еще правила форматирования с такими же формулами, только приравнивать к "эц", "атц" и задавать соответствующую заливку? Вы сделали это для значения "цлаивт", задали синюю заливку - повторите тоже самое для других значений с нужными заливками. А суммировать можно через Суммесли() - в справке по этой функции очень доходчивые примеры использования есть.
Кому решение нужно - тот пример и рисует.
Расчёт хранения с разными тарифами, в зависимости от сроков
 
Расчет у вас по FIFO, или по LIFO?
Кому решение нужно - тот пример и рисует.
Нужно вставить две пустые ячейки, заполенные сместить вправо
 
Может проще одну кнопку и чтоб работало опираясь на активную ячейку?
Кому решение нужно - тот пример и рисует.
Как имеющийся код автоматического запуска макроса перевести в "ручной режим".
 
Есть. Изменить название (то, что после Sub и до первой скобки), переместить код в стандартный модуль, а не в модуль листа, потом нарисовать кнопку и назначить ей макрос.
Изменено: Пытливый - 13 Дек 2019 14:28:23
Кому решение нужно - тот пример и рисует.
вставка и растягивание формулы до конца строки в последнюю незаполненную ячейку
 
Скажите, а какая "другая" формула должна встать после "первой"? В примере кода только одна формула которой заполняется диапазон G1:GпоследняяЗаполненнаяЯчейкаПоG.
Надо, чтобы G1 не затрагивалась? тогда надо в изначальном коде G1 заменить на G2, например... или что нужно? Непонятное очень пояснение.

P.S. Внезапная догадка! Может, вам надо вставить формулу в диапазон G1:GпоследняяЗаполненнаяПоСтолбцуА ?
Изменено: Пытливый - 13 Дек 2019 13:10:37
Кому решение нужно - тот пример и рисует.
Через каждые N символов поставить разелитель
 
Макрос в тексте не работает. :) Файл-пример сделайте, покажите где исходные, где нужен результат. Что за файл-пример и прочие подробности в правилах подробно есть.

З.Ы.
Здравствуйте.
Изменено: Пытливый - 12 Дек 2019 16:52:45
Кому решение нужно - тот пример и рисует.
вычислить дату дня недели
 
Так попробуйте:
Код
=A2+(7+ПОИСКПОЗ(D2;{"понедельник";"вторник";"среда";"четверг";"пятница";"суббота";"воскресенье"};0))-ДЕНЬНЕД(A2;2)
Кому решение нужно - тот пример и рисует.
вычислить дату дня недели
 
Когда ответ пишете, внизу окна есть ссылка Загрузить файлы. Можно вернуться в одно из своих сообщений, отредактировать, загрузить файл, дать пояснения.
Кому решение нужно - тот пример и рисует.
Макрос объединение в строку с добавлением текущей даты
 
Номер строки активной ячейки можно определить так:
Код
ActiveCell.Row

А потом использовать этот номер при работе с диапазоном.
Кому решение нужно - тот пример и рисует.
вычислить дату дня недели
 
Скажите, а вам правда удобно в текстовом режиме показывать результат? Может, удобнее сделать Excel-файл пример? Показать - вот тут есть так, вот тут надо, чтобы стало сяк. И пояснить логику (если надо).
Цитата
Вопрос: как вычислить дату дату среды следующей недели?
Такой вопрос был? Что неправильно с ответом ув.БМВ?
Кому решение нужно - тот пример и рисует.
Объединение нескольких таблиц в Power Query. Нужен совет
 
Вам нужно добавление, или слияние? Это разное.
А то пишете -
Цитата

есть повторяющиеся данные и нужно сделать либо 5 таблицу в которой будут данные из этих 4
и непонятно - то ли надо исключить повторяющиеся данные (и тогда это слияние), то ли добавить данные как есть (и тогда это добавление)
Кому решение нужно - тот пример и рисует.
Объединить данные в соседних ячейках (от 2 до 6), с определенным разделителем.
 
+1 за доброго утра. :)
Можно так попробовать, если я, конечно, правильно понял задачу.
Код
=ПОДСТАВИТЬ(СЖПРОБЕЛЫ(СЦЕПИТЬ(B2;" ";C2;" ";D2;" ";E2;" ";F2;" ";G2));" ";"; ")
Кому решение нужно - тот пример и рисует.
Консолидация артикулов напротив наименования
 
Нет, так быть не должно, Показали бы пример с ошибкой - можно было бы понять, из-за чего... А так - как определить? Да никак! :)
Кому решение нужно - тот пример и рисует.
Консолидация артикулов напротив наименования
 
Закладка "Данные", надавить "обновить все".
Кому решение нужно - тот пример и рисует.
Преобразовать столбец в плоскую таблицу.
 
Через ЕСЛИ можно так:
Код
=ЕСЛИ(ИЛИ(ЕСЛИОШИБКА(ПОИСК("Городской";A9);ЛОЖЬ);ЕСЛИОШИБКА(ПОИСК("муниципальный";A9);ЛОЖЬ));A9;B8)


Предлагаю название: Добавление наименования группы в таблицу
Кому решение нужно - тот пример и рисует.
Консолидация артикулов напротив наименования
 
Добрый день. Еще, как вариант, через Power Query (см.файл). При изменении исходных данных - данные, обновить все.
Кому решение нужно - тот пример и рисует.
Копирование диапазона ячеек на другой лист
 
Так я ж, вроде, правильный синтаксис там написал уже выше, нет?
Кому решение нужно - тот пример и рисует.
Копирование диапазона ячеек на другой лист
 
Добрый день.
Мне кажется, если вы в момент выполнения макроса не находитесь на листе "Сводная_таблица_ГК", то у вас ошибка в обращении к ячейкам рабочего листа:
Код
Set d = Workbooks("Ежедневная_сводка").Worksheets("Сводная_таблица_ГК").Range(Cells(1, 1), Cells(k, 3))
'мне кажется перед каждой Cell надо прописывать полный путь.
Set d = Workbooks("Ежедневная_сводка").Worksheets("Сводная_таблица_ГК").Range _
(Workbooks("Ежедневная_сводка").Worksheets("Сводная_таблица_ГК").Cells(1, 1), Workbooks("Ежедневная_сводка").Worksheets("Сводная_таблица_ГК").Cells(k, 3))
Кому решение нужно - тот пример и рисует.
PQ: Получить дату по номеру недели и дню недели
 
А также хорошо бы знать какой вид расчета 1 недели года применяется?
Кому решение нужно - тот пример и рисует.
Найти ссылку в другой таблице и заполнить ячейку
 
Добрый день.
Вроде, должно помочь =ВПР()
Код
=ВПР(A2;Лист2!$A$1:$B$6;2)
Кому решение нужно - тот пример и рисует.
Как добавить в массив диапазон который имеет разрыв
 
Можно переопределить размерность массива через ReDim Preserve, добавив значение второй размерности и потом циклом по массиву добавить данные в соответствующие элементы из заданного диапазона.
Еще вариант - запихнуть в массив непрерывный диапазон, и работать только с нужными элементами массива, а остальные игнорировать. :)
Изменено: Пытливый - 9 Дек 2019 12:46:38
Кому решение нужно - тот пример и рисует.
Заполнение таблицы по совпадению наименований
 
Где на Лист1 дата?
З.Ы. А, увидел.
Не, я пас, извините :)
Изменено: Пытливый - 6 Дек 2019 17:33:23
Кому решение нужно - тот пример и рисует.
Заполнение таблицы по совпадению наименований
 
Добрый вечер.
1. перекидывать надо КУДА? В какой конкретно столбец на лист2?
2. Какие позиции будут добавляться в процессе? На лист1/лист2 наименования?

З.Ы. и название я бы предложил - заполнение таблицы по совпадению наименований
Изменено: Пытливый - 6 Дек 2019 17:22:14
Кому решение нужно - тот пример и рисует.
ВПР по части текста
 
Добрый день.
Я искренне восхищен упорством, с которым сделан "пример" исходной таблицы и таблицы результата, но неужели нельзя было просто файл-пример сделать и приложить к сообщению. В формате Excel? :) Из него (файла-примера) сразу бы видно было, например, с какой строки какого столбца нарисованы данные. А из вашего труда этого не видно. А это важно.
Кому решение нужно - тот пример и рисует.
Как определить первую пустую ячейку в таблице и вставить данные
 
Добрый день.
Попробуйте так:
Код
Sub CopyDataPasteToEnd()
    With Worksheets("Лист1")
        .Range("A1").ListObject.DataBodyRange.Copy 'копируем диапазон данных умной таблицы с листа1
        With Worksheets("История") 'вставляем только значения в первую пустую ячейку столбца А листа История
        'пустую ячейку получаем через метод End от ячейки А1 вниз (xlDown) и последующим сдвигом еще на строку (Offset)
            .Range("A1").End(xlDown).Offset(1, 0).PasteSpecial (xlPasteValues)
        End With
    End With
End Sub
Изменено: Пытливый - 6 Дек 2019 17:00:46
Кому решение нужно - тот пример и рисует.
Макрос для замены значений в файле. Как запустить из другого макроса
 
Добрый день. После того, как вы вставляете код вашего макроса во второй, вы второй макрос запускаете? F5 в редакторе VB жмете?
Если да - выдается в конце работы информационное сообщение о законченной работе макроса?
Код
  MsgBox "Completed executing macro on all workbooks"

Также обратите внимание:
Код
    wb.Close SaveChanges:=False 'Close opened worbook w/o saving, change as needed


З.Ы. предлагаю название темы: ошибка макроса при обработке всех книг заданной папки.
Изменено: Пытливый - 6 Дек 2019 17:03:43
Кому решение нужно - тот пример и рисует.
Удалить всё лишнее в ячейках, кроме даты
 
Достаточно неосторожно открыть файл с отключенным пересчетом в настройках - и "вот я и в Хопре!" :)
Кому решение нужно - тот пример и рисует.
Удалить всё лишнее в ячейках, кроме даты
 
У вас как формулы пересчитываются? Автоматом, или вручную? Надавите F9 - посмотрите, изменилось ли что в положительную сторону?
Кому решение нужно - тот пример и рисует.
Страницы: 1 2 3 4 5 6 7 8 9 10 11 ... 137 След.
Наверх