Indenting in Excel VBA

Hi all,

I have the following data:

2
2.1
2.1.1
2.1.2
2.2
2.2.1
2.2.2
2.2.3
2.3
2.3.1
2.4
2.5
2.6
2.6.1
2.6.1.1
2.6.1.2
2.6.2
3
3.1
3.1.1
3.1.2

This data is the first column of a list of parent and child items, so item 3.1 belongs to 3 and item 3.1.1 belongs to item 3.1 and so on.

What I would like to do is the following, showing each parent in a separate column:

2      
2.1            2
2.1.1            2.1
2.1.2            2.1
2.2            2
2.2.1            2.2
2.2.2            2.2
2.2.3            2.2
2.3            2
2.3.1            2.3
2.4            2
2.5            2
2.6            2
2.6.1            2.6
2.6.1.1            2.6.1
2.6.1.2            2.6.1
2.6.2            2.6
3
3.1            3
3.1.1            3.1
3.1.2            3.1
etc...

Has anyone got any clever ideas of how to achieve this is Excel VBA?

Thanks in advance
LVL 3
FMabeyAsked:
Who is Participating?

Improve company productivity with a Business Account.Sign Up

x
 
Shanan212Connect With a Mentor Commented:
Sub sample()

Dim l As Long, i As Long

i = ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Offset(0, 0).Row
l = Len(Range("A2").Value)

For i = 2 To irow
    
    Range("B" & i) = Left(Range("A" & i).Value, l - 2)

Next i

End Sub

Open in new window


Assumption is that all your data is on column A and output will be in column B
0
 
SteveCommented:
you could use formula:

=LEFT(A2,LEN(A2)-2)
ee.xlsx
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.