Страницы: 1
RSS
График поставки материалов
 
Добрый день эксперты экселя, подскажите возникла проблема, имеется график поставки материалов, но он не удобен для восприятия т.к. много материала дублируется,
каким макросом можно это сделать, хотябы первую часть т.е. убирать материал без работы.
Если в столбце "C" тип отсутствуют значение значит всё что ниже с типом МАТ удалить,
Если в столбце "C" тип значение Раб значит ДАТА НАЧАЛО копируется вниз по строчкам с типом МАТ до окончания работы, аналогично и ОКОНЧАНИЕ
 
что значит удалить всё что ниже с типом МАТ? какие конкретно столбцы? а то там много чего ниже есть
 
Доброе утро! при вставке макроса ругается на эти строчки
Range(Cells(a, 4), Cells(a, ).Copy        
Range(Cells(a + 1, 4), Cells(a + 1, ).PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False


Range(Cells(a, 4), Cells(a,).ClearContents
Range(Cells(a + 1, 4), Cells(a + 1, ).ClearContents

выделяет их красным
 
Аналогичная проблема(
 
Не указан номер столбца в диапазонах.
 
сорь, убрал галочку показывать смайлики. Да епт, как жеж это так то...
Попробуйте, вроде победил.
А вот и файл
Код
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
Sub qwe()
lr = Cells(Rows.Count, 3).End(xlUp).Row
For i = 8 To lr - 1
    If Cells(i, 3).Value = "" Or Cells(i, 3).Value = "Раб" Then
        If Cells(i, 3).Value = "" Then
            a = "pust"
        Else
            a = "rab"
        End If
        For j = i + 1 To lr + 1
            If Cells(j, 3).Value <> "Мат" Then
                If a = "pust" Then
                    Range(Cells(i + 1, 4), Cells(j - 1, 8)).ClearContents
                    i = j - 1
                    Exit For
                     
                Else
                    Range(Cells(i, 4), Cells(i, ).Copy
                    Range(Cells(i + 1, 4), Cells(j - 1, 8)).PasteSpecial xlPasteValues
                    i = j - 1
                    Exit For
                End If
            End If
        Next j
    End If
Next i
Application.CutCopyMode = False
End Sub
Изменено: VideoAlex - 12.07.2016 07:39:13
 
ыыы. вчера под пиво не обратил внимание на таблицу "результат" короч мой макрос делает половину того что нужно. исправить могу только вечером ибо занят пока
 
Огромное спасибо, работает
а как сделать чтобы там где нет РАБ он данные из строк не очищал
Код
1
2
3
4
If a = "pust" Then
                    Range(Cells(i + 1, 4), Cells(j - 1, 8  ).ClearContents
                    i = j - 1
                    Exit For

а эти строки удалял?
Изменено: Сергей Шистеров - 12.07.2016 15:15:24
 
Вывод: за руль на форум - только трезвым.
 
Спасибо большое еще раз!!!!
 
Цитата
Юрий М написал: на форум - только трезвым.
Дык я только почитать, а смотрю простенькая проблема у ТС а никто не помогает, ну и...
 
Цитата
Сергей Шистеров написал:
а как сделать чтобы там где нет РАБ он данные из строк не очищал
 
Во замечательно, и Вам огромное спасибо!
Страницы: 1
Читают тему
Loading...