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

Вход

Регистрация

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

 

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

Старая форма входа
  • Страница 1 из 3
  • 1
  • 2
  • 3
  • »
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Копирование данных из определенных ячеек на новый лист (Макросы/Sub)
Копирование данных из определенных ячеек на новый лист
Смольный Дата: Воскресенье, 15.05.2022, 14:15 | Сообщение № 1
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 188
Репутация: 0 ±
Замечаний: 0% ±

Добрый вечер. В прикрепленном файле на первом листе форма ввода данных, после ее заполнения и нажатия на кнопку внести данные, данные появляются на листе Данные( все прекрасно работает) но на листе Данные2 нужны не все данные с формы ввода, а некоторые, пробовал изменять макрос который у меня копирует на лист Данные, но не получается. Помогите.
К сообщению приложен файл: 0109797.xlsm (25.6 Kb)
 
Ответить
СообщениеДобрый вечер. В прикрепленном файле на первом листе форма ввода данных, после ее заполнения и нажатия на кнопку внести данные, данные появляются на листе Данные( все прекрасно работает) но на листе Данные2 нужны не все данные с формы ввода, а некоторые, пробовал изменять макрос который у меня копирует на лист Данные, но не получается. Помогите.

Автор - Смольный
Дата добавления - 15.05.2022 в 14:15
Kuzmich Дата: Воскресенье, 15.05.2022, 20:31 | Сообщение № 2
Группа: Проверенные
Ранг: Ветеран
Сообщений: 711
Репутация: 156 ±
Замечаний: 0% ±

Excel 2003
Цитата
на листе Данные2 нужны не все данные

[vba]
Код
Sub Add_Sell()
    Worksheets("Ввод данных").Range("A6:F6").Copy                         'копируем строчку с данными
    n = Worksheets("Данные").Range("A100000").End(xlUp).Row                'определяем номер последней строки в табл. Продажи
    Worksheets("Данные").Cells(n + 1, 1).PasteSpecial Paste:=xlPasteValues 'вставляем в следующую пустую строку
    With Worksheets("Данные (2)")
      n = .Range("A100000").End(xlUp).Row + 1
      Range("B6").Copy .Range("A" & n)
      Range("E6:F6").Copy .Range("B" & n)
    End With
End Sub
[/vba]
 
Ответить
Сообщение
Цитата
на листе Данные2 нужны не все данные

[vba]
Код
Sub Add_Sell()
    Worksheets("Ввод данных").Range("A6:F6").Copy                         'копируем строчку с данными
    n = Worksheets("Данные").Range("A100000").End(xlUp).Row                'определяем номер последней строки в табл. Продажи
    Worksheets("Данные").Cells(n + 1, 1).PasteSpecial Paste:=xlPasteValues 'вставляем в следующую пустую строку
    With Worksheets("Данные (2)")
      n = .Range("A100000").End(xlUp).Row + 1
      Range("B6").Copy .Range("A" & n)
      Range("E6:F6").Copy .Range("B" & n)
    End With
End Sub
[/vba]

Автор - Kuzmich
Дата добавления - 15.05.2022 в 20:31
Смольный Дата: Понедельник, 16.05.2022, 02:45 | Сообщение № 3
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 188
Репутация: 0 ±
Замечаний: 0% ±

Kuzmich, Спасибо, работает.
 
Ответить
СообщениеKuzmich, Спасибо, работает.

Автор - Смольный
Дата добавления - 16.05.2022 в 02:45
Смольный Дата: Понедельник, 16.05.2022, 16:50 | Сообщение № 4
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 188
Репутация: 0 ±
Замечаний: 0% ±

И снова добрый вечер, не могу понять как поправить макрос. Поправьте кто может, нужно чтоб № из ячейки А6 на листе Ввод данных копировался в ячейку А6 на лист Персональные данные не нарушая остальное копирование. Прикрепленный файл обновлен под эту задачу.
К сообщению приложен файл: 3339317.xlsm (58.4 Kb)
 
Ответить
СообщениеИ снова добрый вечер, не могу понять как поправить макрос. Поправьте кто может, нужно чтоб № из ячейки А6 на листе Ввод данных копировался в ячейку А6 на лист Персональные данные не нарушая остальное копирование. Прикрепленный файл обновлен под эту задачу.

Автор - Смольный
Дата добавления - 16.05.2022 в 16:50
Kuzmich Дата: Понедельник, 16.05.2022, 20:50 | Сообщение № 5
Группа: Проверенные
Ранг: Ветеран
Сообщений: 711
Репутация: 156 ±
Замечаний: 0% ±

Excel 2003
Цитата
нужно чтоб № из ячейки А6 на листе Ввод данных копировался в ячейку А6 на лист Персональные данные

Возможно нужно копировать в первую пустую ячейку столбца А листа Персональные данные?
Вставьте строку
[vba]
Код
Worksheets("Ввод данных").Range("A6").Copy Worksheets("Персональные данные").Cells(n + 1, 1)
[/vba]
после копирования диапазона Range("G6:P6").
 
Ответить
Сообщение
Цитата
нужно чтоб № из ячейки А6 на листе Ввод данных копировался в ячейку А6 на лист Персональные данные

Возможно нужно копировать в первую пустую ячейку столбца А листа Персональные данные?
Вставьте строку
[vba]
Код
Worksheets("Ввод данных").Range("A6").Copy Worksheets("Персональные данные").Cells(n + 1, 1)
[/vba]
после копирования диапазона Range("G6:P6").

Автор - Kuzmich
Дата добавления - 16.05.2022 в 20:50
Смольный Дата: Вторник, 17.05.2022, 01:58 | Сообщение № 6
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 188
Репутация: 0 ±
Замечаний: 0% ±

Kuzmich, Точно, не так выразился, спасибо. Осталось последнее, как можно вернуть данные с листов "Персональные данные" и "Движение" на лист "Ввод данных" так как люди которые к нам обратились раньше, обратятся снова, чтоб заново в ручную не забивать их данные? Так же человек который получил ТСР через определенное время его возвращает, возврат тоже учитывается в листах "Персональные данные" и "Движение". Прикрепленный файл обновлен под эту задачу.
К сообщению приложен файл: 1140686.xlsm (59.8 Kb)


Сообщение отредактировал Смольный - Вторник, 17.05.2022, 02:03
 
Ответить
СообщениеKuzmich, Точно, не так выразился, спасибо. Осталось последнее, как можно вернуть данные с листов "Персональные данные" и "Движение" на лист "Ввод данных" так как люди которые к нам обратились раньше, обратятся снова, чтоб заново в ручную не забивать их данные? Так же человек который получил ТСР через определенное время его возвращает, возврат тоже учитывается в листах "Персональные данные" и "Движение". Прикрепленный файл обновлен под эту задачу.

Автор - Смольный
Дата добавления - 17.05.2022 в 01:58
Kuzmich Дата: Вторник, 17.05.2022, 16:24 | Сообщение № 7
Группа: Проверенные
Ранг: Ветеран
Сообщений: 711
Репутация: 156 ±
Замечаний: 0% ±

Excel 2003
Цитата
как можно вернуть данные с листов "Персональные данные" и "Движение" на лист "Ввод данных"

Вы бы на на листе "Ввод данных" показали результат возврата
 
Ответить
Сообщение
Цитата
как можно вернуть данные с листов "Персональные данные" и "Движение" на лист "Ввод данных"

Вы бы на на листе "Ввод данных" показали результат возврата

Автор - Kuzmich
Дата добавления - 17.05.2022 в 16:24
Смольный Дата: Вторник, 17.05.2022, 17:25 | Сообщение № 8
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 188
Репутация: 0 ±
Замечаний: 0% ±

Вы бы на на листе "Ввод данных" показали результат возврата

К примеру через какое то время Иванов второй в списке опять пришел за ТСР, чтоб вручную не вбивать его данные, надо как нибудь их вернуть в форму ввода данных. В прикрепленном файле я в ручную копировал информацию с листов "Персональные данные" и "Движение" на лист "Ввод данных" Если возможно, то можно так же через кнопку, по номеру договора, они будут уникальными.
К сообщению приложен файл: 6951299.xlsm (59.9 Kb)
 
Ответить
Сообщение
Вы бы на на листе "Ввод данных" показали результат возврата

К примеру через какое то время Иванов второй в списке опять пришел за ТСР, чтоб вручную не вбивать его данные, надо как нибудь их вернуть в форму ввода данных. В прикрепленном файле я в ручную копировал информацию с листов "Персональные данные" и "Движение" на лист "Ввод данных" Если возможно, то можно так же через кнопку, по номеру договора, они будут уникальными.

Автор - Смольный
Дата добавления - 17.05.2022 в 17:25
Kuzmich Дата: Вторник, 17.05.2022, 18:14 | Сообщение № 9
Группа: Проверенные
Ранг: Ветеран
Сообщений: 711
Репутация: 156 ±
Замечаний: 0% ±

Excel 2003
Цитата
по номеру договора, они будут уникальными.

На листе Персональные данные нет номера договора и как быть, если будет несколько ФИО Иванов Иван Иванович?
 
Ответить
Сообщение
Цитата
по номеру договора, они будут уникальными.

На листе Персональные данные нет номера договора и как быть, если будет несколько ФИО Иванов Иван Иванович?

Автор - Kuzmich
Дата добавления - 17.05.2022 в 18:14
Смольный Дата: Среда, 18.05.2022, 02:41 | Сообщение № 10
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 188
Репутация: 0 ±
Замечаний: 0% ±

Как нет? Столбец А. поправил лист "Движение" теперь на листе Ввод данных в столбце А номер договора копируется на листы Персональные данные и Движение так же в столбец А
К сообщению приложен файл: 3544691.xlsm (60.1 Kb)


Сообщение отредактировал Serge_007 - Среда, 18.05.2022, 09:53
 
Ответить
СообщениеКак нет? Столбец А. поправил лист "Движение" теперь на листе Ввод данных в столбце А номер договора копируется на листы Персональные данные и Движение так же в столбец А

Автор - Смольный
Дата добавления - 18.05.2022 в 02:41
Kuzmich Дата: Среда, 18.05.2022, 11:18 | Сообщение № 11
Группа: Проверенные
Ранг: Ветеран
Сообщений: 711
Репутация: 156 ±
Замечаний: 0% ±

Excel 2003
Я имел в виду номер ТСР
[vba]
Код
Sub Poisk() 'вписали номер договора в ячейку A6 на листе Ввод данных и запустили макрос Poisk
Dim Dogovor As String
Dim FoundDogovor As Range
Dim FoundDogovor2 As Range
  Dogovor = Range("A6")
  With Worksheets("Движение")
    Set FoundDogovor = .Columns("A").Find(Dogovor, , xlValues, xlWhole)
    If Not FoundDogovor Is Nothing Then
      .Range(.Cells(FoundDogovor.Row, "B"), .Cells(FoundDogovor.Row, "G")).Copy Range("B6")
         'ищем номер договора на листе Персональные данные
      Set FoundDogovor2 = Worksheets("Персональные данные").Columns("A").Find(Dogovor, , xlValues, xlWhole)
      Worksheets("Персональные данные").Range(Worksheets("Персональные данные").Cells(FoundDogovor2.Row, "C"), _
      Worksheets("Персональные данные").Cells(FoundDogovor2.Row, "K")).Copy Range("H6")
    Else
      MsgBox "На листе Движение нет номера договора: " & Dogovor
    End If
  End With
End Sub
[/vba]
 
Ответить
СообщениеЯ имел в виду номер ТСР
[vba]
Код
Sub Poisk() 'вписали номер договора в ячейку A6 на листе Ввод данных и запустили макрос Poisk
Dim Dogovor As String
Dim FoundDogovor As Range
Dim FoundDogovor2 As Range
  Dogovor = Range("A6")
  With Worksheets("Движение")
    Set FoundDogovor = .Columns("A").Find(Dogovor, , xlValues, xlWhole)
    If Not FoundDogovor Is Nothing Then
      .Range(.Cells(FoundDogovor.Row, "B"), .Cells(FoundDogovor.Row, "G")).Copy Range("B6")
         'ищем номер договора на листе Персональные данные
      Set FoundDogovor2 = Worksheets("Персональные данные").Columns("A").Find(Dogovor, , xlValues, xlWhole)
      Worksheets("Персональные данные").Range(Worksheets("Персональные данные").Cells(FoundDogovor2.Row, "C"), _
      Worksheets("Персональные данные").Cells(FoundDogovor2.Row, "K")).Copy Range("H6")
    Else
      MsgBox "На листе Движение нет номера договора: " & Dogovor
    End If
  End With
End Sub
[/vba]

Автор - Kuzmich
Дата добавления - 18.05.2022 в 11:18
Смольный Дата: Среда, 18.05.2022, 14:04 | Сообщение № 12
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 188
Репутация: 0 ±
Замечаний: 0% ±

Kuzmich, Отлично, как и надо, но. Можно сделать чтоб фон ячеек не копировался? На скриншоте видно что данные с листа Движение копируются с зеленым фоном.
К сообщению приложен файл: 6614178.png (26.1 Kb)
 
Ответить
СообщениеKuzmich, Отлично, как и надо, но. Можно сделать чтоб фон ячеек не копировался? На скриншоте видно что данные с листа Движение копируются с зеленым фоном.

Автор - Смольный
Дата добавления - 18.05.2022 в 14:04
Kuzmich Дата: Среда, 18.05.2022, 14:37 | Сообщение № 13
Группа: Проверенные
Ранг: Ветеран
Сообщений: 711
Репутация: 156 ±
Замечаний: 0% ±

Excel 2003
Цитата
чтоб фон ячеек не копировался

Используйте после Copy, .PasteSpecial Paste:=xlPasteValues


Сообщение отредактировал Kuzmich - Среда, 18.05.2022, 14:39
 
Ответить
Сообщение
Цитата
чтоб фон ячеек не копировался

Используйте после Copy, .PasteSpecial Paste:=xlPasteValues

Автор - Kuzmich
Дата добавления - 18.05.2022 в 14:37
Смольный Дата: Среда, 18.05.2022, 14:41 | Сообщение № 14
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 188
Репутация: 0 ±
Замечаний: 0% ±

Используйте не Copy, а .PasteSpecial Paste:=xlPasteValues

Извиняюсь, но можно по подробнее, где именно использовать? Написать после всех Copy, .PasteSpecial Paste:=xlPasteValues в макросе который в сообщении №11?


Сообщение отредактировал Смольный - Среда, 18.05.2022, 14:42
 
Ответить
Сообщение
Используйте не Copy, а .PasteSpecial Paste:=xlPasteValues

Извиняюсь, но можно по подробнее, где именно использовать? Написать после всех Copy, .PasteSpecial Paste:=xlPasteValues в макросе который в сообщении №11?

Автор - Смольный
Дата добавления - 18.05.2022 в 14:41
Kuzmich Дата: Среда, 18.05.2022, 15:02 | Сообщение № 15
Группа: Проверенные
Ранг: Ветеран
Сообщений: 711
Репутация: 156 ±
Замечаний: 0% ±

Excel 2003
Цитата
где именно использовать?

Пробуйте, учитесь
 
Ответить
Сообщение
Цитата
где именно использовать?

Пробуйте, учитесь

Автор - Kuzmich
Дата добавления - 18.05.2022 в 15:02
Смольный Дата: Среда, 18.05.2022, 15:08 | Сообщение № 16
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 188
Репутация: 0 ±
Замечаний: 0% ±

Kuzmich, Я Вас очень прошу мне помочь в этом, в VBA я не силен.
 
Ответить
СообщениеKuzmich, Я Вас очень прошу мне помочь в этом, в VBA я не силен.

Автор - Смольный
Дата добавления - 18.05.2022 в 15:08
Kuzmich Дата: Среда, 18.05.2022, 15:49 | Сообщение № 17
Группа: Проверенные
Ранг: Ветеран
Сообщений: 711
Репутация: 156 ±
Замечаний: 0% ±

Excel 2003
Цитата
данные с листа Движение копируются с зеленым фоном.

Удалите в Условном форматировании правило на выделенные ячейки
 
Ответить
Сообщение
Цитата
данные с листа Движение копируются с зеленым фоном.

Удалите в Условном форматировании правило на выделенные ячейки

Автор - Kuzmich
Дата добавления - 18.05.2022 в 15:49
Смольный Дата: Среда, 18.05.2022, 15:57 | Сообщение № 18
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 188
Репутация: 0 ±
Замечаний: 0% ±

Удалите в Условном форматировании правило на выделенные ячейки

Удалял, после поиска по договору, опять появляются правила условного форматирования
 
Ответить
Сообщение
Удалите в Условном форматировании правило на выделенные ячейки

Удалял, после поиска по договору, опять появляются правила условного форматирования

Автор - Смольный
Дата добавления - 18.05.2022 в 15:57
Kuzmich Дата: Среда, 18.05.2022, 16:23 | Сообщение № 19
Группа: Проверенные
Ранг: Ветеран
Сообщений: 711
Репутация: 156 ±
Замечаний: 0% ±

Excel 2003
Посмотрите файл
К сообщению приложен файл: 3578842.xlsm (60.8 Kb)
 
Ответить
СообщениеПосмотрите файл

Автор - Kuzmich
Дата добавления - 18.05.2022 в 16:23
Смольный Дата: Среда, 18.05.2022, 16:40 | Сообщение № 20
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 188
Репутация: 0 ±
Замечаний: 0% ±

Kuzmich, Скопировал из файла макрос, вообще перестало работать
 
Ответить
СообщениеKuzmich, Скопировал из файла макрос, вообще перестало работать

Автор - Смольный
Дата добавления - 18.05.2022 в 16:40
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Копирование данных из определенных ячеек на новый лист (Макросы/Sub)
  • Страница 1 из 3
  • 1
  • 2
  • 3
  • »
Поиск:

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