Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / данные из листа excel в макрос VB / 10 сообщений из 10, страница 1 из 1
13.11.2009, 12:59
    #36309043
vrag86
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
данные из листа excel в макрос VB
ситуация следующая: нужно написать макрос, который сохраняет текущую книгу в файл с именем c:\[Район][Номер].xls, где названия РАЙОН и НОМЕР хранятся в ячейке на листе этой книги. Как обратиться к данным книги из макроса vb?
...
Рейтинг: 0 / 0
13.11.2009, 13:04
    #36309057
Hugo121
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
данные из листа excel в макрос VB
Код: plaintext
1.
2.
3.
Sub tt()
x = [A1]
MsgBox x
End Sub
...
Рейтинг: 0 / 0
13.11.2009, 13:25
    #36309142
.Михаил.
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
данные из листа excel в макрос VB
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
13.11.2009, 13:35
    #36309183
Hugo121
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
данные из листа excel в макрос VB
Т.е. мой пример не работает, или просто Т.С. запутать хотите?
Хорошо, тогда так, это правильно?
Код: plaintext
1.
2.
3.
4.
5.
6.
Sub tt()
With ActiveSheet
x = .Cells( 1 ,  1 ).Value
MsgBox x
End With
End Sub
...
Рейтинг: 0 / 0
13.11.2009, 13:50
    #36309224
Hugo121
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
данные из листа excel в макрос VB
Обобщу:
Код: 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
13.11.2009, 14:13
    #36309306
vrag86
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
данные из листа excel в макрос VB
все сделал по первому варианту, все работает, спасибо
...
Рейтинг: 0 / 0
13.11.2009, 14:16
    #36309322
vrag86
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
данные из листа excel в макрос VB
а можно как-то запустить макрос автоматически при открытии книги?
...
Рейтинг: 0 / 0
13.11.2009, 14:38
    #36309408
Игорь Горбонос
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
данные из листа excel в макрос VB
> Автор: vrag86
> а можно как-то запустить макрос автоматически при открытии книги?

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

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

Private Sub Workbook_Open()

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

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


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