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

Страницы: 1
Макрос отслеживающий событие, Макрос отслеживающий событие "копирования" или "вставить" ("Ctrl+C" или "Ctrl+C")
 
Доброго всем времени суток!
На модуле листа, насколько я знаю, можно записать процедуры, которые запускаются по изменению/выделению в определённой ячейки или группы ячеек. А есть ли процедура такая же на копирование или сброса банка памяти (вставить)? К примеру в ячейке A1 данные в текстовом формате, при копировании или последующей операции вставить эта ячейка закрашивалась в переделённый цвет. Подскажите процедуру, пожалуйста!)
Если нужен пример, я его составлю, но вроде как и без примера ясно.)
Ошибка в коде, Не работает макрос
 
Код
Sub ClearList()
Sheets("REPORT").Select
Dim sh, sh1, sh2, sh3, sh4 As String
Dim n, nn As Long

    sh1 = "PAID"
    sh2 = "NOT PAID"
    sh3 = "DEACTIV"
    sh4 = "PAYME"
  
    
nn = 4
For n = 1 To nn

sh = "sh" & n
Sheets(sh).Range("A:A").EntireRow.Delete

Next n

End Sub
Здравствуйте товарищи знатоки!
В выше приведёном макросе есть ошибка, помогите её понять и исправить.
По задумке макрос должен пройти по листам циклом и очистить данные с них. Есть один ньюанс. переменная sh воспринимается как текст "sh1", а не как переменная sh1. Можно ли это исправить в данном контексте или необходим другой путь решения. Возможно необходимо решать эти задачи через объектные переменные, просто здесь есть продолжение этого кода и хотелось бы найти решение здесь, несмотря на возможно очевидные ошибки. Спасибо.
Вопросы по редактору макроса, Вопросы по редактору макроса
 
Доброго времени суток уважаемые знатоки!
Меня интересует два вопроса, помогите пожалуйста.
1. В редакторе макроса вместо, вертикальной строки, появилось выделение в виде черного квадрата. Подскажите как вернуть выделение строкой.
2. При переносе макроса на следующую строку (_,Ent) почему-то переносит часть кода с ошибкой. Возможно влияет раскладка клавиатуры или ещё какая та причина, о которой я не догадываюсь. Прочитал в инете об этом вопросе, но решить проблему не сумел. Офис 365 лицензия.
Спасибо!
Доработка макроса., Исправить последнюю операцию.
 
Код
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Cells.Count > 1 Then Exit Sub
If Not Intersect(Target, Range("G:G,L:L")) Is Nothing Then
Dim B As String

B = Selection.Address
Range("G4") = Range(B)
Call FilterVOEN

End If
If Not Intersect(Target, Range("N:N")) Is Nothing Then
Call INFO

End If

If Not Intersect(Target, Range("G:L")) Is Nothing Then
Dim SRow As String
SRow = Selection.Row
Range("N" & SRow).ClearContents

End If

End Sub
Здравствуйте знатоки VBA!
Я выше представил код, который прописал в модуль листа.
Всё работает отлично, но есть одна небольшая загвоздка.
В завершающей части кода записана процедура, которая очищает ячейку в столбце N, при выделении ячеек в той же строке по столбцам от G по L. Что дописать чтоб это очищение происходило не по выделению, а по изменению в выше указанных ячейках? И если не сложно дайте пояснение пожалуйста. Спасибо!
Значения как текст., Значения как текст макросом
 
Доброе времени суток уважаемые знатоки!
Помогите пожалуйста с макросом. Смысл в чем, при переводе прописанной формулы в значение при помощи .Value, значение в ячейке переходит в число и теряет 0 в начале.

00056874 - значение в ячейке "А1"  в виде формулы.

макрос Range("А1")=Range("А1").Value

превращает это значение в виде значения (извиняюсь за каламбур) в

56874
а необходимо 00056874

Подскажите может есть другие свойства, которые способны это сделать так как необходимо. И чем отличается Value2 от обычного Value?
Спасибо!
Усовершенствование макроса, Макрос выделения диапазона ячеек
 
Доброго времени суток друзья!
Помогите пожалуйста усовершенствовать макрос, который выделяет диапазон ячеек.
Суть в том, что если макрос не видит границу, то начинает выделять не тот диапазон.
т.е. если по каким-то причинам в первом столбце нет инфы, макрос выделит "А5:Е1".
А необходимо чтоб либо выдал ошибку, либо выделил диапазон как "А5:Е5".
Я в принципе эту проблему решил "колхозным" путём, но хотелось бы для себя уточнить как можно это реализовать на профессиональном уровне.
Спасибо!)
Код
Range("A5:E" & Cells(Rows.Count, 1).End(xlUp).Row).Select
Эксплицидное написание кода, Полное написание кода.
 
Дорогие знатоки! Допишите пожалуйста код в експлицидном варианте. Ругань на выделенную строку (importWB).)
Код
Set importWB = Workbooks.Open(Filename:=FilesToOpen(x))
Спасибо!
Изменено: sirius0211 - 24.02.2023 10:17:04
Две обработки ошибки в одном макросе., Не срабатывает вторая обработка.
 
Здравствуйте уважаемые форумчане!
У меня возник вопрос, помогите пожалуйста.
При использовании одного и того же метода обработки ошибки, второй раз он не срабатывает, хотя вроде как и названия разные. Я пытался между обработками вставить код On Error GoTo 0, чтоб сбросить метод обработки, но ничего не получилось. Помогите пожалуйста!

Код
On Error GoTo ERROR1
*****
*****
ERROR1
*****
*****
On Error GoTo ERROR2
*****
*****
ERROR2
*****
*****
Изменено: sirius0211 - 09.12.2022 12:59:43
Активация макроса., Активация макроса другим макросом через переменную.
 
Код
Sub mac()
Dim M As String
   M = Range("A1").Value
mac & M
End Sub

Sub mac1()
Range("A3").Select

End Sub
Sub mac2()
Range("A5").Select
End Sub
Здравствуйте знатоки VBA!
У меня возникла проблема, т.к. я не силён в написании макроса.
Суть такова. В ячейке А1, по определённым условиям выставляется значение 1 или 2. Исходя из этого значения срабатывает либо макрос мас1 либо мас2. Я задал переменную и сцепил её значение в имени макроса и вероятно ошибся с синтаксисом или чем то подобным. Помогите пожалуйста. Если файл необходим, я его загружу. Спасибо.
Макрос на запуск макроса определённое количество раз., Срабатывание макроса заданное количество раз.
 
Доброе время суток товарищи!
Помогите пожалуйста с решением.
Есть незамысловатый макрос в виде примера. Какой код необходимо вписать, что этот макрос срабатывал то количество раз, которое указано в ячейке B1.
Спасибо.
Строка макроса из статического в динамическое значение., Динамическая ссылка в макросе.
 

Здавствуйте товарищи профессионалы!

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

Код
Windows("PAYMENTS_FN.xlsm").Activate
Спасибо большое!
Макрос любителя в макрос профессионала, Усовершенствование макроса.
 
Здравствуйте знатоки!
При помощи макрорекордера и написании формул решил создать макрос для определённой задачи. Я нуб в VBA и соответственно мой макрос далёк от совершенства как и само оформление, прошу не судить строго. Вопрос такой, а можно ли этот макрос написать более профессионально с небольшими комментариями? Очень буду признателен за помощь т.к. мною написанный макрос не только нубский, но и, я так подозреваю, будет тормозить на большой умной таблице. Спасибо!

Код
Sub Макрос3()
Range("I8:I" & Cells(Rows.Count, 4).End(xlUp).Row).Select
    Selection.FormulaR1C1 = "=IF(COUNTIF(R8C4:RC[-5],[@1])=1,VLOOKUP([@1],Таблица24,2,0),"""")"
        Selection.Copy
Range("I8:I" & Cells(Rows.Count, 4).End(xlUp).Row).Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
Application.CutCopyMode = False
End Sub
Усовершенствование макроса., Макрос с динамической ссылкой (переменной).
 

Здравствуйте, друзья!
Есть небольшой код, который создает книгу Excel. В коде прописан путь и имя книги, который будет присвоен новому объекту, Помогите пожалуйста с тем, чтоб этот путь и имя бралось с определённой ячейки с активной книги. Я пытался использовать переменную

Dim sFull As String

sFull = Sheets("1").Range("S4").Value

но у меня ни чего не получилось.(

Код
Sub Создать_книгу()
Workbooks.Add

ActiveWorkbook.SaveAs Filename:="C:\Users\Sirius\Desktop\7777.xlsx"
End Sub

Изменено: sirius0211 - 19.07.2022 12:54:29
Макрос сбора и переноса/копирования значений., Макрос сбора и переноса/копирования значений с одного столбца и перенос его в другой столбец.
 
Здравствуйте друзья!
Помогите пожалуйста с макросом, который бы работал не по принципу копипаста, в примере есть несколько вариантов. Работа с умной таблицей и с обычным диапазоном. И самое важно, что если значений нет, то макрос должен игнорировать ошибку без переноса (не срабатывать). По копался в интернете, много всяких вариантов, но похожее к сожелению не нашёл. Спасибо большое!  
Открыть определённый лист в определённой книге., Из книги1 необходимо запустить макрос чтоб открыть книгу и определённый лист
 
Здравствуйте товарищи эксперты Excel!
Есть макрос, который запускает книгу, но перейти на определённый лист не получается. Выдаёт ошибку. Не могли бы вы подсказать где кроется ошибка?
Код
Sub ЗАГРУЗКА_И_ФИЛЬТР()
    Dim sFull As String
      sFull = Sheets("СФ").Range("K1").Value
      Workbooks.Open Filename:=sFull
      Windows("БАЗА.xlsm").Activate
      Sheets("Контрагенты").Select 'тут ошибка.
   
Изменено: sirius0211 - 02.05.2022 16:34:15
Макрос вставки значения в таблицу по условию., Макрос вставки значения в таблицу по условию.
 
Здравствуйте знатоки VBA!
Прошу Вас помочь с макросом, который бы вставлял в таблицу значения исходя из условий.
В таблице, в столбце "б" есть значения, которые могут повторяться. В диапазоне L2:L5 есть значения. В ячейке İ2 находится цифровой идентификатор.
Необходимо чтоб можно было выбрать кнопкой исполнения макроса то значение, которое должно перенестись в таблицу в столбец "и", при этом пропускала те ячейки, на которых уже существует значение.
Я попробовал это реализовать макрорекордером через прописание формул, но это ооочень тормозит из-за большого количества строк.
Спасибо.
Макрос выделения диапазона, Макрос выделения диапазона по последнему значению в определённом столбце, в умной таблице
 
Добрый день уважаемые форумчане!
В недрах интернета я нашёл несложный макрос, который выделяет диапазон ячеек в зависимости от последего значения  определённого столбца,
Код
Sub Перенос()
Sheets("Лист1").Select
    Range("C3:G" & Cells(Rows.Count, 4).End(xlUp).Row).Select 'Этот код!!!
    Selection.Copy
    Range("K3").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Application.CutCopyMode = False
End Sub

но есть одна загвоздка, дело в том, что в обычном диапазоне этот макрос работает как надо, а вот в умной таблице, выделяет диапазон до последней ячейки, т.к. считает что всё поле умной таблицы, это ячейки со значениями.
Помогите переработать макрос так, чтоб  в выбранном столбце поиск шёл до последней ячейки со значением.
Спасибо!
Макрос удаления строк в таблице, по значениям в ячейках столбца.
 
Код
Sub Макрос2()
    Cells.Select
    Range("I1").Activate
    Selection.ClearContents
    Sheets("Sheet1").Select
    Cells.Select
    Selection.Copy
    Sheets("БАЗА").Select
    Cells.Select
    Range("I1").Activate
    ActiveSheet.Paste
    Application.CutCopyMode = False
 
    Dim sSubStr As String 
    Dim lCol As Long 
    Dim lLastRow As Long, li As Long
    Dim arr   
    sSubStr = ""
    
    lCol = 26
    If lCol = 0 Then Exit Sub
 
    lLastRow = ActiveSheet.UsedRange.Row - 1 + ActiveSheet.UsedRange.Rows.Count
    arr = Cells(1, lCol).Resize(lLastRow).Value
 
    Application.ScreenUpdating = 0
    Dim rr As Range
    For li = 2 To lLastRow 
        If CStr(arr(li, 1)) <> sSubStr Then 
                Set rr = Cells(li, 1)
            Else
                Set rr = Union(rr, Cells(li, 1))
            End If
        End If
    Next li
    If Not rr Is Nothing Then rr.EntireRow.Delete
    Application.ScreenUpdating = 1
 End Sub
Есть макрос, который копирует таблицу из другого листа и удаляет строки по значениям из 26 столбца. Помогите с тем, чтоб макрос ссылался не только на столбец 26, но и к примеру 29 с теми же условиями.
Спасибо.
Макрос сбора файлов excel различных форматов в одну папку, Сбор файлов
 
Уважаемые форумчане!
Помогите пожалуйста с макросом, который бы собирал в отдельную папку все файлы excel различных форматов (.xls, .xlsx, .xlsm) с папки в которой ещё куча папок и без, с присвоением им имен (название не критично и может быть любым), в одну папку. Переименование необходимо по причине дублирующих имен, дабы исключить их конфликтность. Перерыл весь интернет и ничего похожего не нашёл, хотя ранее нечто подобное встречалось. Если будет ещё и выводится список этих файлов с путями к ним, старым именем и новым, который присваивает макрос было бы просто супер. Или если не сложно укажите ссылку на подобное решение. Файлов всего около 1000 и в ручную довольно сложно решать эту задачу.  
Редактирование макроса переноса данных в другую книгу, Задача: заменить статическую ссылку в коде, на динамическую.
 
Здравствуйте знатоки!
Есть код, в котором прописан адрес на другую книгу.
Как изменить код, чтоб адресом воспринималась информация из ячейки на другом листе (к примеру Лист2, ячейка А1)
сам код:
Код
Sub Название_Макроса()
 'Выделить диапазон который необходимо скопировать
Sheets("BazaFinish").Select
Range("A1:AK150000").Select
 'Скопировать то, что выделено
Selection.Copy
ChDir "C:\Users\sirius\Desktop\Папка1\" '"путь к папке где лежит файл в который необходимо скопировать"
Workbooks.Open Filename:="BAZA.xlsm"  '"Название файла, который находится в папке, путь к которой указан выше"
 'Выделить начальную ячейку в которую необходимо вставить скопированные данные
Range("A6").Select
 'Вставить данные
ActiveSheet.Paste
 'сохранить текущую книгу
ActiveWorkbook.Save
 'Закрыть книгу
ActiveWorkbook.Close
End Sub
Разбиение консолидированных данных в одной строке., Получение отдельных данных построчно из консолидированной строки.
 
Здравствуйте уважаемые форумчане!
Помогите пожалуйста с макросом, который мог бы из умной таблицы вытащить в строке данные и перенести их в другую таблице построчно. Т.е. есть строка с данными, в которой также указаны месяцы или любые другие значения. Макрос в свою очередь должен эти данные перенести в другую умную таблицу, при чем данные продублировать, а значения переносить только одно. Было бы замечательно, если сам диапазон переноса в новую умную таблицу, можно было бы редактировать из макроса, т.к. и умные таблицы могут быть не идентичными по количеству строк, и сам перенос может быть в любой её части. В примере перенос пришёлся на ячейку E2 Лист2.
В примере на листе1 консолидированные данные, на листе2 перенесённые данные после действия макроса.
Изменено: sirius0211 - 15.12.2021 14:38:15
Макрос формирования строк умной таблицы по заданному параметру из ячейки, ограничить умную таблицу необходимым количеством строк, в которых в будущем будет применяться ссылка на другую умную таблицу.
 
Всем привет!
Помогите, пожалуйста с макросом, который бы при активации формировал необходимое количество строк, которое задано в ячейке "D3". При этом формулы и форматы бы тоже протягивались. И если не сложно в коде, где выбирается параметр с ячейки, дополнительно закомментируйте вариант с ссылкой на другую таблицу и формулой Счётз. Если это возможно, конечно.
Перенос актуальных строк из умной таблицы одной книги в другую.
 
Здравствуйте товарищи!
Помогите с написанием макроса, который бы переносил строки из одной умной таблицы из книги "Расчёты", в другую умную таблицу книги "База" по признаку из столбца "Е". Причём без разницы какое там значение за исключением "0" или "".
В файлах показаны состояния таблиц до, и после активации макроса.
Спасибо всем за ранее!!!)
Макросы вставки формул в столбец при отсутcтвии там значений, .
 
Здравствуйте асы написания макросов!!!
Прошу Вас написать 3 макроса, которые бы отвечали следующим условиям.

Описание задачи 1 (лист1)
   Есть умная таблица, в которой прописаны значения в столбце "a" и "b". В столбце "d" прописана формула.
   Как будет выглядеть макрос, который в столбце "d" тех строчках где есть значение ">0", макрос менял формулу на значение. А где "пусто", или "0", прописывалась формула (именно прописывалась!). Диапазон в этом случае перекрывал только до последней активной (со значением строки) к примеру по столбцу "a" .

Описание задачи 2 (лист2)
   Всё тоже самое, только с обычной таблицей.
Описание задачи 3 (лист3)

   Всё тоже самое, только диапазон задаётся адресами из ячеек E2 и E3
В принципе 3 вариант может решить задачу, но хотелось бы 3 решения получить.

Спасибо всем большое и заранее благодарен за любые комментарии.)

 
Макрос распределения суммы, от старого к новому
 
Здравствуйте, знатоки написания макросов!!!
Прошу Вас помощь с макросом, который бы смог распределить поступающую сумму по месяцам. В приложенном файле, на листе "список" есть "умная табличка", в которой указан "Код объекта", "Сумма поступления" и "остаток". Эта самая сумма, при запуске макроса, должна распределиться на листе "База" в зависимости от кода объекта, статуса объекта, от старого месяца к новому. Если суммы не хватает для покрытия всей задолжности  или есть излишек суммы, то он как остаток показывается в умной табличке в столбце "Остаток". При следующей выгрузке этот остаток складывался с новым поступлением. Если вторую часть вопроса сложно реализовать, то помогите с распределением. Я пытаюсь решить эту задачу формулами, но они становятся очень громоздкими и ресурсоёмкими, а в макросах я не силён. Буду особо признателен, если будут в макросе комментарии\. чтоб я смог его редактировать по возможности. В таблице я отдельно выделил столбцы, в ячейках которых должны произойти изменения после обработки макросом. Спасибо большое всем откликнувшимся!)
Ввода чисела по условию зависимой ячейки., Ограничение ввода не целых чисел по условиям зависимой ячейки.
 
Какие условия прописать в форматирование ячеек ввода количества (зелёным цветом), чтоб был запрет на ввод не целого числа в строке, где учет товара ведётся из табл "Ед. изм. Штучных товаров". И Выходило сообщение об этой ошибки "Нельзя вводить  не целое число!".
Макрос печати шаблонов с переменными данными., Помогите с написанием макроса.
 
Есть определённая печатная форма, необходимо её печатать с изменяющейся датой. Дата переменная, как со сквозным присвоением, так и с выбором четных и нечетных дат.  Так же необходимо варьировать с кол-вом копий печати. Спасибо!
Автоматическое объединение, пустых по условию строк столбцов, в динамической таблице.
 
Не смог найти решение данной задачи. Помогите пожалуйста или дайте ссылку, где это решение внедрено. Спасибо.
Страницы: 1
Наверх