Поиск
Автор: Astronaut. Вот мой код вба:Sub Macros2()
Dim x As Integer
x = Selection.Value
Selection.FormulaR1C1 = Empty
Selection.FormulaR1C1 = "=RC[-2]*" & x
End SubСчитает без проблем, но не когда в ячейке дробные числа. Если поменять Integer на Double или любой другой, то выбивает ошибку 1004, я не понимаю в чем проблема. На Double отдельно может перемножать формулы, отдельно может перемножать вводные, но и то, и то вывести просто нет. Я только ...
Изменен: 25.04.2024
Читать сообщение на форуме или сайте.Автор: stalkerexe. Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Cells.Count > 1 Then Exit Sub
If Target.Column = 1 And Target.Row > 1 And Not IsEmpty(Target.Value) And Target.Offset(0, 1).Value = "" Then _
Target.Offset(0, 1).Value = Format(Date, "yymm") + (Application.Max(Range("B2:B100")) + 1)
End Sub
При добавлении числа в ячейку рядом автоматически формируется номер, состоящий из части даты ГГММ плюс 4-х значный номер.
Нужно чтобы при ...
Изменен: 08.02.2024
Читать сообщение на форуме или сайте.Автор: Reaper. Добрый день, нужен макрос для печати четных и нечетных страниц с разными полями. Есть такой, но он печатает все листы как четные. Я плохо разбираюсь в кодах и вообще не пойму как его исправить. Помогите, пожалуйста!Sub PrintActiveSheet()
Dim ws As Worksheet
Dim oddPages As Boolean
Set ws = ActiveSheet
oddPages = False
With ws.pageSetup
.TopMargin = Application.InchesToPoints(0.393700787401575)
.BottomMargin = Application.InchesToPoints(0.393700787401575)
End With
If ws.Index Mod 2 ...
Изменен: 30.01.2024
Читать сообщение на форуме или сайте.Автор: TheArhus. Добрый день!
Прошу решить следующую проблему:
Есть файл (во вложении)
Отталкиваясь от столбцов "K" и "O" нужно добавить строки по следующему условию:
Если в столбце "K" ячейки не равны 0 (нулю) и если в столбце "O" ячейки не равны 0 (нулю) то
К каждой такой строке нужно добавить строку сверху.
В этой строке ячейки со "Стоимость руб." нужно зачеркнуть.
Такую добавленную строку нужно форматировать как нижнюю, включая формат данных ...
Изменен: 23.10.2023
Читать сообщение на форуме или сайте.Автор: al.tarin. Здравствуйте!
Есть макрос, который удаляет лист после выполнения пересчета. Но появляется окно с запросом стоит ли удалить лист, ведь там есть данные.
Можно ли обойти это окно, тк нужно чтобы лист удалялся без вмешательства пользователя
Изменен: 25.09.2023
Читать сообщение на форуме или сайте.Автор: al.tarin. Здравствуйте! Необходимо чтобы сработал макрос после того, как произойдут вычисления в книге, но workbook_sheetcalculate не работает, помогите пожалуйста!
Изменен: 21.09.2023
Читать сообщение на форуме или сайте.Автор: AmarilloSlim. Здравствуйте, написал маленькую процедуру, которая в выбранном пользователем рейндже ищет заданный пользователем цвет и выдает значение определенной ячейки по соответствию этому цвету.
В принципе все работает, корректно, кроме того, что нужно постоянно вводить заново рейндж при каждом новом поиске цвета.
Можно конечно, захардкодить рейндж, но я хочу сделать программу более пластичной в случае если со временем диапазон данных разрастется.
Как сделать так, что бы инпутбокс на ...
Изменен: 18.09.2023
Читать сообщение на форуме или сайте.Автор: lists2. Добрый день! Изначальная задача состоит в том, чтобы Эксель красил красным значения больше чем три минуты 00:03:00. Вопрос на данный момент такой: нужно формат 00:00:00 превратить в формат 0:00:00 сразу для всех ячеек столбца.
Сейчас, для решения изначальной задачи форматирования я использую формулу =ЕСЛИ(L2>ВРЕМЯ(0;3;0);"КРАСНОЕ";"БЕЛОЕ"). Но данные я ввожу не в ручную, поэтому они отображаются в ...
Изменен: 16.08.2023
Читать сообщение на форуме или сайте.Автор: magistr_ken. Привет, знатоки.
Нужна ваша помощь, слева то что написано буквами это СКЮ, сверху(2001,2002, и т.д) это код магазина. А то что между ними это продажи.
Мне нужно привести это в вид где все это стоит вертикально.
При этом для каждого СКЮ должны повторяться все коды магазинов,и рядом стоять продажи этого СКЮ в этот магаз.
Пример как должно выглядеть показал.
Изменен: 04.07.2023
Читать сообщение на форуме или сайте.Автор: i molecule. Доброго времени суток!
Есть довольно длинная формула (1580 знаков), которая никак не хочет работать в VBA, даже после обработки макрорекордером – вылетает ошибка 1004.
Формула, вставляемая вручную (есть в файле-примере):
=ЕСЛИ(ИЛИ(ПСТР([@Номер];1;2)="05";ПСТР([@Номер];1;2)="06";ПСТР([@Номер];1;2)="07";ПСТР([@Номер];1;5)="08";ПСТР([@Номер];1;5)="09";ПСТР([@Номер];1;2)="10& ...
Изменен: 18.04.2023
Читать сообщение на форуме или сайте.Автор: Артём Б.
Всем добрый день!
Есть легкое непонимание, т.к. на одном пк макрос работает корректно и переносит значения ячеек из таблицы "Таблицаисточник" в "Таблицаприемник".
При попытке скопипастить макрос с заменой путей на актуальный, выходит ошибка 9, т.к. макрос не видит листа "Лист1" в "Таблицаисточник", но если добавить лист под названием "Лист1" - все значения исправно встают куда им нужно, но не в ту книгу.
Вопрос в следующем, ...
Изменен: 21.03.2023
Читать сообщение на форуме или сайте.Автор: Виталий Б. Здравствуйте, Хочу сделать чтобы после отработки макроса автоматически переходило на определенную вкладку на ленте Excel, с помощью vba, есть способ? (пользовательскую, например "ТТЗ/САЗ_4/СУР").
Поделитесь пожалуйста кодом :)
Изменен: 13.01.2023
Читать сообщение на форуме или сайте.Автор: Сергей Тихомиров. Здравствуйте, сразу к делу: нужно преобразовать данный код, чтобы он работал не только на первую строку, а на диапазон строк. Например до 10. Понимаю что скорее всего нужно взять это все в массив и использовать\внедрить For Each, но никак не получается разобраться. Заранее благодарен.Private Sub CommandButton1_Click()
Dim m As Integer
Dim x As Integer
Dim out As Integer
m = Cells(2, 1)
x = Cells(2, 2)
out = Cells(2, 3)
For i = m To x Step -x
If i > 0 Then
i = i - out
...
Изменен: 22.11.2022
Читать сообщение на форуме или сайте.Автор: В. Здравствуйте.
Нужен VBA макрос скрипт который бы сохранял активный лист в виде отдельного файла, но вся информация в новом файле должна быть сохранена как текст а в исходном файле должно все остаться как было.
P.S. Находил примерно похожие решения, но они мне не подошли, либо меняли информацию в исходном листе, либо сохраняли формулы, либо сохраняли все листы, либо сохраняли листы с определенным именем(а не активный).
Изменен: 03.11.2022
Читать сообщение на форуме или сайте.Автор: Estelio Ammen. Подскажите, пожалуйста, как можно реализовать следующее:
Необходимо обновлять все запросы и подключения (я так понимаю это ActiveWorkbook.RefreshAll)
Далее сохранять файл.
Сделать цикличность выполнения макроса.
Есть несколько оговорок - изначально я сделал просто обновление запросов и сохранение книги, но в этом случае эксель не успевает обновить запросы перед сохранением, так что я предполагаю нужно сделать задержку между обновлением запросов и сохранением книги.
Вот что ...
Изменен: 18.10.2022
Читать сообщение на форуме или сайте.Автор: Nhead. Добрый день, пытаюсь свести большую матрицу в простой список, я приложил пример. В матрице по горизонтали идет город отправителя, а по вертикали город доставки, значения на пересечении городов отражают "зону сложности" отправки. Например из Абакана в Москву сложность 7, а из Москвы в Абакан 4. Мне надо эту монструозную матрицу превратить в список, на первом листе в примере нужно заполнить столбец "зоны", если делать это через ВПР, то нужно делать его по столбцу ...
Изменен: 10.10.2022
Читать сообщение на форуме или сайте.Автор: Сергей Бригса. Здравствуйте. Посоветуйте как подправить макрос. Имеется документ из более 100 листов с данными и оглавлением. В оглавлении указаны названия тех самых 100 листов, и столбец "кол-во печати". Нужно чтобы макрос проверил данный столбец и если в нем >0, то отправил тот лист на печать (напротив которого указана цифра) и столько копий, сколько указано. На данном форуме нашел нечто похожее, но там проверяется просто заполнена определённая ячейка или нет и печатает эти ...
Изменен: 10.10.2022
Читать сообщение на форуме или сайте.Автор: Мария Рычагова. Добрый день! Есть таблица, в которой находится 12 продавцов одного товара, фото во вложении. Есть товары, у которых 1 продавец, есть у которых 12. Нужен макрос или формула, благодаря которой номер продавца из столбца будет переносится на новую строчку + не будут добавляться пустые строки (если у товара не 12 продавцов, а меньше) + будут автоматически заполнятся данные о товаре, т.е. будут повторятся все значения, которые есть в других столбцах.
Изменен: 25.08.2022
Читать сообщение на форуме или сайте.Автор: Сергей Тихомиров. Здравствуйте, есть макрос копирования картинок по критерию и централизация картинок в ячейке, который работает, но чем больше строк тем больше нагрузка, соответственно медленнее и тд. Вопрос: Есть ли вариант упрощения или улучшение данного макроса? Подобных строк, как в файле, 300+Sub Вставка2()
Dim i&, r As Range, shp As Shape
For i = 4 To 393
Set r = Sheets(2).Cells.Find(Cells(i, 3).Value, LookAt:=xlWhole)
For Each shp In Sheets(2).Shapes
If shp.TopLeftCell.Address = r ...
Изменен: 25.08.2022
Читать сообщение на форуме или сайте.Автор: Сергей Тихомиров. Здравствуйте, стоит задача составить макрос для копирования данных с одного листа по критериям в другой. На просторах интернета нашел похожую, но все равно иную и попытался этот макрос переделать по нужную мне задачу. И вот он вроде бы работает, но криво. Прошу помощи разобраться. Сама задача звучит так: Нужно чтобы данные с листа 2 копировались на лист 1 по критерию в столбце С. Подобных строк в листе 2 будут около 250, а листе 1 зависит от заказа. Sub Копирование()
...
Изменен: 22.08.2022
Читать сообщение на форуме или сайте.Автор: Степан Ульянов. Добрый день!
Помогите пожалуйста скорректировать макрос:
По выбранным файлам раскидывает по листам с соответственными наименованиями
Как изменить на копирование значением txt один под другим на активный лист с добавлением столца = наименование файла?
Sub собрать()
Dim FilesToOpen
Dim x As Integer
Application.ScreenUpdating = False
'отключаем обновление экрана для скорости
'вызываем диалог выбора файлов для импорта
FilesToOpen = Application.GetOpenFilename _
(FileFilter:=& ...
Изменен: 29.07.2022
Читать сообщение на форуме или сайте.Автор: twistd. Добрый день. Необходимо при изменении значения в ячейках столбца1 (Таблица2[Столбец1]) преобразовать строку с формулами в значения. При выполнении макроса цикл не заканчивается и уходит в ошибку.
Помогите подкорректировать макрос.Private Sub Worksheet_Change(ByVal Target As Range)
Dim KeyCells As Range
Set KeyCells = Range("Таблица2[Столбец1]")
If Not Application.Intersect(KeyCells, Range(Target.Address)) _
Is Nothing Then
Range(ActiveCell, ActiveCell.End ...
Изменен: 14.07.2022
Читать сообщение на форуме или сайте.Автор: Иван Мельников. В CSV-выгрузке с Индии время событий (убраны из файла-примера, оставил только дату и время) приходит в совершенно неудобном временном формате:
1) новые сутки они начинают с 12:00 (наша первая минута ночи 00:01 у них идёт как 12:01) — тут проблема в том, что точно так же обозначается первая минута после полудня. То есть, дальше часы ночного/утреннего времени идут 01:** — 09:**, дальше 10:**, дальше 11:**, а дальше снова 12:** (только уже дня). И возникает путаница во ...
Изменен: 16.06.2022
Читать сообщение на форуме или сайте.Автор: Иван Мельников. В CSV-выгрузке с Индии приходят события в совершенно неудобном временном формате:
1) новые сутки они начинают с 12:00
2) дальше идут 01:** — 09:**, дальше 10:**, дальше 11:**, а дальше снова 12:** (только уже дня).
3) далее снова 01:** — 11:** (что соответствует «нашим» 13:** — 23:**)
Строки (события) идут в том порядке, в каком они происходили (сверху вниз от новых и в историю) — иначе вообще было бы не разобрать что за чем следует (и что было до полудня, а что было после ...
Изменен: 15.06.2022
Читать сообщение на форуме или сайте.Автор: sekutor. Вcем привет.
Cтолкнулcя c задачей, которую пытаюcь решить c помощью макроcа.
Еcть файл X.xlsb, в котором 100 вкладок: "АВ01", "АВ02", ..., "АВ50" и "АC01", "АC02", ..., "АC50".
Нужно cоздать 50 файлов c именами "X01", "X02", ..., "X50", в каждом из которых будет две вкладки: "АВ01" и "АC01" в файле "X01", "АВ02" и "АC02" в файле "X02& ...
Изменен: 07.06.2022
Читать сообщение на форуме или сайте.Автор: user06. Доброго времени суток,
Собственно суть проблемы описана в названии темы.
Не подтягиваются данные из листа с готовыми заполненными данными на userform.
В excel файле на userform в первой части выбирается какое-либо значение, на основе выбранного значения в первой части фильтруются значения во второй части.
И по идее на основе выбранного какого-либо значения во второй части должны подставляться значения в третью часть на userform. Но этого не происходит, и не могу понять почему.
...
Изменен: 04.04.2022
Читать сообщение на форуме или сайте.Автор: Сырым Жанжигитов. Добрый день! Помогите пожалуйста, написать макрос с такой целью: Макрос ищет слова имеющие определенную букву и выделяет найденные слова красный цветом.Например, имеющие букву "и". Обязательно должен выделить все слово,имеющие букву "и", именно слова должен выделить, а не букву и.
Изменен: 16.03.2022
Читать сообщение на форуме или сайте.Автор: Сабит Алдонгров. Добрый день! Хочу автоматизировать таблицу для работы с заказами. Есть несколько магазинов, есть остатки в данных магазинах, есть остатки на складе. Необходимо добавлять к заказу по одной позиции вплоть до Того момента пока заказ не будет соответствовать необходимому количеству.
Помогите пожалуйста в решении данного вопроса!
Изменен: 01.03.2022
Читать сообщение на форуме или сайте.Автор: tango_nefer. Добрый день!
Задача: Есть файлы по 5 пользователям, в одном файле: карточка, акты и несколько отчетов из этих актов.
Нужно:
1. закрыть у ячеек, в которых есть формулы возможность корректировки
2. создать отчеты (такого же формата) в которые будет «сливаться» информация из пяти. Количество строк в карточке динамично и в течение года будет прирастать, поэтому нет возможности жестко закрепить в сводном отчете кто идет за кем. Нужен макрос? Который будет ...
Изменен: 20.02.2022
Читать сообщение на форуме или сайте.Автор: Ирина Откупщикова. Здравствуйте! Мне необходимо написать макрос для статистической обработки данных. При этом ссылки должны быть относительными, так как запускать его придется в разных местах в таблице. Мне потребовалось ввести цикл типа «do until _ loop», для того чтобы (см картинку) вычисление в третьем столбце продолжалось, пока следующая строка в первом столбце не будет пустой. При этом в формуле есть переменная Xi, которая берется из первого столбца и при выполнении тела цикла ...
Изменен: 07.02.2022
Читать сообщение на форуме или сайте.