Страницы: 1
RSS
[ Закрыто ] Работа макроса, Проблема с переносом макроса из книги в личную книгу макроса
 
Здравствуйте
Есть файл в котором есть макрос, который копирует нужное содержимое ячеек открытой книги в другой файл.
Макрос работает, но только если запускается из книги.
Если я его копирую в личную книгу макросов, то макрос тоже срабатывает, но содержимое из ячеек не попадает в нужный файл.
Буду признателен за любую помощь.
Изменено: slavas77 - 16.11.2023 20:24:53
 
slavas77 Здравствуйте Если мы не увидим ваш макрос или файл с макросом вряд ли  сможем помочь
Название темы Некорректная работа макроса в личной книге макросов
Изменено: Евгений Смирнов - 16.11.2023 20:30:16
 
мне нужно сам файл прикрепить или достаточно код макроса?
 
Sub строка1()
Range("A7").Select
Dim iLastRow As Long
Workbooks.Open Filename:="D:\3_NEW\CN23\f_obmen.xlsm"
ThisWorkbook.Activate
iLastRow = Workbooks("f_obmen.xlsm").Worksheets("Лист1").Range("A5000").End(xlUp).Row + 1
Workbooks("f_obmen").Worksheets("Лист1").Cells(iLastRow, 1) = ActiveCell
Workbooks("f_obmen").Worksheets("Лист1").Cells(iLastRow, 2) = ActiveCell.Offset(, 1)
Workbooks("f_obmen").Worksheets("Лист1").Cells(iLastRow, 3) = ActiveCell.Offset(, 2)
Workbooks("f_obmen").Worksheets("Лист1").Cells(iLastRow, 4) = ActiveCell.Offset(, 3)
Workbooks("f_obmen").Worksheets("Лист1").Cells(iLastRow, 5) = ActiveCell.Offset(, 4)
Workbooks("f_obmen").Worksheets("Лист1").Cells(iLastRow, 6) = ActiveCell.Offset(, 5)
Workbooks("f_obmen").Worksheets("Лист1").Cells(iLastRow, 7) = ActiveCell.Offset(, 6)
Workbooks("f_obmen").Worksheets("Лист1").Cells(iLastRow, 8) = ActiveCell.Offset(, 7)
Workbooks("f_obmen").Worksheets("Лист1").Cells(iLastRow, 9) = ActiveCell.Offset(, 8)
Workbooks("f_obmen").Worksheets("Лист1").Cells(iLastRow, 10) = ActiveCell.Offset(, 9)
Workbooks("f_obmen").Worksheets("Лист1").Cells(iLastRow, 11) = ActiveCell.Offset(, 10)
Workbooks("f_obmen").Worksheets("Лист1").Cells(iLastRow, 12) = ActiveCell.Offset(, 11)
Workbooks("f_obmen").Worksheets("Лист1").Cells(iLastRow, 13) = ActiveCell.Offset(, 12)
Workbooks("f_obmen").Worksheets("Лист1").Cells(iLastRow, 14) = ActiveCell.Offset(, 13)
Workbooks("f_obmen").Worksheets("Лист1").Cells(iLastRow, 15) = ActiveCell.Offset(, 14)
Workbooks("f_obmen").Worksheets("Лист1").Cells(iLastRow, 16) = ActiveCell.Offset(, 15)
Workbooks("f_obmen").Worksheets("Лист1").Cells(iLastRow, 17) = ActiveCell.Offset(, 16)
Workbooks("f_obmen").Worksheets("Лист1").Cells(iLastRow, 18) = ActiveCell.Offset(, 17)
Workbooks("f_obmen").Worksheets("Лист1").Cells(iLastRow, 19) = ActiveCell.Offset(, 18)
Workbooks("f_obmen").Worksheets("Лист1").Cells(iLastRow, 20) = ActiveCell.Offset(, 19)
Workbooks("f_obmen").Worksheets("Лист1").Cells(iLastRow, 21) = ActiveCell.Offset(, 20)
Workbooks("f_obmen").Worksheets("Лист1").Cells(iLastRow, 22) = ActiveCell.Offset(, 21)
Workbooks("f_obmen").Worksheets("Лист1").Cells(iLastRow, 23) = ActiveCell.Offset(, 22)
Workbooks("f_obmen").Worksheets("Лист1").Cells(iLastRow, 24) = ActiveCell.Offset(, 23)
Workbooks("f_obmen").Worksheets("Лист1").Cells(iLastRow, 25) = ActiveCell.Offset(, 24)
Workbooks("f_obmen").Worksheets("Лист1").Cells(iLastRow, 26) = ActiveCell.Offset(, 25)
Workbooks("f_obmen").Worksheets("Лист1").Cells(iLastRow, 27) = ActiveCell.Offset(, 26)
Workbooks("f_obmen").Worksheets("Лист1").Cells(iLastRow, 28) = ActiveCell.Offset(, 27)
Workbooks("f_obmen").Worksheets("Лист1").Cells(iLastRow, 29) = ActiveCell.Offset(, 28)
Workbooks("f_obmen").Worksheets("Лист1").Cells(iLastRow, 30) = ActiveCell.Offset(, 29)
Workbooks("f_obmen").Worksheets("Лист1").Cells(iLastRow, 31) = ActiveCell.Offset(, 30)
Workbooks("f_obmen").Worksheets("Лист1").Cells(iLastRow, 32) = ActiveCell.Offset(, 31)
Workbooks("f_obmen").Worksheets("Лист1").Cells(iLastRow, 33) = ActiveCell.Offset(, 32)
Workbooks("f_obmen").Worksheets("Лист1").Cells(iLastRow, 34) = ActiveCell.Offset(, 33)
Workbooks("f_obmen").Worksheets("Лист1").Cells(iLastRow, 35) = ActiveCell.Offset(, 34)
Workbooks("f_obmen").Worksheets("Лист1").Cells(iLastRow, 36) = ActiveCell.Offset(, 35)
Workbooks("f_obmen").Worksheets("Лист1").Cells(iLastRow, 37) = ActiveCell.Offset(, 36)
Workbooks("f_obmen").Worksheets("Лист1").Cells(iLastRow, 38) = ActiveCell.Offset(, 37)
Workbooks("f_obmen").Worksheets("Лист1").Cells(iLastRow, 39) = ActiveCell.Offset(, 38)
Workbooks("f_obmen").Worksheets("Лист1").Cells(iLastRow, 40) = ActiveCell.Offset(, 39)
Workbooks("f_obmen").Worksheets("Лист1").Cells(iLastRow, 41) = ActiveCell.Offset(, 40)
Workbooks("f_obmen").Worksheets("Лист1").Cells(iLastRow, 42) = ActiveCell.Offset(, 41)
Workbooks("f_obmen").Worksheets("Лист1").Cells(iLastRow, 43) = ActiveCell.Offset(, 42)
Workbooks("f_obmen").Save
Workbooks("f_obmen").Close

Sheets("Источник").Select
   Range("E8:E9").Select
   
Range("E7").Select

Workbooks.Open Filename:="D:\3_NEW\CN23\reestr.xlsx"
ThisWorkbook.Activate
iLastRow = Workbooks("reestr.xlsx").Worksheets("Лист1").Range("E5000").End(xlUp).Row + 1
Workbooks("reestr").Worksheets("Лист1").Cells(iLastRow, 4) = ActiveCell
Workbooks("reestr").Worksheets("Лист1").Cells(iLastRow, 5) = ActiveCell.Offset(, 2)
Workbooks("reestr").Worksheets("Лист1").Cells(iLastRow, 2) = ActiveCell.Offset(, 1)

Workbooks("reestr").Save
Workbooks("reestr").Close

   
   Sheets("Лист2").Select
   Range("A7").Select


End Sub
 
Есть 3 файла.
Первый это открытая книга, из которой берется информация.
Второй f_obmen сюда попадает одна информация
Третий reestr сюда другая.

Макрос работает. Только, который в самой книге.
Если его скопировать в личную книгу макросов и запустить от туда, то информация из первого файла не отображается во втором и третьим
Изменено: slavas77 - 16.11.2023 21:17:26
 
ThisWorkbook - возвращает книгу содержащую выполняемый код. Примените другую адресацию для книги-источника.
Изменено: R091n - 17.11.2023 08:22:52
 
Цитата
написал:
ThisWorkbook.Activate
Цитата
написал:
Если его скопировать в личную книгу макросов
Вряд ли вы собирались активировать личную книгу макросов.
 
Цитата
написал:
Примените другую адресацию для книги-источника.
Здравствуйте
А можно по подробней, пожалуйста
 
Цитата
slavas77 написал:
А можно по подробней, пожалуйста
Workbooks("имя_книги_источника")
Страницы: 1
Наверх