powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / данные из листа excel в макрос VB
10 сообщений из 10, страница 1 из 1
данные из листа excel в макрос VB
    #36309043
vrag86
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ситуация следующая: нужно написать макрос, который сохраняет текущую книгу в файл с именем c:\[Район][Номер].xls, где названия РАЙОН и НОМЕР хранятся в ячейке на листе этой книги. Как обратиться к данным книги из макроса vb?
...
Рейтинг: 0 / 0
данные из листа excel в макрос VB
    #36309057
Hugo121
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Код: plaintext
1.
2.
3.
Sub tt()
x = [A1]
MsgBox x
End Sub
...
Рейтинг: 0 / 0
данные из листа excel в макрос VB
    #36309142
.Михаил.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Hugo121,
в экселе нажми Alt+F11 , появится редактов vba, нажми Ctrl+R , слева повится "деревовидный список элементов, из который состоит экселевский файл" (листы, модули,...), среди объектов Microsoft Excel Objects найди лист, к которому "собрался обращаться макросом." Выдели его и нажми F4, повится окно, найди строку (Name) , т.е. наименование листа, например, может быть такое значение Лист1 .
Вот пример работы с листом Лист1 , с которым, например, будешь работать
Код: plaintext
1.
2.
Лист1.Cells( 1 , 1 ).Value = "1"
MsgBox Лист1.Cells( 1 , 1 ).Value
В примере: в ячейку с координатами 1,1 или A1 записывается строка "1", а потом происходит считывание из этой ячейки.
...
Рейтинг: 0 / 0
данные из листа excel в макрос VB
    #36309183
Hugo121
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Т.е. мой пример не работает, или просто Т.С. запутать хотите?
Хорошо, тогда так, это правильно?
Код: plaintext
1.
2.
3.
4.
5.
6.
Sub tt()
With ActiveSheet
x = .Cells( 1 ,  1 ).Value
MsgBox x
End With
End Sub
...
Рейтинг: 0 / 0
данные из листа excel в макрос VB
    #36309224
Hugo121
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Обобщу:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
Sub aa()
With ActiveSheet
.Cells( 1 ,  1 ).Value =  1 
x = .Cells( 1 ,  1 ).Value
MsgBox x
End With
End Sub

Sub bb()
Sheet1.Cells( 1 ,  1 ).Value = "2"
MsgBox Sheet1.Cells( 1 ,  1 ).Value
End Sub

Sub cc()
[A1] =  3 
x = [A1]
MsgBox x
End Sub

Sub dd()
Sheets( 1 ).Cells( 1 ,  1 ).Value = "4"
MsgBox Sheets( 1 ).Cells( 1 ,  1 ).Value
End Sub

Sub ee()
Sheets("Sheet1").Cells( 1 ,  1 ).Value = "5"
MsgBox Sheets("Sheet1").Cells( 1 ,  1 ).Value
End Sub

Sub ff()
Range("A1") =  6 
x = Range("A1")
MsgBox x
End Sub
Все варанты работают, и эти ещё не предел вариаций с и без названий/номеров листа, использования Range/[]/Cells...
...
Рейтинг: 0 / 0
данные из листа excel в макрос VB
    #36309306
vrag86
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
все сделал по первому варианту, все работает, спасибо
...
Рейтинг: 0 / 0
данные из листа excel в макрос VB
    #36309322
vrag86
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
а можно как-то запустить макрос автоматически при открытии книги?
...
Рейтинг: 0 / 0
данные из листа excel в макрос VB
    #36309408
Фотография Игорь Горбонос
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
> Автор: vrag86
> а можно как-то запустить макрос автоматически при открытии книги?

Событие есть соответствующее
Его и задействуй

Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
данные из листа excel в макрос VB
    #36309472
Hugo121
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Альтернатива - назови Sub Auto_open()
...
Рейтинг: 0 / 0
данные из листа excel в макрос VB
    #36309556
Djon Player
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vrag86а можно как-то запустить макрос автоматически при открытии книги?
Если речь про VBA Excel, то внутри объекта ЭтаКнига (так оно называется в русской версии, в английской скорее всего по другому) надо разместить следующий код:

Private Sub Workbook_Open()

'А тут разместить ваш код.

End Sub
...
Рейтинг: 0 / 0
10 сообщений из 10, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / данные из листа excel в макрос VB
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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