Всем привет! Прошу помощи! Дано: лист "list1" с определенными данными и значениями. Что нужно: чтобы в листе "panel" автоматически создался реестр с данными из листа "list1" только из значений, которые в столбе "Чекбокс" имеют значение "1". Заранее спасибо за помощь!
Всем привет! Прошу помощи! Дано: лист "list1" с определенными данными и значениями. Что нужно: чтобы в листе "panel" автоматически создался реестр с данными из листа "list1" только из значений, которые в столбе "Чекбокс" имеют значение "1". Заранее спасибо за помощь!CaHDaJIb
Sub Макрос1() Dim iLastRow As Long, rw As Long Dim i As Integer Range("B4:D22").ClearContents With Sheets("list1") iLastRow = .Cells(Rows.Count, 3).End(xlUp).Row rw = 4 For i = 3 To iLastRow If .Cells(i, 2).Value = 1 Then Cells(rw, 2).Resize(, 3).Value = .Cells(i, 3).Resize(, 3).Value rw = rw + 1 End If Next End With End Sub
[/vba]
Здравствуйте![vba]
Код
Sub Макрос1() Dim iLastRow As Long, rw As Long Dim i As Integer Range("B4:D22").ClearContents With Sheets("list1") iLastRow = .Cells(Rows.Count, 3).End(xlUp).Row rw = 4 For i = 3 To iLastRow If .Cells(i, 2).Value = 1 Then Cells(rw, 2).Resize(, 3).Value = .Cells(i, 3).Resize(, 3).Value rw = rw + 1 End If Next End With End Sub
Sub u_814() Application.ScreenUpdating = False a = Cells(Rows.Count, "a").End(xlUp).Row If a > 3 Then Range("a4:d" & a).Clear b = Sheets("list1").Cells(Rows.Count, "b").End(xlUp).Row c = Application.Sum(Sheets("list1").Range("b3:b" & b)) 'кол-во 1 If c > 0 Then d = 3 'строка, с которой ищем след. 1 For e = 1 To c f = Application.Match(1, Sheets("list1").Range("b" & d & ":b" & b), 0) g = Cells(Rows.Count, "a").End(xlUp).Row + 1 'строка вставки d = d + f Sheets("list1").Range("b" & d - 1 & ":e" & d - 1).Copy Range("a" & g) Range("a" & g) = e Next End If Application.ScreenUpdating = True End Sub
Sub u_814() Application.ScreenUpdating = False a = Cells(Rows.Count, "a").End(xlUp).Row If a > 3 Then Range("a4:d" & a).Clear b = Sheets("list1").Cells(Rows.Count, "b").End(xlUp).Row c = Application.Sum(Sheets("list1").Range("b3:b" & b)) 'кол-во 1 If c > 0 Then d = 3 'строка, с которой ищем след. 1 For e = 1 To c f = Application.Match(1, Sheets("list1").Range("b" & d & ":b" & b), 0) g = Cells(Rows.Count, "a").End(xlUp).Row + 1 'строка вставки d = d + f Sheets("list1").Range("b" & d - 1 & ":e" & d - 1).Copy Range("a" & g) Range("a" & g) = e Next End If Application.ScreenUpdating = True End Sub
я так понимаю что самое действенное поставить офис 2019 и работать с простой формулой?
поставить новый офис - это хорошо, в любом случае. 2013 мне нравился больше чем 2010, но работа... а на счет простой формулы - она не простая, а массивная, тут нужно смотреть по обстоятельствам.
я так понимаю что самое действенное поставить офис 2019 и работать с простой формулой?
поставить новый офис - это хорошо, в любом случае. 2013 мне нравился больше чем 2010, но работа... а на счет простой формулы - она не простая, а массивная, тут нужно смотреть по обстоятельствам.Nic70y