Consulting

Results 1 to 4 of 4

Thread: Find and rename Column Header using VBA

  1. #1
    VBAX Newbie
    Joined
    Oct 2016
    Posts
    2
    Location

    Find and rename Column Header using VBA

    Hello,
    I have an Excel table with many columns and I want to use an Excel macro to rename the column header, e.g.
    - Family Number to "Family no."
    - Entry Date to "Reference Time"
    - Common Identifier to "Reference Number"
    - Brief Description to "Concise Summary"
    - Subject Matter to "Main Theme"
    Thank you so much for your help.
    Niclal
    Attached Files Attached Files

  2. #2
    VBAX Guru mancubus's Avatar
    Joined
    Dec 2010
    Location
    "Where I lay my head is home" :D
    Posts
    2,644
    welcome to the forum.

    did you consider doing it manually?
    it will take shorter...
    PLS DO NOT PM; OPEN A THREAD INSTEAD!!!

    1) Posting Code
    [CODE]PasteYourCodeHere[/CODE]
    (or paste your code, select it, click # button)

    2) Uploading File(s)
    Go Advanced / Attachments - Manage Attachments / Add Files / Select Files / Select the file(s) (multiple files can be selected while holding Ctrl key) / Upload Files / Done
    Replace company specific / sensitive / confidential data. Include so many rows and sheets etc in the uploaded workbook to enable the helpers visualize the data and table structure. Helpers do not need the entire workbook.

    3) Testing the Codes
    always back up your files before testing the codes.

    4) Marking the Thread as Solved
    from Thread Tools (on the top right corner, above the first message)

  3. #3
    VBAX Newbie
    Joined
    Oct 2016
    Posts
    2
    Location
    Hi Mancubus,
    You are right, but this is just a small part of a long Excel macro.
    N

  4. #4
    VBAX Guru mancubus's Avatar
    Joined
    Dec 2010
    Location
    "Where I lay my head is home" :D
    Posts
    2,644
    since uploaded file contains only a small table here is my solution:

    add a worksheet yo your workbook.
    rename it as column_headers
    from A1 downwards insert existing column headers.
    from B1 downwards insert desired column headers.

    run below macro

    Sub vbax_57596_Change_Column_Headers()
    
        Dim ColHeads
        Dim i As Long
        
        ColHeads = Worksheets("column_headers").Cells(1).CurrentRegion.Value
        
        With Worksheets("Sheet1")
            For i = LBound(ColHeads, 1) To UBound(ColHeads, 1)
                .Rows(1).Find(ColHeads(i, 1)).Value = ColHeads(i, 2)
            Next i
        End With
    
    End Sub
    see attached.

    make sure column A in sheet column_headers contains all values from row 1 in sheet Sheet1
    if there are columns whose headers will not be changed then exclude these headers in sheet column_headers.
    Attached Files Attached Files
    PLS DO NOT PM; OPEN A THREAD INSTEAD!!!

    1) Posting Code
    [CODE]PasteYourCodeHere[/CODE]
    (or paste your code, select it, click # button)

    2) Uploading File(s)
    Go Advanced / Attachments - Manage Attachments / Add Files / Select Files / Select the file(s) (multiple files can be selected while holding Ctrl key) / Upload Files / Done
    Replace company specific / sensitive / confidential data. Include so many rows and sheets etc in the uploaded workbook to enable the helpers visualize the data and table structure. Helpers do not need the entire workbook.

    3) Testing the Codes
    always back up your files before testing the codes.

    4) Marking the Thread as Solved
    from Thread Tools (on the top right corner, above the first message)

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •