Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Копировать строчки из разных листов - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по Excel » Копировать строчки из разных листов (Формулы/Formulas)
Копировать строчки из разных листов
Михаил123rus Дата: Среда, 29.08.2018, 17:56 | Сообщение № 1
Группа: Пользователи
Ранг: Прохожий
Сообщений: 5
Репутация: 0 ±
Замечаний: 0% ±

Excel 2016
Добрый день, уважаемые форумчане просьба помочь с вопросом. Есть н-ое колличество листов с номерами автомобилей, где в каждом прописываются данные(события). Нужно, чтобы со всех листов автоматически копировались все эти строчки в событиях записи на последний лист "Статистика", но вначиле каждой строки указывалось название листа(номер машины). Листов с машинами в дальнейшем будет добавляться. Просьба помочь с формулой.
К сообщению приложен файл: 0865390.xlsx (87.8 Kb)


Сообщение отредактировал Михаил123rus - Среда, 29.08.2018, 17:58
 
Ответить
СообщениеДобрый день, уважаемые форумчане просьба помочь с вопросом. Есть н-ое колличество листов с номерами автомобилей, где в каждом прописываются данные(события). Нужно, чтобы со всех листов автоматически копировались все эти строчки в событиях записи на последний лист "Статистика", но вначиле каждой строки указывалось название листа(номер машины). Листов с машинами в дальнейшем будет добавляться. Просьба помочь с формулой.

Автор - Михаил123rus
Дата добавления - 29.08.2018 в 17:56
iMrTidy Дата: Среда, 29.08.2018, 22:56 | Сообщение № 2
Группа: Пользователи
Ранг: Участник
Сообщений: 85
Репутация: 14 ±
Замечаний: 0% ±

NO
Михаил123rus, тут формулами не обойдешься, понадобятся макросы, но писать за Вас бесплатно вряд ли кто-то согласится.


Вышенаписанное мной не является истиной, но лишь моя точка зрения, которая скорее всего ошибочна.
 
Ответить
СообщениеМихаил123rus, тут формулами не обойдешься, понадобятся макросы, но писать за Вас бесплатно вряд ли кто-то согласится.

Автор - iMrTidy
Дата добавления - 29.08.2018 в 22:56
Pelena Дата: Четверг, 30.08.2018, 07:13 | Сообщение № 3
Группа: Админы
Ранг: Местный житель
Сообщений: 19174
Репутация: 4413 ±
Замечаний: ±

Excel 365 & Mac Excel
iMrTidy, не надо за всех решать. Многие здесь учатся и тренируются.
Тем более, что макрос в данном случае не единственное решение
Например, вариант с Power Query. После добавления данных перейти на лист Total и нажать кнопку Обновить
К сообщению приложен файл: 3243191.xlsx (77.6 Kb)


"Черт возьми, Холмс! Но как??!!"
Ю-money 41001765434816
 
Ответить
СообщениеiMrTidy, не надо за всех решать. Многие здесь учатся и тренируются.
Тем более, что макрос в данном случае не единственное решение
Например, вариант с Power Query. После добавления данных перейти на лист Total и нажать кнопку Обновить

Автор - Pelena
Дата добавления - 30.08.2018 в 07:13
iMrTidy Дата: Четверг, 30.08.2018, 09:33 | Сообщение № 4
Группа: Пользователи
Ранг: Участник
Сообщений: 85
Репутация: 14 ±
Замечаний: 0% ±

NO
Pelena, где же я решаю? Я как раз-таки написал:
но писать за Вас бесплатно вряд ли кто-то согласится

Хотя ладно, учту на будущее.


Вышенаписанное мной не является истиной, но лишь моя точка зрения, которая скорее всего ошибочна.
 
Ответить
СообщениеPelena, где же я решаю? Я как раз-таки написал:
но писать за Вас бесплатно вряд ли кто-то согласится

Хотя ладно, учту на будущее.

Автор - iMrTidy
Дата добавления - 30.08.2018 в 09:33
StoTisteg Дата: Четверг, 30.08.2018, 11:20 | Сообщение № 5
Группа: Авторы
Ранг: Старожил
Сообщений: 1161
Репутация: 103 ±
Замечаний: 0% ±

Excel 2010
[vba]
Код
Sub Перенос()

   Dim i As Integer, shts As Integer, rw As Integer, drw As Integer
   
   shts = ThisWorkbook.Sheets.Count
   For i = 2 To shts - 1
      With Worksheets(i)
         drw = .Columns(4).Find(what:="Водитель", LookIn:=xlValues, lookat:=xlWhole).Row + 1
         Do Until .Cells(drw, 1).Value = ""
            rw = Cells(Rows.Count, 1).End(xlUp).Row + 1
            Cells(rw, 1).Value = .Cells(1, 1).Value
            .Range(.Cells(drw, 1), .Cells(drw, 8)).Copy
            Cells(rw, 2).PasteSpecial Paste:=xlPasteValues
            Application.CutCopyMode = False
            drw = drw + 1
         Loop
      End With
   Next i
   ActiveSheet.Range(Cells(1, 1), Cells(rw, 9)).RemoveDuplicates Columns:=Array(1, 2, 3, 4, 5, 6, 7, 8, 9), Header:=xlYes

End Sub
[/vba]А объединённые ячейки — зло, их я на листе статистики убрал, они там к тому же не нужны.
К сообщению приложен файл: 4136795.xlsm (68.2 Kb)


Интуитивно понятный код - это когда интуитивно понятно, что это код.

Сообщение отредактировал StoTisteg - Четверг, 30.08.2018, 11:30
 
Ответить
Сообщение[vba]
Код
Sub Перенос()

   Dim i As Integer, shts As Integer, rw As Integer, drw As Integer
   
   shts = ThisWorkbook.Sheets.Count
   For i = 2 To shts - 1
      With Worksheets(i)
         drw = .Columns(4).Find(what:="Водитель", LookIn:=xlValues, lookat:=xlWhole).Row + 1
         Do Until .Cells(drw, 1).Value = ""
            rw = Cells(Rows.Count, 1).End(xlUp).Row + 1
            Cells(rw, 1).Value = .Cells(1, 1).Value
            .Range(.Cells(drw, 1), .Cells(drw, 8)).Copy
            Cells(rw, 2).PasteSpecial Paste:=xlPasteValues
            Application.CutCopyMode = False
            drw = drw + 1
         Loop
      End With
   Next i
   ActiveSheet.Range(Cells(1, 1), Cells(rw, 9)).RemoveDuplicates Columns:=Array(1, 2, 3, 4, 5, 6, 7, 8, 9), Header:=xlYes

End Sub
[/vba]А объединённые ячейки — зло, их я на листе статистики убрал, они там к тому же не нужны.

Автор - StoTisteg
Дата добавления - 30.08.2018 в 11:20
Мир MS Excel » Вопросы и решения » Вопросы по Excel » Копировать строчки из разных листов (Формулы/Formulas)
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2024 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!