Гость
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Произвести выгрузку в конкретный лист в зависимости от значения в ячейке / 5 сообщений из 5, страница 1 из 1
17.05.2017, 04:55
    #39454247
Axids
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Произвести выгрузку в конкретный лист в зависимости от значения в ячейке
Всем привет. Я в VBA не специалист прошу помощи.

Хочу в зависимости от ячейки допусти 01 выгружать данные в лист Январь, 02- в Февраль и тд...

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

If Sheets("run").Cells(B, 10).Value = "01" Then
Worksheets("Январь").Activate
End If

If Sheets("run").Cells(B, 10).Value = "02" Then
Worksheets("Февраль").Activate
End If
...
Рейтинг: 0 / 0
17.05.2017, 05:54
    #39454251
Axids
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Произвести выгрузку в конкретный лист в зависимости от значения в ячейке
Все разобрался спасибо, если кому надо:


If Sheets("run").Cells(10, 2).Value = "01" Then
Set ws = Worksheets.Item("Январь")
ElseIf Sheets("run").Cells(10, 2).Value = "02" Then
Set ws = Worksheets.Item("Февраль")
ElseIf Sheets("run").Cells(10, 2).Value = "03" Then
Set ws = Worksheets.Item("Март")


ws.Activate
...
Рейтинг: 0 / 0
17.05.2017, 07:59
    #39454297
Akina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Произвести выгрузку в конкретный лист в зависимости от значения в ячейке
Лучше
Код: vbnet
1.
SELECT CASE Sheets("run").Cells(10, 2).Value


Ещё лучше
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
Dim Months(1 to 12) As String

Sub Init()

Months(1)="Январь"
Months(2)="Февраль"
' ...
Months(12)="Декабрь"
End Sub

Set ws = Worksheets.Item(CInt(Sheets("run").Cells(10, 2).Value))
...
Рейтинг: 0 / 0
17.05.2017, 08:02
    #39454299
Egoр
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Произвести выгрузку в конкретный лист в зависимости от значения в ячейке
Axids,

Код: vbnet
1.
2.
3.
4.
5.
val = Sheets("run").Cells(10, 2).Value
If val >= "01" And val <= "03" Then
  Set ws = Worksheets.Item(Format(cdate("01."+val+".2017"),"mmmm"))
  ws.Activate 
end if
...
Рейтинг: 0 / 0
17.05.2017, 08:54
    #39454322
Axids
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Произвести выгрузку в конкретный лист в зависимости от значения в ячейке
Спасибо!

так сделал

Select Case Sheets("run").Cells(10, 2).Value
Case Is = "01"
Set ws = Worksheets.Item("Январь")
Case Is = "02"
Set ws = Worksheets.Item("Февраль")
Case Is = "03"
Set ws = Worksheets.Item("Март")
Case Is = "04"
Set ws = Worksheets.Item("Апрель")
Case Is = "05"
Set ws = Worksheets.Item("Май")
.....
End Select
...
Рейтинг: 0 / 0
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Произвести выгрузку в конкретный лист в зависимости от значения в ячейке / 5 сообщений из 5, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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