powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Последняя строка Excel
18 сообщений из 18, страница 1 из 1
Последняя строка Excel
    #36588457
Lexx_SQL
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый день!
Необходимо найти последнюю запись в Excel. В VBA это было:
xlWb.Cells(Rows.Count, 1).End(xlUp).Row
а как в VB(VS2008)?
Спасибо.
...
Рейтинг: 0 / 0
Последняя строка Excel
    #36588520
Фотография Игорь Горбонос
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
> Автор: Lexx_SQL
> Необходимо найти последнюю запись в Excel. В VBA это было:

Да практически так-же, ну разве что нужно указать путь от Application, да константы прописать

Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Последняя строка Excel
    #36588592
cynep kopoBka
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
5.
6.
        Set ExApp = New Excel.Application
        Set ExBo = ExApp.Workbooks.Open(App.Path & "\говнофайл.xls")
        Set ExSh = ExBo.ActiveSheet
        With ActiveSheet.UsedRange
            iRow = .Row + .Rows.Count -  1  '=-=-=-=--= Последняя строка
            iCol = .Column + .Columns.Count -  1  '=-=-=-=--= Последний столбец
        End With
Например, так
...
Рейтинг: 0 / 0
Последняя строка Excel
    #36588619
Lexx_SQL
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Игорь Горбонос,

у меня xlUp не понимает, пишет не знаю такого...
...
Рейтинг: 0 / 0
Последняя строка Excel
    #36589431
Фотография Игорь Горбонос
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
> Автор: Lexx_SQL
> у меня xlUp не понимает, пишет не знаю такого...

А в екселе посмотреть?
Object BrowserConst xlUp = -4162 (&HFFFFEFBE)
Member of Excel.XlDirection

Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Последняя строка Excel
    #36589717
Lexx_SQL
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Игорь Горбонос,
спасибо...заработало
...
Рейтинг: 0 / 0
Последняя строка Excel
    #36595809
motorway
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
У меня с нахождением последней строки было много проблем. Дело в том, что после удаления данных она продолжала оставаться старой. И даже сейчас вроде так в моем приложении. Этот способ свободен от таких глюков?
...
Рейтинг: 0 / 0
Последняя строка Excel
    #36595872
Фотография Игорь Горбонос
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
motorway,

вряд ли, пока не сохранишь файл, последними остаются строка\столбец которые были до удаления
...
Рейтинг: 0 / 0
Последняя строка Excel
    #36609171
Я использую очень простой и быстрый код.

Код: plaintext
1.
2.
3.
Sub FindLastOccupied(lastRow, lastCol)
lastRow = Range("a65536").End(xlUp).Row
lastCol = Range("IV1").End(xlToLeft).Column
End Sub
...
Рейтинг: 0 / 0
Последняя строка Excel
    #36690052
valdemar_ru
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Подскажите пожалуйста. Пытаюсь использовать функцию End(xlToLeft)

авторWhile x <= UBound(FilesToOpen)
Workbooks.Open Filename:=FilesToOpen(x)
'MsgBox Sheets("Recept").Range("A1")
'ThisWorkbook.Sheets("Impord").Range("A1")
I = ThisWorkbook.Sheets("Impord").Cells(1, Columns.Count).End(xlToLeft).Column + 1
MsgBox I
Sheets("Recept").Protect UserInterfaceOnly:=True
Sheets("Recept").Cells(1, 1).CurrentRegion.Copy _
ThisWorkbook.Sheets("Impord").Cells(I, 1)

'Sheets().Move After:=ThisWorkbook.Sheets(ThisWorkbook.Sheets.Count)
x = x + 1
Workbooks(x).Close
Wend
После повторного прохождения цикла, значение возвращаемое этой функцией остается, то же
почему? или как исправить
...
Рейтинг: 0 / 0
Последняя строка Excel
    #36690166
Hugo121
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
valdemar_ru,
так куда копировать хотите? Сейчас копируете вниз:
ThisWorkbook.Sheets("Impord").Cells(I, 1)
Поэтому I и не меняется.
А если надо вправо, то
ThisWorkbook.Sheets("Impord").Cells(1, I)
...
Рейтинг: 0 / 0
Последняя строка Excel
    #36691060
valdemar_ru
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Hugo121,
Копирую в низ, но текст не вставляется в пустую последнюю строку, а просто заменятеся
...
Рейтинг: 0 / 0
Последняя строка Excel
    #36691469
valdemar_ru
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо разобрался сам
авторWhile x <= UBound(FilesToOpen)
Workbooks.Open Filename:=FilesToOpen(x)
Do While ThisWorkbook.Sheets("Impord").Cells(I, 1).Value <> ""
I = I + 1
Loop
Sheets("Recept").Protect UserInterfaceOnly:=True
Sheets("Recept").Cells(1, 1).CurrentRegion.Copy _
ThisWorkbook.Sheets("Impord").Cells(I, 1)
x = x + 1
Workbooks.Item(2).Close savechanges:=False
Wend
...
Рейтинг: 0 / 0
Последняя строка Excel
    #36691563
Hugo121
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
valdemar_ru, не поняли намёка - надо было поменять всего лишь

I = ThisWorkbook.Sheets("Impord").Cells(Rows.Count, 1).End(xlUp).Row + 1

Вам ведь надо определить последнюю строку, а не столбец (раз надо вниз копировать, а не вправо после данных).
...
Рейтинг: 0 / 0
Последняя строка Excel
    #36691928
valdemar_ru
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Hugo121,
I = ThisWorkbook.Sheets("Impord").Cells(Rows.Count, 1).End(xlUp).Row + 1
я пробовал эту запись, но она рабтает странно, первый раз в Rows.Count результат записывается
счетчика допустим 5 (Rows.Count =5) второй раз она не обнуляется т.е. будет Rows.Count =5 + 5
и так постоянно поэтому решал не использовать эту конструкцию
...
Рейтинг: 0 / 0
Последняя строка Excel
    #36691965
Hugo121
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
valdemar_ru,
нет, Rows.Count в большинстве случаев будет 65536 (если не 2007 офис), выполните из листа
Код: plaintext
1.
2.
3.
4.
Sub tt()
x = Rows.Count
MsgBox x
End Sub
а вот это
I = ThisWorkbook.Sheets("Impord").Cells(Rows.Count, 1).End(xlUp). Row + 1
ищет первую свободную строку снизу по первой колонке. Т.е. если у Вас именно в первую колонку данные пишутся не до низу - пишите вместо "1" номер колонки, где заполнена последняя строка.
...
Рейтинг: 0 / 0
Последняя строка Excel
    #36692078
valdemar_ru
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Hugo121, Я так понял моей ошибкой была вставленная переменная вместо Rows.Count Cells (i, 1) ?
...
Рейтинг: 0 / 0
Последняя строка Excel
    #36692433
Hugo121
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
valdemar_ru,
без примера я проверить не могу, но так глазами вижу, что I у Вас не менялась, потому что это был последний столбец (который постоянно 5-ый), а не строка (которая должна возрастать при всавке вниз). Поэтому всё время вставка шла в одно место.
...
Рейтинг: 0 / 0
18 сообщений из 18, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Последняя строка Excel
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]