23.01.2020 10:40:10
Добрый день! Не смогла найти подходящий макрос для решения задачи
В книге много страниц, одного формата. Надо на лист Сводная, в 1 столбец собрать ФИО со всех листов, а в 10 Место рождения. Хочется, чтоб данная задача решилась с помощью макроса.
Изменено: |
|
|
07.06.2019 12:12:52
Добрый день! Написан макрос, возникла проблема как вставить If для отбора данных по критерию.
Есть две вкладки в книге, необходимо с одного листа на другой переписать значения, в определенной форме (это сделано в с помощью макроса) Но где в этом макросе вставить IF чтоб переписывались с Листа data по условию колонка М = "УФВыгрузка.xlsm (20.14 КБ)" Это возможно не сложно, но не получается. Заранее спасибо за помощь. Текст Макроса: Sub Выгрузка_для_УФ() Dim shSrc As Worksheet, ShRes As Worksheet, arrSrc() Dim Ir As Long, i As Long Application.ScreenUpdating = False Set shSrc = Worksheets("data") Set ShRes = Worksheets("Выгрузка_для_УФ")
Ir = shSrc.Cells(shSrc.Rows.Count, "C").End(xlUp).Row 'Раздел проектирования (марка) If Ir = 2 Then ReDim arrSrc(1 To 1, 1 To 1) arrSrc(1, 1) = shSrc.Range("C3").Value Else arrSrc() = shSrc.Range("C3:C" & Ir).Value End If ShRes.Range("A2").Resize(UBound(arrSrc)).Value = arrSrc()
Ir = shSrc.Cells(shSrc.Rows.Count, "F").End(xlUp).Row If Ir = 2 Then 'Наименование пакета ReDim arrSrc(1 To 1, 1 To 1) arrSrc(1, 1) = shSrc.Range("F3").Value Else arrSrc() = shSrc.Range("F3:F" & Ir).Value End If ShRes.Range("B2").Resize(UBound(arrSrc)).Value = arrSrc()
Ir = shSrc.Cells(shSrc.Rows.Count, "I").End(xlUp).Row 'Инвентарный номер объекта If Ir = 2 Then ReDim arrSrc(1 To 1, 1 To 1) arrSrc(1, 1) = shSrc.Range("I3").Value Else arrSrc() = shSrc.Range("I3:I" & Ir).Value End If ShRes.Range("C2").Resize(UBound(arrSrc)).Value = arrSrc()
Ir = shSrc.Cells(shSrc.Rows.Count, "J").End(xlUp).Row 'ККS If Ir = 2 Then ReDim arrSrc(1 To 1, 1 To 1) arrSrc(1, 1) = shSrc.Range("J3").Value Else arrSrc() = shSrc.Range("J3:J" & Ir).Value End If ShRes.Range("D2").Resize(UBound(arrSrc)).Value = arrSrc()
Ir = shSrc.Cells(shSrc.Rows.Count, "M").End(xlUp).Row 'Организация If Ir = 2 Then ReDim arrSrc(1 To 1, 1 To 1) arrSrc(1, 1) = shSrc.Range("M3").Value Else arrSrc() = shSrc.Range("M3:M" & Ir).Value End If ShRes.Range("E2").Resize(UBound(arrSrc)).Value = arrSrc() End Sub
|
|
|
08.11.2018 11:12:41
Добрый день! Подскажите как из файла Заявка на размножение с помощью макроса, так сказать с нажатием одной кнопки поля добавились в файл Журнал учета, как следующая строка. В примере добавлено красным. Файлы могут лежать в одной папке.
Сама с этим не справлюсь. Заранее спасибо. Надо ведь, чтоб был цикл для поиска последней строки и раскидать по разным ячейкам.
Изменено: |
|
|
29.08.2018 09:34:41
Доброе утро!
Понимаю как тяжело разбираться в чужих кодах. Помогите разобраться. Есть макрос уже написанный, необходимо чтоб он сортировал повторяющиеся значения по цветам. В ячейки даты повторяющиеся, но макрос не может их выделить все разными цветами. Помогите найти ошибку в макросе Sub ВыделитьДубликатыРазнымиЦветами() On Error Resume Next ' массив цветов, используемых для заливки ячеек-дубликатов Colors = Array(12900829, 15849925, 14408946, 14610923, 15986394, 14281213, 14277081, _ 9944516, 14994616, 12040422, 12379352, 15921906, 14336204, 15261367, 14281213)
Dim coll As New Collection, dupes As New Collection, _ cols As New Collection, ra As Range, cell As Range, n& Err.Clear: Set ra = Intersect(Selection, ActiveSheet.UsedRange) If Err Then Exit Sub
ra.Interior.ColorIndex = xlColorIndexNone: Application.ScreenUpdating = False For Each cell In ra.Cells ' запонимаем значение дубликатов в коллекции dupes Err.Clear: If Len(Trim(cell)) Then coll.Add CStr(cell.Value), CStr(cell.Value) If Err Then dupes.Add CStr(cell.Value), CStr(cell.Value) Next cell For i& = 1 To dupes.Count ' заполняем коллекцию cols цветами для разных дубликатов n = n Mod (UBound(Colors) + 1): cols.Add Colors(n), dupes(i): n = n + 1 Next For Each cell In ra.Cells ' окрашиваем ячейки, если для её значения назначен цвет cell.Interior.color = cols(CStr(cell.Value)) Next cell Application.ScreenUpdating = True End Sub
Изменено: |
|
|