Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Добавление особых листов / 6 сообщений из 6, страница 1 из 1
14.06.2007, 15:04:04
    #34594935
andMegaM
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Добавление особых листов
Всем привет!
У меня небоьшая (вроде бы) проблема.
Мне нужен макрос, который бы создавал листы с именами, находящимися на листе с названием
"Исходник" в колонке "D".
Написал код в котором что-то не так. Добавляется только один лист, а мне надо добавить
столько листов, сколько непустых ячеек на листе с названием "Исходник" в колонке "D".


Код: 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.
Sub A_2()
Dim i As Integer
Dim j As Integer
Dim k As Integer

i = Application.WorksheetFunction.CountA(Range("D:D"))
'MsgBox i

For j =  1  To i

tt =  1 
Label1:
 
   For k = tt To  20 
       
       If Cells(k,  4 ).Value = "" Then
          tt = k +  1 
          GoTo Label1
       Else
        'MsgBox Cells(k, 4).Value
        ActiveWorkbook.Sheets.Add Before:=Worksheets(Worksheets.Count)
        Worksheets(j).Name = Worksheets("Исходник").Cells(k,  4 ).Value
       End If
     
   Next k
   
Next j

End Sub
...
Рейтинг: 0 / 0
14.06.2007, 15:43:31
    #34595089
big-duke
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Добавление особых листов
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
Dim TargetRange As Range, R As Range
    Set TargetRange = ActiveSheet.Range("D:D")
    Application.ScreenUpdating = False
    For Each R In TargetRange
        If R.Value <> vbNullString Then
            Worksheets.Add after:=Worksheets(Worksheets.Count)
            Worksheets(Worksheets.Count).Name = R
        End If
    Next R
    Application.ScreenUpdating = True
...
Рейтинг: 0 / 0
14.06.2007, 15:54:02
    #34595128
andMegaM
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Добавление особых листов
Спасибо. Это то чтот нужно
...
Рейтинг: 0 / 0
14.06.2007, 16:05:05
    #34595177
andMegaM
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Добавление особых листов
А как сделать имя листов не из колонки D определенной строки, а из колонки A этой же строки?
Т.е лист добавляется из условия непустой ячейки в колонке D, а имя берется из колонки A, той же строки
...
Рейтинг: 0 / 0
14.06.2007, 16:06:40
    #34595182
big-duke
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Добавление особых листов
andMegaMА как сделать имя листов не из колонки D определенной строки, а из колонки A этой же строки?
Т.е лист добавляется из условия непустой ячейки в колонке D, а имя берется из колонки A, той же строки
Worksheets(Worksheets.Count).Name=r.offset(0,-3).value или
Worksheets(Worksheets.Count).Name=range("A" & r.row).value
...
Рейтинг: 0 / 0
14.06.2007, 16:17:28
    #34595223
andMegaM
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Добавление особых листов
Спасибо еще раз!!! Работает
...
Рейтинг: 0 / 0
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Добавление особых листов / 6 сообщений из 6, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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