Профессиональные приемы работы в Microsoft Excel

Пожалуйста, войдите или зарегистрируйтесь.


Расширенный поиск  

Новости:

Из правил форума: Тема должна отражать суть вопроса, топики типа "help please" будут удаляться!

Автор Тема: Макрос копирования значений ячеек из одной книги в другую с привязкой к дате  (Прочитано 370 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Typyk_MakTo

  • Новичок
  • *
  • Уважение: +0/-0
  • Оффлайн Оффлайн
  • Сообщений: 1

Здравствуйте, профессионалы и начинающие. Прошу помощи в написании макроса по копированию десяти значений (не формул а именно значений) из активного листа Книги 1 в активный лист Книги 2. Примеры книг во вложении. От макроса необходимо, чтобы все значения копировались в Книгу 2 в необходимую строку, зависящую от текущей даты на компьютере. Пример: Если запустить макрос 2го числа любого месяца, то значения должны скопироваться в сторку "В3" Книги 2, отвечающую за прошлый день 1ого числа месяца. При запуске макроса 3го числа любого месяца, значения должны скопироваться в строку "В4" Книги 2, отвечающую за прошлый день 2ого числа месяца и т.д. Из Книги 1 значения с первого по четвертое, а также с пятого по восьмое можно скопировать в Книгу 2, применив специальную вставку типа "транспонирование", значения 9 и 10 копируются в разные адреса (не соседние) ячеек Книги 2. В Книге 2 пропуски столбцов F, J, L и строк 13, 24 сделал специально, чтобы впоследствии легче применить макрос к своему рабочему файлу. Я, кончено же, читал много форумов, понимаю принцип макроса типа выделения ячейки, ее копирования, активации или открытия книги куда происходит копирование, снова выделение ячейки и вставка. Так можно сделать для каждого из десяти значения, но я не знаю как сделать привязку к текущей дате на компьютере а так же можно применить транспонирование и сделать макрос проще. В общем, вся надежда на Вас, уважаемые "гуру" экселя. Заранее спасибо за помощь :)
« Последнее редактирование: 20.02.2018, 05:28:15 от Typyk_MakTo »
Записан

boa

  • Глобальный модератор
  • Старожил
  • *****
  • Уважение: +28/-0
  • Оффлайн Оффлайн
  • Сообщений: 501
  • Доброта спасет мир...

Добрый день,
в макросе, для работы с датой вам могут понадобиться функции
Sub test()
    Debug.Print Date
    Debug.Print Day(Date)
    Debug.Print Weekday(Date)
End Sub
а вообще-то значения можно функциями подтянуть
=IF(RC1=DAY(TODAY());IFERROR(INDEX('[Книга 1.xlsx]Лист1'!R2C2:R11C2;MATCH(R2C;'[Книга 1.xlsx]Лист1'!R2C1:R11C1;0));"");"")
Записан
Ничто не обходится нам так дешево и не ценится так дорого, как вежливость...  Мигель Сервантес де Сааведра
 



Темы без ответов

22.05.2018 11:38 Скрипт написать который допишет данные в файл 414
03.03.2018 00:00 Подсчет отработанного времени, за исключением заранее определенных перерывов 772
14.02.2018 10:11 Подготовить читабельную отчетность по платежам 724
23.01.2018 13:46 Найти вероятность повторной покупки 704
12.01.2018 23:56 Сделать отчет на Power BI (Dashboard) 946
06.09.2017 10:43 Solver VBA не решает гиперболическое уравнение, но при этом решает гармоническое 966
17.08.2017 12:15 Гиперссылка и фильтр одновременно макрос 1264
23.05.2017 11:20 Копирование данных из одной таблицы в умную таблицу по условию 2808
15.03.2017 15:45 автозамена картинок PowerPoint 1722
11.03.2017 13:43 Изменить нумерацию страниц 1939





Яндекс цитирования msexcel.ru Яндекс.Метрика

Страница сгенерирована за 0.133 секунд. Запросов: 103.