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

Страницы: 1
[VBA] копировать строчки с одной вкладки на другую с заданным интервалом между ними
 
Добрый день!  
 
если несколько строчек (кол-во не всегда фиксировано)  
 
как с помощью макроса скопировать их с первого листа на второй, но с заданным интервалом, к примеру через каждые 9 строк поочередно все строчки.
caustic
[VBA] возврат всех значений в таблице, соседняя ячейка которых содержит определенное значение
 
Добрый день!  
 
подскажите пожалуйста, как сделать так, чтобы макрос вывел на "лист2" весь список значений из колонки A листа "base", напротив которых в колонке B проставлено значение "Да".  
 
т.е. своеобразный ВПР, только работа с несколькими значениями.  
 
p.s. можно поменять порядок колонок, т.е. B - первая, A - вторая, если того требует правило процедуры написания.  
 
 
спасибо!
caustic
[VBA] добавлять новые строчки, пропускать те, которые уже есть
 
Добрый день  
 
прошу помощи реализовать одну операцию.  
 
есть 3 листа:  
 
1 лист - основной, в нем таблица, в конце этой таблицы нужно добавить только уникальные (не повторяющиеся с таблиц 2ого и 3го листа) строчки.  
 
можно ограничиться копированием строк состоящих из 3х ячеек (остальные я подтяну по аналогии :) )  
 
 
я пока слабо представляю как макрос будет выглядеть, но мне пожалуй нужна помощь прежде всего с оператором if then, какие там будут записаны условия.  
 
 
спасибо!
caustic
[VBA] выделение строк в объединенной ячейке
 
Добрый день!  
Прошу помочь в с одним небольшим макросом.  
 
в приложении книга. на 1 листе - то что есть, на 2ом - то что надо сделать. а именно, сгруппировать объединенные строками ячейки, оставив первые 3 строчки в качестве шапки. (не уверен что в 2003 Excel есть группировка)  
 
ниже макрос, он бесполезный, ибо работает с абсолютными адресами ячеек.  
 
поэтому отсюда вопрос: как научить его распознавать.. диапазон чтоли строчек, которые входят в одну объединенную ячейку, выделять их и группировать.  
 
вопрос: как научить его правильно выделить эту область  
 
Sub Macros1()  
    Rows("4:7").Select  
     Selection.Rows.Group  
   Rows("11:12").Select  
     Selection.Rows.Group  
   Rows("16:19").Select  
     Selection.Rows.Group  
   Rows("23:29").Select  
     Selection.Rows.Group  
End Sub  
 
P.S. строчки в объединенных ячейках будут добавляться со временем поэтому абсолютные координаты не подойдут  
 
спасибо!
caustic
[VBA] сравнение заливки ячейки между одинаковыми таблицами
 
руководствуюсь одним из правил вашего форума: "одна тема = один вопрос"  
 
 
в одной из тем на этом форуме мне помогли с макросом, представленным чуть ниже.  
 
суть его работы такова:  
сравнивает ячейки таблиц из "лист1" и "лист2" и если на "лист1" отсутствует какая либо ячейка из "лист2", вставляется сначала строка на "лист1" а затем копируется значение отсутствующей ячейки с "лист2".  
 
 
нужно:  
чтоб по тому же самому принципу макрос сравнивал ячейки в колонках вкладок "лист1" и "лист2" но уже по цвету заливки ячейки  
и если одна и та же ячейка закрашена по разному на двух вкладках, макрос бы брал цвет ячейки с "лист2" и закрашивал им ячейку с "лист1"  
 
 
 
Option Explicit  
   
Sub Vstavka112()  
Dim Tabl1 As Range, Tabl2 As Range  
Dim Row2&, i As Integer  
With Sheets("Лист1")  
Set Tabl1 = .UsedRange  
End With  
With Sheets("Лист2")  
Set Tabl2 = .UsedRange  
End With  
Row2 = Tabl2.Rows.Count  
Application.ScreenUpdating = False  
For i = 1 To Row2  
   If Tabl1.Cells(i, 1) <> Tabl2.Cells(i, 1) Then  
       Tabl1.Rows(i & ":" & i).Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove  
      Tabl2.Cells(i, 1).Copy _  
   Destination:=Tabl1.Cells(i, 1)  
   End If  
Next  
Application.ScreenUpdating = True  
End Sub  
 
 
 
Как можно реализовать подобное?  
 
спасибо!
caustic
[VBA] копирование строк с условием
 
Добрый день товарищи!  
Помогите пожалуйста реализовать на первых порах одну операцию.  
 
Дано:  
 
Книга (в приложении). в ней 2 листа. в них абсолютно одинаковые таблицы, но во втором листе в таблицу добавлены 2 строчки (всегда отмечаются светло-зеленым цветом (.Interior.Color = 10092492) )  
 
 
Что надо:  
 
Чтобы строчки, где есть светло-зеленая ячейка были скопированы целиком и вставлены соответственно в таблицу на первом листе  
 
 
Оговорки:  
 
в приложении упрощенная таблица-пример. Обычная запись макроса типа: выделить зеленую строку и вставить по абсолютному адресу на первом листе - не прокатит. строчки добавляются время от времени, в разные блоки (имеется ввиду блок между синими строками), соответственно адрес постоянно будет плавать.  
 
Вот мой набросок.. но к сожалению не могу реализовать до конца что я хочу:  
 
Sub Vstavka()  
   
For k = 1 To 50  
   If Range(Cells(k, 1), Cells(k, 1)).Interior.Color = 10092492 Then    'светло-зеленая    
'1) двигаться далее от этой св-зелен строки пока не достингу первой синей "итоговой" строчки  
 
'2) узнать значение в этой итоговой строчке  
 
'3) перейти на вкладку 1, найти это значение, и вставить перед ней + выше на 1 строку, строчку из 2ого листа со светло-зеленой ячейкой  
   
 
так же пытался внедрить цикл Do until, но тоже косяки видать:  
 
Sub Vstavka()  
   
For k = 1 To 50  
   If Range(Cells(k, 1), Cells(k, 1)).Interior.Color = 10092492 Then 'светло-зеленая  
       Do Until Range(Cells(k, 1), Cells(k, 1)).Interior.Color = 9527351     'синяя "итоговая"  
           ActiveCell.Offset(-2, 0).Select  
            Selection.Copy  
 
 
End Sub  
 
 
 
до этого все делал вручную, сейчас хочу попробовать автоматизировать процесс
caustic
Страницы: 1
Наверх