Добрый день уважаемые форумчане! Прошу вас оказать содействие в написании макроса VBA для объединения ячеек в строке, как указано в образце. Таких строк в таблице очень много и хотелось бы как-то автоматизировать этот процесс. Условия могут быть два скорей всего: 1) Если верхняя строка План в колонке 14, а нижняя Факт, то их объединять. 2) Если ниже строки пустота, то объединять. Либо может есть какой-то вариант без VBA решить данную задачу? Объединять необходимо до 13 столбца включительно, дальше объединение не нужно.
Добрый день! Помогите пожалуйста решить следующую проблему, если конечно такое возможно. Необходимо в VBA в Лист вставить код, именно в Лист, не в отдельный модуль при помощи запуска мароса. То есть запускаешь макрос, он выполняет свою работу и в конце вставляет код в Лист. Возможно ли такое реализовать?
Добрый день! Подскажите пожалуйста как сделать формулу СУММЕСЛИ с помощью VBA универсальной, то есть кол-во столбцов может быть больше или меньше, указанных в примере. вопрос по ячейкам отмеченным жёлтым цветом в колонке Итог.
Код
Sub Образец()
Range("I9").FormulaR1C1 = _
"=SUMIF(R4C2:R4C[-1],""<=""&R2C1,Таблица1[@[01.04.2021]:[07.04.2021]])"
End Sub
Добрый день уважаемые форумчане! Возник очень важный и интересный для реализации вопрос. Имеется умная таблица из которой с помощью запросов Power Query формируются сводные таблицы. При корректировке данных в исходной таблице и обновлении, данные в сводных соответственно обновляются. Вопрос в следующем, возможно ли каким-то образом в исходной таблице как-то отмечать ячейки, которые отредактировались (к примеру заливкой), и чтобы их можно было как-то легко находить. А после того, как все откорректированне ячейки проанализированы снимать с них выделение (заливку). Заранее спасибо за ответы!
Добрый день! Имеется исходный файл, прилагается. В нём имеется следующий макрос:
Код
Sub Расчёт()
Range("F" & Rows.Count).End(xlUp).Offset(2, 2).Select
Selection.FormulaR1C1 = "=SUMIF(R14C4:R24C4,RC4,R14C:R24C)"
Range("F" & Rows.Count).End(xlUp).Offset(2, 2).Select
Selection.Copy
Selection.Resize(Selection.Rows.Count + 8, _
Selection.Columns.Count + 6).PasteSpecial Paste:=xlPasteFormulas, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
With Selection
.HorizontalAlignment = xlCenter
.VerticalAlignment = xlCenter
.WrapText = False
.Orientation = 0
.AddIndent = False
.IndentLevel = 0
.ShrinkToFit = False
.ReadingOrder = xlContext
.MergeCells = False
End With
End Sub
Вопрос в том, каким образом можно в "=SUMIF(R14C4:R24C4,RC4,R14C:R24C)" указать переменный диапазон, то есть количество строк всегда будет разное, а также в "......Selection.Resize(Selection.Rows.Count + 8, _ Selection.Columns.Count + 6).Paste...... вместо цифр указать тоже кол-во столбцов и строк, которые будут на данный момент в форме? Заранее спасибо за помощь!
Добрый день уважаемые форумчане! Подскажите пожалуйста как можно отсортировать выделенный диапазон без его точного указания? То есть не указывая в Range ("B6:B59"), а основываясь на выделении выше. Заранее большое спасибо за помощь!
Код
Sub Сортировка()
Range("A" & Rows.Count).End(xlUp).Offset(2, 1).Select
Range(Selection, Selection.End(xlDown)).Select
ActiveWorkbook.Worksheets("Лист1").sort.SortFields.Clear
ActiveWorkbook.Worksheets("Лист1").sort.SortFields.Add Key:=Range( _
"B6:B59"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:= _
xlSortNormal
With ActiveWorkbook.Worksheets("Лист1").sort
.SetRange Range("B6:B59")
.Header = xlGuess
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
End Sub
Добрый день уважаемые форумчане! Подскажите пожалуйста, каким образом можно написать код в VBA для удаления строк по условию. Условие следующее: если в первом столбце цифра 1, то удалить все строки начиная до следующей, пока не появится в этом столбце цифра 2. Заранее спасибо большое за помощь!
Добрый день уважаемые форумчане! Подскажите пожалуйста, каким образом можно выделить в VBA необходимый диазапон ячеек? Вот таким способом выделяю необходимое количество ячеек в одном столбце
Добрый день! Подскажите люди добрые, как с помощью VBA удалить строки в которых в определённом столбце по результатам расчёта есть ячейки #ДЕЛ/0!. Заранее всем спасибо за помощь!
Добрый день! Подскажите пожалуйста, у меня есть таблица, я удаляю последний столбец, но при этом при нажатии Ctrl + End последняя использованная ячейка отображается там где и была. Как удалить этот столбец, чтобы последняя использованная ячейка была в моей таблице, а не за её пределами? Соответственно и формулы на неё начинают ссылаться, и это создаёт проблемы. Заранее спасибо!
Добрый день! Имеется исходный файл, прилагается. В столбце 11 с помощью VBA необходимо вставить формулу по типу =СУММЕСЛИ(Q$4:AU$4;"<="&$B$2;Посуточный_график[@[01.01.2021]:[31.01.2021]]), Но проблема в том, что диапазон суммирования может быть разный, соответственно и формула должна протягиваться до последнего столбца таблицы. подскажите пожалуйста, как это можно реализовать? Заранее спасибо!
Добрый день товарищи! Возникла следующая правлема6 Имеется строка с ячейками вида "01.01.2021 Объём", "02.01.2021 Объём" и т.д. Необходимо с помощью VBA преобразовать эти данные в дату и скопировать в строку ниже. Если всё делать в ручную, то проблем не возникает, но если данную процедуру записать с помощью макрорекодера и попробовать её выполнить, то здесь как раз и есть проблема, и она в том, что дата не распознаётся как дата. и чтобы она превратилась в дату необходимо зайти в редактирование ячейки и выйти из неё. Есть ли у вас предположения, как можно решить возникшую проблему? Заранее спасибо!