Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 24.12.2010, 12:43   #1
aoaoo
Пользователь
 
Регистрация: 15.12.2010
Сообщений: 29
По умолчанию если... то "копировать"

Имеется 5 столбцов. При совпадении с условием во 2ом столбце вся эта строка копируется на лист 2\очищается\удаляется со смещением вверх.
aoaoo вне форума Ответить с цитированием
Старый 24.12.2010, 12:48   #2
Serge 007
Участник клуба
 
Аватар для Serge 007
 
Регистрация: 15.12.2009
Сообщений: 1,448
По умолчанию

Цитата:
Сообщение от aoaoo Посмотреть сообщение
Имеется 5 столбцов. При совпадении с условием во 2ом столбце вся эта строка копируется на лист 2\очищается\удаляется со смещением вверх.
Круто.
Покажете?
Бесплатная помощь: www.excelworld.ru
Платная помощь: serge_007.planetaexcel@mail.ru
https://yoomoney.ru: 41001419691823
Serge 007 вне форума Ответить с цитированием
Старый 24.12.2010, 12:49   #3
aoaoo
Пользователь
 
Регистрация: 15.12.2010
Сообщений: 29
По умолчанию

такое возможно вообще?
aoaoo вне форума Ответить с цитированием
Старый 24.12.2010, 12:53   #4
Serge 007
Участник клуба
 
Аватар для Serge 007
 
Регистрация: 15.12.2009
Сообщений: 1,448
По умолчанию

Цитата:
Сообщение от aoaoo Посмотреть сообщение
такое возможно вообще?
Так это вопрос был?
Бесплатная помощь: www.excelworld.ru
Платная помощь: serge_007.planetaexcel@mail.ru
https://yoomoney.ru: 41001419691823
Serge 007 вне форума Ответить с цитированием
Старый 24.12.2010, 12:56   #5
aoaoo
Пользователь
 
Регистрация: 15.12.2010
Сообщений: 29
По умолчанию

ну да. как такое провернуть? =)
aoaoo вне форума Ответить с цитированием
Старый 24.12.2010, 13:20   #6
Serge 007
Участник клуба
 
Аватар для Serge 007
 
Регистрация: 15.12.2009
Сообщений: 1,448
По умолчанию

Цитата:
Сообщение от aoaoo Посмотреть сообщение
ну да.
По тексту непонятно было
Пример давайте, что с чем должно совпадать и что откуда куда должно переноситься.
Бесплатная помощь: www.excelworld.ru
Платная помощь: serge_007.planetaexcel@mail.ru
https://yoomoney.ru: 41001419691823
Serge 007 вне форума Ответить с цитированием
Старый 24.12.2010, 13:42   #7
aoaoo
Пользователь
 
Регистрация: 15.12.2010
Сообщений: 29
По умолчанию

вот пример )
если во 2ом столбике значение входит в диапазон от -70,5 до -40,5 , то все строки копируется на лист2 (или в соседние свободные ячейки).
Вложения
Тип файла: rar -80.rar (190.6 Кб, 21 просмотров)
aoaoo вне форума Ответить с цитированием
Старый 24.12.2010, 20:09   #8
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

вот макрос )
Код:
Sub MoveData22()
  Dim r1 As Long, r2 As Long
  If Sheets.Count = 1 Then
    Sheets.Add after:=Sheets(1)
    Sheets(1).Activate
  Else
    Sheets(2).Cells.ClearContents
  End If
  r1 = 1: r2 = 1
  Do While Cells(r1, 1) <> ""
    If Cells(r1, 2) >= -70.5 And Cells(r1, 2) <= -40.5 Then
      Rows(r1).Copy Sheets(2).Cells(r2, 1)
      r2 = r2 + 1
      Rows(r1).Delete Shift:=xlUp
    Else
      r1 = r1 + 1
    End If
  Loop
End Sub
выполните его с листа с данными - получите результат. отошлите этот макрос 10 своим знакомым - будет Вам счастье!
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
IgorGO вне форума Ответить с цитированием
Старый 25.12.2010, 11:59   #9
aoaoo
Пользователь
 
Регистрация: 15.12.2010
Сообщений: 29
По умолчанию

Цитата:
Сообщение от IgorGO Посмотреть сообщение
вот макрос )
Код:
Sub MoveData22()
  Dim r1 As Long, r2 As Long
  If Sheets.Count = 1 Then
    Sheets.Add after:=Sheets(1)
    Sheets(1).Activate
  Else
    Sheets(2).Cells.ClearContents
  End If
  r1 = 1: r2 = 1
  Do While Cells(r1, 1) <> ""
    If Cells(r1, 2) >= -70.5 And Cells(r1, 2) <= -40.5 Then
      Rows(r1).Copy Sheets(2).Cells(r2, 1)
      r2 = r2 + 1
      Rows(r1).Delete Shift:=xlUp
    Else
      r1 = r1 + 1
    End If
  Loop
End Sub
выполните его с листа с данными - получите результат. отошлите этот макрос 10 своим знакомым - будет Вам счастье!
гениально! спасибо большое!
вопрос не по теме: вы случайно не программируете на каком-нибудь языке?
aoaoo вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
если >30 тогда "да" иначе "нет"... DBgrid Daur БД в Delphi 4 30.05.2010 16:54
"ОКРВВЕРХ", "ОКР", "ЕСЛИ". Как бы их связать. Каравай Microsoft Office Excel 13 17.02.2010 09:53
при вводе на листе "магазин"- код товара появлялось "описание" товара из "склада" с "продажной ценой" aleksei78 Microsoft Office Excel 13 25.08.2009 12:04
если пользователь наберет какой-то другой символ не "y" или "n" и нажмет enter, программа проигнорирует skobets Общие вопросы C/C++ 2 03.06.2008 06:51
cтранная запись формулы ЕСЛИ: "=+ЕСЛИ(..." icore2008 Microsoft Office Excel 4 10.04.2008 21:32