2016-07-11 4 views
1

Я хочу изменить название столбцов на листе excel, используя excel. Я новичок в vba и нашел несколько кодов в Интернете, но в основном это касается того, как менять имена полей при доступе с помощью excel vba. enter image description hereКак изменить название столбца в excel с помощью vba

Я хочу переименовать заголовки столбцов, как на изображении. Спасибо

+1

Вы имеете в виду, например, A, B, C и т. Д.? –

+0

Ya, текущие имена столбца A - это A, а Col B - B. Я хочу переименовать их в Apple и Banana. – Yuvaraj

+0

Диапазон («A: A»). Имя = «Apple» –

ответ

0

Вы не говорите, если с этими заголовками имеется более одной области, поэтому мое решение будет работать для нескольких. К сожалению, он будет работать максимум на 26 столбцов, по одному на каждую букву алфавита. Вы можете расширить его, если хотите. Я включил имена книг и рабочих таблиц, это особенно для меня, вам, очевидно, придется их менять. Код ищет области данных и проходит через них, изменяя заголовки на каждом из них. Вы можете адаптировать код, чтобы просто сделать одну область, конечно. Код начинается в левом верхнем углу области и проходит через одну ячейку за раз, пока не закончится информация, затем она переместится на следующую область.

Sub NewColumnNames() 

Dim FruityColumnNames(26) As String 
Dim a As Integer 
Dim Alphabetical As Integer 

FruityColumnNames(1) = "Apple" 
FruityColumnNames(2) = "Banana" 
FruityColumnNames(3) = "Cherry" 
FruityColumnNames(4) = "Damson" 
FruityColumnNames(5) = "Elderberry" 
FruityColumnNames(6) = "Fig" 
FruityColumnNames(7) = "Gooseberry" 
FruityColumnNames(8) = "Hawthorn" 
FruityColumnNames(9) = "Ita palm" 
FruityColumnNames(10) = "Jujube" 
FruityColumnNames(11) = "Kiwi" 
FruityColumnNames(12) = "Lime" 
FruityColumnNames(13) = "Mango" 
FruityColumnNames(14) = "Nectarine" 
FruityColumnNames(15) = "Orange" 
FruityColumnNames(16) = "Passion fruit" 
FruityColumnNames(17) = "Quince" 
FruityColumnNames(18) = "Raspberry" 
FruityColumnNames(19) = "Sloe" 
FruityColumnNames(20) = "Tangerine" 
FruityColumnNames(21) = "Ugli" 
FruityColumnNames(22) = "Vanilla" 
FruityColumnNames(23) = "Watermelon" 
FruityColumnNames(24) = "Xigua" 
FruityColumnNames(25) = "Yumberry" 
FruityColumnNames(26) = "Zucchini" 

With Workbooks("TestBook.xlsx") 
    With .Worksheets("Destination") 
     With .UsedRange.SpecialCells(xlCellTypeConstants) 
      For a = .Areas.Count To 1 Step -1 
       Alphabetical = 1 
       With .Areas(a) 
        While (.Cells(1, Alphabetical) <> "" And Alphabetical <= 26) 
         .Cells(1, Alphabetical).Value = FruityColumnNames(Alphabetical) 
         Alphabetical = Alphabetical + 1 
        Wend 
       End With 
      Next a 
     End With 
    End With 
End With 

End Sub 
Смежные вопросы