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

Страницы: 1 2 След.
Присвоить значению - диапазон от активной ячейки и ниже (по условию)
 
JayBhagavan спасибо за расширений ответ!
Присвоить значению - диапазон от активной ячейки и ниже (по условию)
 
JayBhagavan если можно переведи нубу работу цикла на русский вкратце. Буду очень благодарен!
Код
For Each cl In Intersect(ActiveSheet.UsedRange, rng)
            If Not cl.HasFormula Then cl.ClearContents
        Next cl
Присвоить значению - диапазон от активной ячейки и ниже (по условию)
 
В первом листе 30 строка результат работы макроса (нет формул таких как в 26 строке) Активная ячейка В23 была! В 2-м листе красная область правильный результат!
П.С. Есль в область с 23-25 вставить текст или число макрос работает норм) Поэкспериментируйте с вложен им файлом=)
Изменено: GermeS - 31.08.2015 15:17:07
Присвоить значению - диапазон от активной ячейки и ниже (по условию)
 
Как не прискорбно но и скорректированный не исправил ошибки=(( Так же оставляет область без формул( а с "cl" сглупил, забыл стереть после вставки(
Изменено: GermeS - 31.08.2015 14:43:37
Присвоить значению - диапазон от активной ячейки и ниже (по условию)
 
Помогите разобраться! При выполнении макроса "Новый подотчетный" при активной ячейки В16 почему то удаляет формулы а не должно(если область копирования не имеет текста и чисел) . Если допустим в область (красную заполнить хоть 1 ячейку все работает на ура. Все в примере.
Код
Sub НовийПодочетный()
Dim rng As Range, cl As Range
Application.ScreenUpdating = False
    Application.FindFormat.Clear
    Set rng = Range(Cells(ActiveCell.Row, 2), Cells(Rows.Count, 4))
    Debug.Print rng.Address
    Set cl = rng.Find(what:="Всего", LookIn:=xlValues, _
        lookat:=xlWhole, SearchDirection:=xlNext, MatchCase:=False)
    If Not cl Is Nothing Then
        FirstAddress = cl.Address
    End If
    Set rng = Rows(ActiveCell.Row & ":" & cl.EntireRow.Row)
        rng.Copy
        ActiveCell.EntireRow.Insert Shift:=xlUp
        Application.CutCopyMode = False
    On Error Resume Next
        Set rng = rng.SpecialCells(xlCellTypeConstants, xlNumberAsText)
    On Error GoTo 0
    If Not IsEmpty(rng) Then
        rng.ClearContents
    End If
Application.ScreenUpdating = True
End Sub
Изменено: GermeS - 31.08.2015 14:28:15
Присвоить значению - диапазон от активной ячейки и ниже (по условию)
 
JayBhagavan спасибо за помощь, немного доработал и достиг того чего хотел=)
Присвоить значению - диапазон от активной ячейки и ниже (по условию)
 
Если можно что эта часть делает? Выбирает диапазон в котором надо провести поиск?
Код
Set Rng = Range(Cells(ActiveCell.Row, 2), Cells(Rows.Count, 4))
    Debug.Print Rng.Address
Изменено: GermeS - 28.08.2015 13:57:07
Присвоить значению - диапазон от активной ячейки и ниже (по условию)
 
Вот пожалуйста  
Присвоить значению - диапазон от активной ячейки и ниже (по условию)
 
Если можно немного посложнее! Как присвоить диапазон от активной ячейки с  первой строкой (поле активной ячейки) в которой нейдет искомое значения типа "Всего"?
Буду рад за помощь=)
Присвоить значению - диапазон от активной ячейки и ниже (по условию)
 
Огромное спасибо! JayBhagavan, Максим Зеленский
Изменено: GermeS - 28.08.2015 12:25:46
Присвоить значению - диапазон от активной ячейки и ниже (по условию)
 
Привет! Нужна помощь, чтоб разобраться  вот с этим чтоб работал правильно.(нежно присвоить значению - диапазон от активной ячейки к 3 строкам ниже)
Код
Set rng = Rows(ActiveCell.EntireRow.Row & ActiveCell.EntireRow.Offset(3, 0).Row)
Макрос вставки пустых строк, вставка икопирование строки
 
Теперь нужна помощь с копированием и вставкой не одной строки а нескольких, в вложенном файле есть выделенный диапазон для копирования, его нужно вставить над активной ячейкой (в файле показано над которой) с последующими действиями с предыдущего макроса (копирование и очистка скопированной области).
Зарание благодарю за помощь.
Макрос вставки пустых строк, вставка икопирование строки
 
1-й вариант больше сайдет так как последнюю строку пользователь выбирает сам активацием ячейки ! Спс за помощь!
Макрос вставки пустых строк, вставка икопирование строки
 
Часть с Select действительно была глупой=) Как самому не пришло=)
Макрос вставки пустых строк, вставка икопирование строки
 
Так как есть диапазон строк, в котором в конце подсчитывающий итоговые суммы, и чтоб добавить пустую строку в конце при заполненных всех остальных написал такой макрос, ко торий копирует как бы последнею активною заполненную строку на строку выше (для того чтоб итоговые формулы не сбивались) и эта часть макроса очищает скопированною строку от значений(чтоб в конце было пустая строка для нового ввода). Как то так.
Код
On Error Resume Next.
        Set Rng = ActiveCell.EntireRow.Offset(1, 0).SpecialCells(xlCellTypeConstants, xlNumberAsText) 'что должно получиться?
    On Error GoTo 0
    If Not IsEmpty(Rng) Then
        Rng.ClearContents
    End If
Изменено: GermeS - 26.08.2015 15:36:05
Макрос вставки пустых строк, вставка икопирование строки
 
Здравствуйте написал небольшой макрос и хотелось его немного упростить.
П.С. Не судите строго ток учусь=)
Код
Sub ВставкаСтроки()
Application.ScreenUpdating = False
    ActiveCell.EntireRow.Insert Shift:=xlUp
    ActiveCell.EntireRow.Offset(1, 0).Copy
    ActiveCell.EntireRow.Select
    ActiveSheet.Paste
    Selection.Cells(4).Select
    Application.CutCopyMode = False
    On Error Resume Next
        Set Rng = ActiveCell.EntireRow.Offset(1, 0).SpecialCells(xlCellTypeConstants, xlNumberAsText)
    On Error GoTo 0
    If Not IsEmpty(Rng) Then
        Rng.ClearContents
    End If
Application.ScreenUpdating = True
End Sub
Корректировка количества строк, с помощью макроса
 
Михаил С. спасибо то что нужно!
Корректировка количества строк, с помощью макроса
 
Здравствуйте снова нужна помощь! Есть документ в котором нужно откорректировать количество строк через проверку!
Допустим Проверяем 8-ю строку на наличие в ней "Итого" если поиск не дал результата тогда удаляем эту строку, и снова проверяем пока строка с "Итого" не сдвинетса на 8-ю строку последствием удаления! Как тока на восьмой строке Появилось "итого" переходим к 12-й, проверяем также. дальше к 16-й! На примере документа будет более понятно (Пример док. вложил). Итого нужно дабитьса результата 8 - Строка с "итого", 12 также , 16 также!
Побывал сам но я ищо нуб в этом=(
Код
Sub iii()
Dim i As Integer
Dim ra As Range
For i = 8 To 16 Step 4
    For Each ra In ActiveSheet.UsedRange.Rows(i).Cells
        If ra.Value <> "Итого" Then
            ra.EntireRow.Delete
        Else
            If ra.Value = "Итого" Then ra.EntireRow.Hidden = False
        End If
    Next ra
Next i
End Sub
Макрос скрытия диапазона с условием
 
ясн спс=) Сглупил=)
Макрос скрытия диапазона с условием
 
Никак не пойму что делает этот цыкал! Если можно вкратце объясните=) Зарание благодарен!
П.С. Кстате макрос работает спс! Теперь будем над ним работать=)
Код
 For Each cl In trgt_rng.Rows
            If Len(cl.Cells(4).Value) > 0 Or _
                cl.Cells(15).Value <> 0 Or _
                cl.Cells(57).Value <> 0 Or _
                cl.Cells(58).Value <> 0 Or _
                cl.Cells(59).Value <> 0 _
                Then cl.Hidden = False ' отображаем строку
        Next cl
Изменено: GermeS - 18.08.2015 11:20:47
Макрос скрытия диапазона с условием
 
Спасибо JayBhagavan буду побывать, о результате отпишусь=)  
Макрос скрытия диапазона с условием
 
Вот попробовал сам написать примерный макрос по моему требованию но тут походу много ошыбок =)
В начале темы изменил суть своего вопроса думаю теперь боле понятно=)
Код
Sub макрос()
    Dim cell As Range
    Dim lRowNomber As Long
    Dim i As Long
    Dim Rng As Range
    Application.ScreenUpdating = False
    If Rows("5:153").Hidden = True Then
    Rows.Hidden = False
    End If
    For Each cell In ActiveSheet.UsedRange.Columns(3).Cells
        If cell.Value = "Èòîãî" Then
        cell.Activate
        lRowNumber = ActiveCellRow
        i = lRowNumber
        End If
    Next
    On Error Resume Next
    Set Rng = Range(Cells(5, 4), Cells(i - 1, 4)).EntireRow
    On Error GoTo 0
    Rng.Hidden = True
    If Rows(1).Hidden = False Then Rows(1).Hidden = True
    If Columns(1).Hidden = False Then Columns(1).Hidden = True
    Application.ScreenUpdating = True
End Sub
Изменено: GermeS - 14.08.2015 12:41:29
Макрос очистки листа от даних, Выдает ошибку
 
JayBhagavan спс помогло, работает как надо=)
Премного благодарен!
Макрос очистки листа от даних, Выдает ошибку
 
Хотел применить выше упомянутый макрос к листам с 1 по 19 но почему то как только попадает на пустой лист сразу видает ошибку(
Код
Sub Î÷èñòêà()
    Dim i As Integer
    Application.ScreenUpdating = False
    On Error Resume Next
    For i = 1 To 19
    ThisWorkbook.Sheets(i).Activate
    Set Rng = ActiveSheet.Range("B5:BG1000").SpecialCells(xlCellTypeConstants, xlNumberAsText)
    If Not IsEmpty(Rng) Then
        If MsgBox("Действительно удалить?", vbYesNo) = vbYes Then
            Rng.ClearContents
        End If
    Else
        MsgBox "Нет даных!"
    End If
    ActiveSheet.Range("B2").Select
    On Error GoTo 0
    Next i
    Application.ScreenUpdating = True
End Sub
Макрос очистки листа от даних, Выдает ошибку
 
Понял исправил! Тему создал
Макрос скрытия диапазона с условием
 
Кросс: http://www.excel-vba.ru/forum/index.php?topic=4016.msg21739#msg21739
Есть книга с примерно 30 листами, каждый лист нужно печатать все не заполнение строки в нем скриваютса для удобной печать и экономии бумаги=)
Но попадаютса не всегда но есть листы в которых совсем нет даных но их тоже нужно печатать так вот нужно сделать так чтоб:
Во 1-х оставить строчку итого! (она для каждого листа разная) Во 2-х оставить отобранной диапазон допустим  с 5 по 16 строчки!
И в 3-х Скрыть область с 17 по строчку х (где х- строчка перед строчкой итого=)
Зарание благодарен!
Изменено: GermeS - 14.08.2015 12:39:57
Макрос очистки листа от даних, Выдает ошибку
 
Если допустим Есть пустой лист его тоже нужно скрыть но по своему!
Во 1-х оставить строчку итого! (она для каждого листа разная)
Во 2-х оставить отобранной допустим область с 5 по 16 строчки!
И в 3-х Скрыть область  с 17 по строчку х (где х- строчка перед строчкой итого=)
Зарание благодарен!
Макрос очистки листа от даних, Выдает ошибку
 
Файл выложил выше=) Но наперед извиняюсь так его не роба в моей ошибке так как я его неправильно переписал=)
Изменено: xLeNiNx - 13.08.2015 15:03:09
Макрос очистки листа от даних, Выдает ошибку
 
К сожалению ваш метод выдавал ошибки и так как я новичок в этом деле пришлось ввернутся к старому! А с прогрессом бы исправил это=)
А за итого спс ! Пожже поясню для чего оно нужно=)
Изменено: xLeNiNx - 13.08.2015 14:20:11
Макрос очистки листа от даних, Выдает ошибку
 
Теперь хотелось бы усложнить немного задачу так как увидел косяк! Надо исключить из выделения ячейки с текстом "Итого:"
Буду рад услышать мысли=)

П.С. Приложил кусок документа к примеру!
Изменено: xLeNiNx - 13.08.2015 14:07:42
Страницы: 1 2 След.
Наверх