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

Страницы: 1
Фильтр по дням Сегодня и Вчера
 
Добрый день! Подскажите, пожалуйста, как установить фильтр за сегодня и вчера? Ниже строка кода работает только по первому критерию, как сделать 2 условия одновременно? Спасибо!
Код
wb1.Sheets("Лист2").Range("A:Z").AutoFilter Field:=6, Operator:=xlFilterDynamic, Criteria1:=xlFilterYesterday, Operator:=xlAnd, Criteria2:=xlFilterToday
Изменено: slider85 - 01.12.2021 06:26:43 (добавил файл)
Перенос значений на другой лист по заданным условиям
 
Добрый день! Нужна помощь.
Есть массив данных (лист 1 в приложенном файле), строк может быть сколько угодно, столбцы не меняются. Необходимо перенести все значения из диапазона, ограниченного значениями S111, на второй лист в ячейку А2, и далее ниже. То есть, берется первое значение напротив S111 на Лист1 и копируется на Лист2, пока не появится пустая ячейка (напротив второго S111). Количество ФИО в столбце В на Лист1 постоянно меняется (обычно в большую сторону).
Заранее благодарю за помощь!
Изменено: slider85 - 06.02.2021 11:14:23 (изменил содержание файла для наглядности)
Копировать данные из одной книги в другую начиная с пустой строки (копированием не затирать прежние данные)
 

Добрый день! Помогите, пожалуйста, адаптировать код. Сейчас происходит копирование из книги wb1 в книгу wb3, и весь массив данных вставляется в ячейку А1 (последняя строка кода). Необходимо, чтобы данные вставлялись в первую пустую строку по столбцу А, то есть, если на листе уже есть данные например в диапазоне A1:Z350, то копировать (добавить) данные, после применения всех фильтров, в ячейку А351. Заранее спасибо за помощь.

Код
Dim wb1 As Workbook, wb3 As Workbook
Set wb1 = Workbooks("Проверка_1.xlsx")
Set wb3 = Workbooks("Проверка_2.xlsm")
    
' фильтр + копирование

wb1.Sheets("Хранение").Rows("1:1").AutoFilter
wb1.Sheets("Хранение").Range("A:Z").AutoFilter Field:=4, Criteria1:="=", Operator:=xlOr, Criteria2:="маг"
wb1.Sheets("Хранение").Range("A:Z").AutoFilter Field:=3, Criteria1:="<>", Operator:=xlOr
wb1.Sheets("Хранение").Cells.CurrentRegion.Copy wb3.Sheets("Лист1").Range("A1")
Изменено: slider85 - 18.07.2020 13:59:34
Ранжирование при одинаковом значении по дополнительному условию
 
Здравствуйте!
Помогите, пожалуйста, как сделать так, чтобы при ранжировании, если есть одинаковые значения, можно было их проранжировать по дополнительному условию (где большее значение, то становится на перовое место, чем ниже значение дополнительного условия, тем ниже ранг).
Файл прикрепил.
Заранее спасибо за помощь.
Скопировать содержимое листа из одной книги в другую
 
Подскажите, пожалуйста, что добавить в код, чтобы скопировать целиком все данные из одного листа одной книги на лист другой книги, сохранив форматирование. Строк может быть любое количество, столбцов не больше диапазона "A:Z".
На новый лист нужно вставить лист целиком, чтобы все прежние данные затерлись. Своего рода аналог ctrl+a, ctrl+c в копируемом листе,  ctrl+a, ctrl+v на листе куда вставляем.
По коду вроде все копирует, но если старых строк на втором листе больше, старые данные остаются после вставки.
Код
Sub копироватьвставить()

Dim wb1 As Workbook, wb3 As Workbook
Set wb1 = Workbooks("книга1.xlsx")
Set wb3 = Workbooks("книга2.xlsm")

wb1.Sheets("Лист1").Rows("2:2").AutoFilter
wb1.Sheets("Лист1").Range("A:Z").AutoFilter Field:=4, Criteria1:="=", Operator:=xlOr, Criteria2:="заголовок"
wb1.Sheets("Лист1").Range("A:Z").AutoFilter Field:=3, Criteria1:="<>", Operator:=xlOr, Criteria2:="заголовок"
wb1.Sheets("Лист1").Cells.CurrentRegion.Copy
wb3.Sheets("Лист1").Cells.PasteSpecial xlPasteValues
wb3.Sheets("Лист1").Cells.PasteSpecial Paste:=xlPasteFormats
  
End Sub
удалить столбцы по наименованиям, применить фильтры по строкам
 
Добрый день!
В файле на листе 1 необходимо найти столбцы содержащие в названии Промо5 и Промо6 - и удалить их.
Применить фильтр в колонках Промо2, Промо3 и Промо по значениям: Л1+S103+0 соответственно, скопировать поучившуюся таблицу и вставить на Лист 2, без первой пустой строки.
Количество строк и колонок может постоянно меняться.
Знаю как сделать используя Select и Activate, но если данных много - макрос виснет((
Спасибо за помощь.
Удалить открытый файл без сохранения макросом из другой книги, с очисткой буфера обмена
 
Добрый день. Есть открытый файл "qwerty.xlsx"в котором выполняются операции. Как очистить буфер обмена, закрыть и удалить файл без activate и select? Также чтобы не прописывать путь, так как файл создается автоматически:
Код
Workbooks.Add
ActiveWorkbook.SaveAs Filename:="qwerty.xlsx"
удаление столбцов из другой открытой книги
 

 

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

Код
Sub удалениестолбцов()
Dim wb As Workbook
Set wb = Workbooks.Ореn("Проверка.xlsx")
wb.Sheets("Хранение").Columns("E:E,G:G,H:H").Delete Shift:=xlToLeft
End Sub
Выбрать максимальное значение из нескольких строк
 
Доброго дня. Подскажите формулу, как выбрать максимальное значение для одного человека из таблицы на первой вкладке и вставить их на вторую вкладку, для каждого наименования: "Тест1" и "Тест2".
Преобразование из имеющегося текста в % значение успешной сдачи сделал по формуле ниже, а дальше пробовал и с "НАИБОЛЬШЕЕ" и с "ДМАКС", но что-то не получилось.
Код
=ПСТР(C2;(НАЙТИ("(";C2;1))+1;(НАЙТИ("(";C2;1))-1)
Макрос замена значений по заданным условиям
 
Всем привет! Нужна помощь. В файле (табель) необходим макрос, который перебирает все столбцы с F по BO (62 столбца), и заменяет по столбцам, которые не содержат "сб" и "вс", значение ячеек "ОТ" на числовое значение 8.
Необходимо учитывать, что "сб" и "вс" может быть в любом столбце (данные меняются от месяца к месяцу), плюс количество столбцов может быть разным (в зависимости от месяца - 30 дней, 31 или февраль 28/29 (соответственно 60 столбцов, 62 или 56/58).
Или с учетом того, что появляются дни (праздничные) которые также не надо включать в замену значений, прописать макрос который меняет значение в выделенных вручную столбцах заливкой (например желтой)
Заранее спасибо за помощь!
Изменено: slider85 - 17.08.2019 11:58:03
Перевести в ссылки весь диапазон
 
Добрый день!
Подскажите как сделать макрос, уже всю голову сломал:
На листе 1 в столбце E из имеющегося текста сделать гиперссылки на лист 2. Список в столбце будет очень длинный, соответственно нужно перевести в ссылки весь диапазон (исключая 1 строку и пустые ячейки).
То есть, на 1 листе вместо текста получить ссылки Телевизор1, Телевизор2... И при нажатии на ссылку Телевизор1, осуществляется переход на 2й лист.
Есть код, но он просто делает из списка гиперссылки без перехода, необходимо в код добавить адрес перехода
Код
Private Sub CreateHypelinkInTextCellv2()
    Dim iCell As Range, iText$
    For Each iCell In [E2:E15]
        iText = iCell.Text
        If iText <> "" Then iCell.Hyperlinks.Add iCell, iText
    Next
End Sub
Заранее всем спасибо за помощь.
Изменено: slider85 - 22.06.2019 19:06:34
Страницы: 1
Наверх