2016-08-04 2 views
1

У меня есть этот код, который создает новый лист в книге и перечисляет все имена листов в столбце, которые работают нормально, но я бы хотел, чтобы он оставил 27 пустых строк между именами листовСоздать список всех имен листов в рабочей книге

Dim xWs As Worksheet 

On Error Resume Next 

Application.DisplayAlerts = False 

xTitleId = "All Sheet Names" 

Application.Sheets(xTitleId).Delete 

Application.Sheets.Add.index 

Set xWs = Application.ActiveSheet 

xWs.Name = xTitleId 

For i = 2 To Application.Sheets.Count 
    xWs.Range("A" & (i - 1)) = Application.Sheets(i).Name 
Next 

Пример это, как она перечисляет их сейчас enter image description here

И это, как я хочу, чтобы перечислить их с пустыми пространствами между каждым именем листа enter image description here

+0

Попробуйте сделать 'xWs.Range ("A" и (я - 1)). Offset (27,0) = Application.Sheets (я) .Name' – BruceWayne

+0

Он просто переехал список вниз до строки 27 :( – luke

+5

'xWs.Range (« A »& ((i-2) * 27) +1)' –

ответ

2

ОП сказал 27 пустых рядов между ними, поэтому следующий ряд будет 28 строк вниз.

enter image description here

For i = 2 To Application.Sheets.Count 

    xWs.Range("A" & ((i - 1) * 28) - 27) = Application.Sheets(i).Name 

Next 
Смежные вопросы