powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / подскажите новичку в VBA
7 сообщений из 7, страница 1 из 1
подскажите новичку в VBA
    #36166878
graywolf_too
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Почему не работает в Excel?

Sub dfsdf()
Dim pl As Worksheet
Set pl = Worksheets("Лист1")
pl.Range("B2").Select
End Sub

Пишет ошибку Run-time 1004
Метод Select класса Range завершен неверно
...
Рейтинг: 0 / 0
подскажите новичку в VBA
    #36166902
Valihan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
pl.Range("B2").Select ==> Не совсем понятно что вы хотите сделать

Я незнаю точно но библиотеку вы потключили ?
...
Рейтинг: 0 / 0
подскажите новичку в VBA
    #36168773
YUBA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
graywolf_tooПочему не работает в Excel?

Sub dfsdf()
Dim pl As Worksheet
Set pl = Worksheets("Лист1")
pl.Range("B2").Select
End Sub

Пишет ошибку Run-time 1004
Метод Select класса Range завершен неверно Ваш код выделяет ячейку. работает. ошибок нет.
...
Рейтинг: 0 / 0
подскажите новичку в VBA
    #36170078
sergeyvg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Sub dfsdf()
Dim pl As Worksheet
Set pl = Worksheets("Лист1")
Код: plaintext
pl.Activate
pl.Range("B2").Select
End Sub
...
Рейтинг: 0 / 0
подскажите новичку в VBA
    #36170675
graywolf_too
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
работает только если предварительно сделать вызов Activate
пока делают так, но все равно странно, почему не работает без этого
...
Рейтинг: 0 / 0
подскажите новичку в VBA
    #36172675
Фотография Игорь Горбонос
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
> Автор: graywolf_too
> работает только если предварительно сделать вызов Activate
> пока делают так, но все равно странно, почему не работает без этого

А почему оно должно работать без этого?
Select это аналог выбора одной или нескольких ячеек на листе, как можно выбрать ячейки на скрытом листе?
А метод Activate:
Help VBAActivate method as it applies to the Worksheet object.
Makes the current sheet the active sheet. Equivalent to clicking the sheet's tab.

Как раз аналог клика по ярлыку листа.

Таким образом получается, что сначала нужно выбрать лист, на котором будем выделять область ячеек,

а потом, только, можно сделать Select для ячеек.

Можно не делать Activate для листа, но тогда не нужно делать и Select для ячеек, а сразу им что-то присваивать. Например
так:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
Option Explicit

Sub Sample1()
Dim r As Range
Set r = Worksheets("Лист3").Range("A1")
MsgBox r.Text
r.Value = "Мама мыла раму"
MsgBox r.Text
Set r = Nothing
End Sub

После выполнения макроса на "Лист3" в ячейке А1 будет строка "Мама мыла раму".


Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
подскажите новичку в VBA
    #36178826
YUBA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sergeyvgSub dfsdf()
Dim pl As Worksheet
Set pl = Worksheets("Лист1")
Код: plaintext
pl.Activate
pl.Range("B2").Select
End SubActivate делать совершенно не нужно. Ячейка выберется в любом случае. Так-же как и записать в ячейку можно без активейта.
Если лист уже открыт, то тем более активейт ни к чему. Нужен только, если нужно сделать лист видимым.
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / подскажите новичку в VBA
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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