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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 21.07.2014, 09:29   #1
lioon
Пользователь
 
Регистрация: 06.05.2011
Сообщений: 38
По умолчанию Получить значение из первого столбца последней строки другой книги

Добрый день,

Столкнулся с проблемой, которую пока не удалось решить.

Пред история: есть файл "Задание", который создает отчет и формирует строку, которую я вставляю в последнюю строку сводного файла.

В чем проблема: перед тем как вставить текущую строку последней в книге со сводной таблицей, нужно из последней строки столбца А (сводного файла) считать номер и записать его в файл задания (это Номер задания) и уже с этим номером строка из файла "Задание" добавляется последней в сводную таблицу.

Вставить строку получилось, а получить и записать номер задания - нет.

Код которым пользовался для добавления строки:
Код:
 If Not TypeName(Selection) = "Range" Then Exit Sub
        Dim lr&, wb As Workbook, lb As Workbook
        With Application: .ScreenUpdating = False: .DisplayAlerts = False: .EnableEvents = False: End With
        Set wb = GetObject("d:\Сводный.xlsm")   'путь к сводному файлу
        Set lb = ThisWorkbook
        lr = wb.Sheets(1).Cells(Rows.Count, 1).End(xlUp).Row
        Selection.EntireRow.Copy wb.Sheets(1).Cells(lr + 1, 1)
        wb.Close (True)   ' закрыть с сохранением
        With Application: .EnableEvents = True: .DisplayAlerts = True: .ScreenUpdating = True: End With
        Set wb = Nothing: Set lb = Nothing
lioon вне форума Ответить с цитированием
Старый 21.07.2014, 09:35   #2
Hugo121
Старожил
 
Регистрация: 11.05.2010
Сообщений: 5,166
По умолчанию

Код:
номерзадания=wb.Sheets(1).Cells(Rows.Count, 1).End(xlUp)
И Вам не важно, что файл сохраняется с невидимым окном?
webmoney: E265281470651 Z422237915069 R418926282008
Hugo121 вне форума Ответить с цитированием
Старый 21.07.2014, 09:43   #3
lioon
Пользователь
 
Регистрация: 06.05.2011
Сообщений: 38
По умолчанию

Да, для данной задачи, я думаю, это правильное решение, т.к. единственное, что нужно от этого файла - это следующий номер по порядку.
lioon вне форума Ответить с цитированием
Старый 22.07.2014, 05:34   #4
lioon
Пользователь
 
Регистрация: 06.05.2011
Сообщений: 38
По умолчанию

Допедрил.
Пошел по пути наименьшего сопротивления. Подсчитал количество строк в сводном документе и прибавил к нему единицу - номер следующего документа:

Выкладываю решение:
Код:
Dim lr&, wb As Workbook, lb, ish As Workbook
        Dim i As Integer
        With Application: .ScreenUpdating = False: .DisplayAlerts = False: .EnableEvents = False: End With
        Set wb = GetObject("Z:\Сводный.xlsm") 
        Set lb = ThisWorkbook
        i = wb.Worksheets(1).Columns("A").End(xlDown).Row
        lb.Worksheets(1).Range("J6").Value = i+1
lioon вне форума Ответить с цитированием
Старый 22.07.2014, 10:11   #5
Hugo121
Старожил
 
Регистрация: 11.05.2010
Сообщений: 5,166
По умолчанию

Почему не

Код:
номерзадания=wb.Sheets(1).Cells(Rows.Count, 1).End(xlUp)
lb.Worksheets(1).Range("J6").Value = номерзадания+1
или как у Вас
Код:
i = wb.Worksheets(1).Columns("A").End(xlDown)
lb.Worksheets(1).Range("J6").Value = i+1
webmoney: E265281470651 Z422237915069 R418926282008
Hugo121 вне форума Ответить с цитированием
Старый 22.07.2014, 14:38   #6
lioon
Пользователь
 
Регистрация: 06.05.2011
Сообщений: 38
По умолчанию

да, можно так. Спасибо
lioon вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как получить номер последней строки закрытой книги G_D_A Microsoft Office Excel 8 15.01.2012 00:35
перенести значение последней заполненной строки Jazz1200 Microsoft Office Excel 4 12.12.2010 17:11
Ячейке присвоить значение листа, но другой книги kzld Microsoft Office Excel 2 02.11.2010 12:47
Копирование данных с одного листа на другой по значению первого столбца Lis000iq Microsoft Office Excel 11 07.03.2010 13:34
Для первого столбца и первой строки вычислить произведение положительных элементов. Katie Помощь студентам 4 13.01.2010 02:21